a3e421db3df629e3b964efe122fd485edc886923
Debian uses a separate registry for the packages it distributes. Checksums for some Debian packages don't match anything that's available on crates.io, which is the default source of dependencies. *linked-hash-map* in particular doesn't provide any hash. As a result, Debian's `Cargo.lock` and crates.io's `Cargo.lock` are not matching, and building is only possible with one or the other, depending on what's checked in. As a separate issue, Debian packages are usually not checked in in multiple versions, so checking in Debian's `Cargo.lock` would result in the package not building whenever a bugfix is distributed (due to checksum changes). This change removes the crates.io `Cargo.lock` so that a new one will be created whenever a .deb is built, solving the above. What keeps falsely passing builds from happening is `Cargo.toml` specifying no interface changes, as well as Build-Depends, which seem enough for any other Debian package.
squeekboard - a Wayland virtual keyboard
Squeekboard is a virtual keyboard supporting Wayland, built primarily for the Librem 5 phone.
It squeaks because some Rust got inside.
Features
Present
- GTK3
- Custom yaml-defined keyboards
- DBus interface to show and hide
- Use Wayland input method protocol to show and hide
- Use Wayland virtual keyboard protocol
Temporarily dropped
- A settings interface
TODO
- Use Wayland input method protocol
- Pick up DBus interface files from /usr/share
Building
Dependencies
See .gitlab-ci.yml.
Build from git repo
$ git clone https://source.puri.sm/Librem5/squeekboard.git
$ cd squeekboard
$ mkdir ../build
$ meson ../build/
$ cd ../build
$ ninja test
$ ninja install
Running
$ phoc # if no compatible Wayland compositor is running yet
$ cd ../build/
$ src/squeekboard
Developing
See HACKING.md
Description
Languages
Rust
68.3%
C
25.7%
Meson
2.7%
Python
1.9%
CSS
1.1%
Other
0.3%