{"id":17722946,"url":"https://github.com/divanvisagie/wbindkeys","last_synced_at":"2026-03-11T09:06:03.582Z","repository":{"id":247566066,"uuid":"826212123","full_name":"divanvisagie/wbindkeys","owner":"divanvisagie","description":"A wayland replacement for xbindkeys","archived":false,"fork":false,"pushed_at":"2025-08-10T07:29:44.000Z","size":42,"stargazers_count":3,"open_issues_count":7,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-12-19T18:49:05.544Z","etag":null,"topics":["linux","wayland","xbindkeys"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/divanvisagie.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-09T09:26:00.000Z","updated_at":"2025-08-10T07:29:48.000Z","dependencies_parsed_at":"2024-10-25T19:59:24.102Z","dependency_job_id":"7ab76e0b-96a9-4701-a4ea-6eb0b94cff07","html_url":"https://github.com/divanvisagie/wbindkeys","commit_stats":null,"previous_names":["divanvisagie/wbindkeys"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/divanvisagie/wbindkeys","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/divanvisagie%2Fwbindkeys","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/divanvisagie%2Fwbindkeys/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/divanvisagie%2Fwbindkeys/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/divanvisagie%2Fwbindkeys/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/divanvisagie","download_url":"https://codeload.github.com/divanvisagie/wbindkeys/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/divanvisagie%2Fwbindkeys/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30376794,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-11T06:09:32.197Z","status":"ssl_error","status_checked_at":"2026-03-11T06:09:17.086Z","response_time":84,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["linux","wayland","xbindkeys"],"created_at":"2024-10-25T15:41:07.932Z","updated_at":"2026-03-11T09:06:03.534Z","avatar_url":"https://github.com/divanvisagie.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# wbindkeys\nA wayland replacement for xbindkeys\n\n🚧 **This project is currently under construction** 🚧 \n\nYou can bind direct bash commands to some key combos but not all combos are supported or tested. Performance is also untested so you may find \ntasks like app switching to be a little unsatisfactory.\n\n## Philosophy \n\nWhile wbindkeys intends to replace xbindkeys, in the spirit of wayland being a replacement with a better API, wbindkeys will offer a new config file format that is easier to handle for both machines and humans alike.\n\nwbindkeys uses lua for maximum configurability, because sometimes you need an if statement in your config.\n\n## Installation and setup\n\n### Install \n\nCurrently the only way to install wbindkeys is to build from source. You will have to build the binary and copy it to a bin directory of your choice.\n\n```sh\n./configure\nmake\ncp target/release/wbindkeys ~/.local/bin\n```\n\nYou will then need to run both files in the scripts directory. \n\n```sh\n./scripts/permissions.sh\n```\n\n### Config\n\nSave the following config in a file named `init.lua` inside your configuration directory (typically found using the `$XDG_CONFIG_HOME` environment variable or defaulting to `~/.config/wbindkeys/`).\n\n```lua\n-- Run alacritty on ALT+T\nbind(\"ALT+A\", \"alacritty\")\nbind(\"ALT+T\", \"flatpak run org.telegram.desktop\")\n```\n\n### Loading the Configuration\n\nThe config file is automatically loaded from the `config_dir()/wbindkeys/init.lua`. Make sure the configuration file exists, otherwise the application will panic.\n\n## Roadmap to 0.1.0\n- [x] Hook into wayland keyboard events\n- [x] Get a binding to execute a print from a lua binding config\n- [x] Execute the command \n- [x] Fix for launching app in userspace on the users privilege level\n- [ ] Implement and test full range of keymaps\n- [ ] Debian installer\n\n## Development Setup \n\n```sh\n./configure\nmake\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdivanvisagie%2Fwbindkeys","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdivanvisagie%2Fwbindkeys","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdivanvisagie%2Fwbindkeys/lists"}