Desktop integration portal
| Files | Last commit | Last update |
|---|---|---|
ci: Build libdex from commit from main for tests to pass libdex has a code path which works without io-uring, but that one creates a thread in the shared object constructor which then triggers: g_log_writer_default_set_use_stderr: assertion 'g_thread_n_created () == 0' failed It also uses g_debug() in the shared object constructor which means it will get printed (if G_MESSAGES_DEBUG is set appropriately) before the glib test framework has a chance to redirect it (to add the `# ` prefix). This breaks the test TAP output. In a later version of libdex, this shared object constructor will get dropped and both problems will go away. Ideally there would be a libdex release with the fixes included so we could just depend on it from meson, but that's not the case. So for now this just builds from main without bumping the build requirements because it only affects test and not production. | 1 month ago | |
meta: Run ruff formatter | 1 month ago | |
pipewire: Import original Portal module code Co-authored-by: Wim Taymans <wtaymans@redhat.com Co-authored-by: Peter Hutterer <peter.hutterer@who-t.net> Co-authored-by: Barnabás Pőcze <pobrn@protonmail.com> Co-authored-by: Pauli Virtanen <pav@iki.fi> Co-authored-by: George Kiagiadakis <george.kiagiadakis@collabora.com> Co-authored-by: James Henstridge <james@jamesh.id.au> Co-authored-by: Sam James <sam@gentoo.org> Co-authored-by: Stefano Ragni <stefano.ragni@outlook.com> | 2 months ago | |
ci: Build libdex from commit from main for tests to pass libdex has a code path which works without io-uring, but that one creates a thread in the shared object constructor which then triggers: g_log_writer_default_set_use_stderr: assertion 'g_thread_n_created () == 0' failed It also uses g_debug() in the shared object constructor which means it will get printed (if G_MESSAGES_DEBUG is set appropriately) before the glib test framework has a chance to redirect it (to add the `# ` prefix). This breaks the test TAP output. In a later version of libdex, this shared object constructor will get dropped and both problems will go away. Ideally there would be a libdex release with the fixes included so we could just depend on it from meson, but that's not the case. So for now this just builds from main without bumping the build requirements because it only affects test and not production. | 1 month ago | |
data: Add overview sections to portal documentation Make it easier for developers to understand the Clipboard, InputCapture, RemoteDesktop, and ScreenCast portals without reading through each individual method description. | 24 days ago | |
request-dex: Automatically respond with RESPONSE_OTHER on dispose If the request didn't respond yet, and we're still exported when we're disposing, send an error response. Combined with autoptr this makes error handling easier by just returning from the function. | 24 days ago | |
doc: Generate empty fragment files for missing sections | 24 days ago | |
file-transfer: Don't truncate parent inode numbers FileTransfer stores st_dev and st_ino in int before passing them to document_add_full(). This truncates inode numbers above INT_MAX and causes parent directory validation to fail. Use dev_t and ino_t throughout. Closes #2105 | 29 days ago | |
githooks: Run when podman and docker are both installed When both podman and docker are installed, the command to run the container gets incorrectly expanded to `/usr/bin/podman /usr/bin/docker inspect $IMAGE ...`. This takes the first output from `command -v` instead to prefer the first one returned. | 1 month ago | |
pipewire: Re-arrange WirePlumber plugin disable function The handler should be disconnected before disposing of the permission manager, since the former manages the latter's lifetime. | 1 month ago | |
po: Update Swedish translation | 1 month ago | |
utils: clean up dead sync app info construction code Now that we are using the dex variants wherever possible, this code can be removed for good. | 1 month ago | |
xdp: Add REUSE license information and remove unnecessary copyright text | 3 months ago | |
tests: Bump timeout The "xdg-desktop-portal:integration/notification" test usually succeeds at just below the 200 seconds, which is the current timeout. When working on #2080[1], the aforementioned test reached the timeout[2], forcing the entire job to fail. However, rerunning it 'fixed' it. To avoid this from happening again, the timeout is being bumped to 225 seconds. [1]: https://github.com/flatpak/xdg-desktop-portal/pull/2080 [2]: https://github.com/TheEvilSkeleton/xdg-desktop-portal/actions/runs/30593873504/job/91041890326#step:6:190 | 1 month ago | |
blame: Ignore ef50bf5 This is only reformatting the codebase after upgrading ruff, so there won't be any need to have it in git blame. | 1 month ago | |
xdp: Add REUSE license information and remove unnecessary copyright text | 3 months ago | |
githooks: Silence a warning in gitlint | 2 months ago | |
xdp: Add REUSE license information and remove unnecessary copyright text | 3 months ago | |
xdp: Switch to a new versioning scheme We currently have something which resembles semantic versioning, but the minor releases are stable when the number if even, and unstable when the number is odd. This also means the first number is fixed at 1 because we never break backwards compatibility. A lot of people get confused by the odd/even scheme. Distros like Fedora have been shipping unstable releases. Distros like Arch have not been testing any of the unstable releases. Systems like GNOME OS have started shipping xdp from git main in their nightly where we will notice when something went wrong immediately. Releases are work. Doing them needs to have a benefit. It does not seem like there is any benefit for us to do the unstable releases. Given that unstable releases are a waste of time and that the major version is fixed, this commit changes the project over to a scheme where... * all releases are stable releases * the version number is major.minor * minor versions get released to deal with security issues and bugs * only the latest major release is supported The next release will be version 23.0 because we would have releases 1.23.0 in the old versioning scheme. | 1 month ago | |
doc: Drop the website on favor of the documentation The website in a single page which only duplicates information that's already available in the documentation. It also uses jekyll and seems to be essentially not buildable outside of the CI. Let's just move the remaining content from the website to the docs landing page and then drop the website. | 1 month ago | |
xdp: Switch to a new versioning scheme We currently have something which resembles semantic versioning, but the minor releases are stable when the number if even, and unstable when the number is odd. This also means the first number is fixed at 1 because we never break backwards compatibility. A lot of people get confused by the odd/even scheme. Distros like Fedora have been shipping unstable releases. Distros like Arch have not been testing any of the unstable releases. Systems like GNOME OS have started shipping xdp from git main in their nightly where we will notice when something went wrong immediately. Releases are work. Doing them needs to have a benefit. It does not seem like there is any benefit for us to do the unstable releases. Given that unstable releases are a waste of time and that the major version is fixed, this commit changes the project over to a scheme where... * all releases are stable releases * the version number is major.minor * minor versions get released to deal with security issues and bugs * only the latest major release is supported The next release will be version 23.0 because we would have releases 1.23.0 in the old versioning scheme. | 1 month ago | |
xdp: Switch to a new versioning scheme We currently have something which resembles semantic versioning, but the minor releases are stable when the number if even, and unstable when the number is odd. This also means the first number is fixed at 1 because we never break backwards compatibility. A lot of people get confused by the odd/even scheme. Distros like Fedora have been shipping unstable releases. Distros like Arch have not been testing any of the unstable releases. Systems like GNOME OS have started shipping xdp from git main in their nightly where we will notice when something went wrong immediately. Releases are work. Doing them needs to have a benefit. It does not seem like there is any benefit for us to do the unstable releases. Given that unstable releases are a waste of time and that the major version is fixed, this commit changes the project over to a scheme where... * all releases are stable releases * the version number is major.minor * minor versions get released to deal with security issues and bugs * only the latest major release is supported The next release will be version 23.0 because we would have releases 1.23.0 in the old versioning scheme. | 1 month ago | |
xdp: Update gobject linter, former goblint | 2 months ago | |
dex: Add dex_scheduler_spawnv Same as dex_scheduler_spawn() but trampolines into a fiber without having to create special structures on the way there. This function is already upstream and will be in version 1.2, solets guard it properly from the buildsystem, so when it becomes available, everything still works. | 1 month ago | |
build: Rename to meson.options meson_options.txt is the old name. The minimum version of meson was bumped to 1.1, as meson.options was introduced in 1.1. | 2 months ago |
Translated by AI, submit an issue feedback
XDG Desktop Portal
Portals 允许 Flatpak 应用程序以及其他桌面容器框架以安全且定义明确的方式与系统交互。
XDG Desktop Portal 通过向应用程序公开一系列称为 portals 的 D-Bus 接口来工作。Portals 设计为可供所有应用程序使用,包括那些受沙箱限制的应用程序,例如 Flatpak。
Portal 接口包含文件访问、打开 URI、打印等功能的 API。
XDG Desktop Portal 与特定于桌面环境的后端协同工作,以集成方式协调对资源和功能的访问。
访问 网站 获取更多信息。
