Releases: Ferdi265/wl-mirror
wl-mirror v0.18.5
wl-mirror v0.18.4
This bugfix release contains a fix for wl-mirror not working correctly in an edge case with libdecor.
Bugfixes
- Fixed wl-mirror exiting with an error when no libdecor decoration plugins are installed (#74)
Packaging
This release is now only signed with the new PGP key as noted in release v0.18.2. Please switch to this key for verifying package artifacts.
wl-mirror v0.18.3
This bugfix release contains a few cleanups and a fix for a minor issue causing window rules based on window titles to not work well with wl-mirror.
Bugfixes
- Fixed custom titles from
--titleonly applying after the window is created and not during initial configure (#72) - Fixed directory variables in CMake containing trailing slashes or double slashes in some cases (#71). This did not cause any issues on any known system, but is fixed either way.
Other Changes
- Allow spaces in output identifiers when using the output label from
--region - Use wl-mirror's builtin output detection for
ask-output-or-regionin wl-present instead of manually parsing the output withIFS - Document the slurp
-fsyntax for the format supported by wl-mirror's--regionoption
Packaging
This release is again signed by both the new PGP key and the old PGP key. Future releases after November will only be signed using the new key. If you haven't already, please switch to verifying your release archives for new versions with the new PGP key. The new PGP key is attached to the previous release.
wl-mirror v0.18.2
This bugfix release fixes an issue that could cause crashes with future versions of wlroots. This release also introduces a new signing key since the previous key is set to expire in November. Releases will be additionally signed by the old key for as long as it is valid.
Bugfixes
- Fix a wlroots compositor warning with wlroots 0.19.0-rc1 and newer when compiling with libdecor (#67)
- Fix unused variable warnings when compiling without GBM (#65)
Packaging
This release introduces a new signing key since the previous key is set to expire in November. Future releases will be signed by key-id A4FAD9CEDA213AF3. The new key and old key are signed by each other, and all releases until November will be signed by both keys. The new key is also attached to this release.
Packagers should switch to verify releases using the new key for future packages. Contact me at ferdinand.bachmann@yrlf.at if you need further proof that both keys belong to the same person.
wl-mirror v0.18.1
This bugfix release fixes an crash issue on some compositors and adds optional bash and zsh completions for wl-mirror and wl-present.
New Features
- zsh completions have been added in
scripts/completions/zsh-completions(#63, thanks @mazunki!) - bash completions have been added in
scripts/completions/bash-completions
Bugfixes
- Fix
wl-mirrorcrashing on some compositors withwp_viewporterror "source rectangle out of buffer bounds" (#64)
wl-mirror v0.18.0
This release finally adds support for DMA-BUFs with the screencopy backend, an all-new extcopy backend for ext-image-copy-capture-v1 which will provide non-wlroots compositor support once other compositors start implementing it, and a few bug-fixes.
New Features
- Added a new
screencopy-dmabufbackend that uses DMA-BUFs instead of shared memory. (requiresWITH_GBM, see below)- Also changed the
screencopybackend to automatically choosescreencopy-dmabufoverscreencopy-shmwhen available.
- Also changed the
- Added new
extcopy-dmabufandextcopy-shmbackends that use ext-image-copy-capture-v1 (#46). (extcopy-dmabufrequiresWITH_GBM, see below)- Also added an
extcopybackend that automatically choosesextcopy-dmabufoverextcopy-shmwhen available.
- Also added an
- Added the CMake option
WITH_GBMfor usinglibgbmandlibdrmfor hardware-agnostic DMA-BUF allocation. This enables the newscreencopy-dmabufandextcopy-dmabufbackends.
Bugfixes
- Fix a potential use-after-free when using
--titletogether with--stream(#53, thanks @danielrainer!) - Rework stream input handling to be less error-prone (#54, thanks @danielrainer!)
- Fixed missing man-page documentation for
--title
Other Changes
- Updated wayland-protocols to 1.41
- Added common DMA-BUF and SHM buffer allocation and import code. This should make adding more backends with both DMA-BUF and SHM support much easier.
- Added common DRM / SHM / GL format database. This should allow finding the correct format for importing textures into GL without needing tables for it in every backend.
Changes since v0.18.0-pre
- Deduplicate initialization code for DMA-BUF / SHM variants of each backend
Upgrading
This release contains new optional dependencies on libgbm and libdrm when the WITH_GBM CMake option is set to ON. Testers should consider enabling this option to be able to use the new DMA-BUF backends.
wl-mirror v0.18.0-pre
This pre-release finally adds support for DMA-BUFs with the screencopy backend, an all-new extcopy backend for ext-image-copy-capture-v1 which will provide non-wlroots compositor support once other compositors start implementing it, and a few bug-fixes.
This release is a pre-release as it contains some major changes to the handling of both shared memory and DMA-BUF capturing, as well as a new optional dependency. If you find any bugs, please report them so they can be fixed before v0.18.0 proper.
New Features
- Added a new
screencopy-dmabufbackend that uses DMA-BUFs instead of shared memory. (requiresWITH_GBM, see below)- Also changed the
screencopybackend to automatically choosescreencopy-dmabufoverscreencopy-shmwhen available.
- Also changed the
- Added new
extcopy-dmabufandextcopy-shmbackends that use ext-image-copy-capture-v1 (#46). (extcopy-dmabufrequiresWITH_GBM, see below)- Also added an
extcopybackend that automatically choosesextcopy-dmabufoverextcopy-shmwhen available.
- Also added an
- Added the CMake option
WITH_GBMfor usinglibgbmandlibdrmfor hardware-agnostic DMA-BUF allocation. This enables the newscreencopy-dmabufandextcopy-dmabufbackends.
Bugfixes
- Fix a potential use-after-free when using
--titletogether with--stream(#53, thanks @danielrainer!) - Rework stream input handling to be less error-prone (#54, thanks @danielrainer!)
- Fixed missing man-page documentation for
--title
Other Changes
- Updated wayland-protocols to 1.41
- Added common DMA-BUF and SHM buffer allocation and import code. This should make adding more backends with both DMA-BUF and SHM support much easier.
- Added common DRM / SHM / GL format database. This should allow finding the correct format for importing textures into GL without needing tables for it in every backend.
Upgrading
This release contains new optional dependencies on libgbm and libdrm when the WITH_GBM CMake option is set to ON. Testers should consider enabling this option to be able to use the new DMA-BUF backends.
wl-mirror v0.17.0
This release contains a few smaller new features, some refactorings, and some bug fixes.
New Features
- Added the CMake option
WITH_LIBDECORfor using libdecor (off by default) for creating client-side window decorations (or negotiating server-side window decorations) for compositors that require them. This does not add support for Gnome and KDE yet, but is a step in that direction. - Added a
--titleoption to allow custom window titles with support for placeholders such as{target_output}(#45, thank you @mazunki!) - Added support for controlling multiple simultaneous
wl-presentsessions using theWL_PRESENT_PIPE_NAMEenv var or--nameoption - Improved
wl-presentbehaviour when not havingpipectlinstalled
Bugfixes
- Fixed negative output coordinates not working properly with regions (#50, thanks @jkub6!)
- Fixed
wl-presentbehaving inconsistently when running multiple sessions at once (#51) - Fixed wayland protocol header generation when cross-compiling by adding a
FORCE_WAYLAND_SCANNER_PATHCMake variable to provide the path to the host tool (#44, thanks @zboszor)
Other Changes
- Made release tarballs reproducible. Running
./scripts/release.shwhile checked out on a tag should now result in an identical tarball as attached to this release - Refactored the codebase to use the prefix
wlm_for all public functions
Upgrading
For regular users, no changes are necessary. Packagers should consider enabling the WITH_LIBDECOR option or adding it as an option for systems such as Gentoo or Nix if the additional dependency is acceptable. This option might become a default in future releases when support for KDE and Gnome is added.
Releases will now also contain a "nowlp" tarball that does not include wayland-protocols (but does include wlr-protocols) for distros with strict copyright attribution requirements that don't want to manually attribute all of wayland-protocols (such as Debian).
wl-mirror v0.16.5
This bugfix release fixes wl-mirror consuming unreasonable amounts of CPU when using the stream option.
Bugfixes
- Fix
wl-mirrorconsuming 100% CPU on one core when using the--stream(or-S) option. Sincewl-presentuses the stream option, this also affectedwl-presentusage. (#42)
wl-mirror v0.16.4
This release contains a few improvements to the wl-present script, but no changes to wl-mirror itself.
Changes
- Allow specifying additional options after
wl-present mirror. This allows starting wl-mirror directly in fullscreen viawl-present, e.g.wl-present mirror --fullscreen-output HDMI-A-1 --fullscreen. - Allow overriding
slurpinwl-presentviaWL_PRESENT_SLURPenvironment variable. - Automatically detect
fuzzelas a dmenu replacement inwl-present - Add kanshi configuration example to README
- Update
wl-presentman page