Fetching the latest programs, projects, and workspace data.

Writing robust tools for the Wayland protocol
Showing 5 of 7 projects. Click any project card for scope, mentors, and proposal studio.
Mentors: Student: nicolo-mn
Xdg-desktop-portal-luminous is a high-performance capture portal for Wayland compositors that supports frame capture and GPU-copy based frame streaming. The goal of this project is to improve support for Remote Desktop Protocol by ensuring more reliable input simulation and screencasting to enable remote desktop applications to work seamlessly on Wayland compositors using our custom portal backends. This will improve adoption and UX; users will no longer need to depend on other portals for this particular use case, and all use cases can be consolidated into a single portal.
Mentors: Student: Rishik Y
This project aims to enhance Wayshot by implementing the newly standardized ext_image_capture_source_v1 Wayland protocol, which provides a standardized method for display and window capture, replacing the current dependency on the non-standard wlr-screencopy protocol. I will develop a new backend that fully utilizes this official protocol while maintaining the existing wlr backend for backwards compatibility, enabling native top-level window capture capabilities and improving user experience. The implementation will include a security notification system utilizing D-Bus to alert users which applications were captured by Wayshot clients, enhancing transparency and user privacy. Additionally, I will integrate the standardized protocol with xdg-desktop-portal-luminous to enable WebRTC streaming capabilities, The deliverables of this project are: a complete solution that includes the new backend, backwards compatibility, security notifications, WebRTC streaming support, and comprehensive documentation.
Mentors: Student: Shreya Santra
The project is to build a fully functional GUI tool for Waycrate using iced-rs for configuring hotkeys visually, rather than editing the configuration files, which can be cumbersome for first-time users. The tool's purpose will be to simplify setting up and managing hotkeys in SWHKD. The Graphical User Interface (GUI) will allow users to view the applications in a list format, and on selecting an application, the hotkeys for that application will be displayed in a table-like format with editable rows and buttons. Users will be able to modify pre-existing hotkeys, delete them, and build hotkeys from scratch.
Mentors: Student: Aadil
This project aims to replace the current backend of swhkd, which uses evdev, to replace it with libinput. Libinput provides better support for common devices that interact with a desktop interface, this can with getting better input handling support and fix issues like debouncing, mouse acceleration, etc which cannot be handled directly by evdev. The final deliverable would be a version of swhkd with an alternative libinput backend, whichs supports all the features of swhkd.
Mentors: Student: Himadri Bhattacharjee
This project aims to improve code quality and portability by implementing a new parser using EBNF grammar. We enhance the robustness of the parser with human friendly errors and a clear representation of the syntax for our domain-specific language. The new parser will be implemented using the Pest crate for Rust, with three core blocks: include, unbind, and binding. Modes can be created for additional functionality. Most importantly, we addresses edge cases by narrowing possible values for each block.