# convertablet Support for tablet-laptop convertible on wlroots-based compositors. This project includes both a daemon for handling screen rotation and docking, and some configuration for other software ## Daemon ### Installation 1. Get the code ```bash git clone https://git.kemonomimi.gay/yukijoou/convertablet && cd convertablet ``` 2. Download and build the wayland extensions ```bash cd wayland-protos/ ./download_protocols.sh ./codegen.sh cd ../ ``` 3. Build the daemon ```bash ./build.sh ``` 4. Run it to try it out ``` ./convertablet generic ``` This will run the daemon in 'generic' mode. This assumes "sane defaults" for your display's name and motion sensor. It's likely your device isn't using those. You can check the list of supported devices with `./convertablet list-devices`, and load that specific device's config with `./convertablet `. 5. Copy it to /usr/local/bin & make it run at startup ### Configuration You can create scripts at $HOME/.config/convertablet/hooks that will trigger on events - Basestation disconnected: basestation-disconnected-hook - Basestation connected: basestation-connected-hook ### Device compatibility | Product name | Device name | Notes | |---------------------------------------|-------------------------|----------------------------------------------| | Lenovo Miix 320-10icr | `lenovo-miix-320-10icr` | | | Samsung Chromebook Pro XE510C24-K01US | `google-caroline` | Thanks to nothingneko/@jaiden@ordinary.cafe! | ## Using fcitx hooks If you're using fcitx to get fancy input methods working, on-screen keyboards will not work, because on wayland, only one program can detect input begining events. To work around this issue, you can use the `fcitx5-hooks` module I wrote to run a script when an input field is focused/unfocused. See instructions in [fcitx5-hooks/](./fcitx5-hooks/). ## 3rd party programs Configurations Still a work in progress... In the meantime, you can find some example hooks for the convertablet daemon and waybar in [configs/](./configs/).