4 releases

new 0.0.4 Nov 14, 2024
0.0.3 Sep 30, 2024
0.0.2 Aug 25, 2024
0.0.1 Jul 2, 2024

#91 in #gnome

MIT and LGPL-2.1-only

130KB
2K SLoC

libphosh-rs

The Rust bindings of phosh

Development

You will need the following installed:

  • Rust
  • xmlstarlet
  • Meson
  • All Phosh build dependencies

Updating the introspection XML

If the upstream libphosh introspection Phosh-0.gir XML has changed, then run the following:

make Phosh-0.gir

The main branch of Phosh will be fetched as a Meson subproject, the introspection XML will be regenerated, and the result will be copied to ./Phosh-0.gir. You should commit the changes to this repo.

Updating the bindings

If you've updated the introspection XML, or made changes to the Gir.toml files, then run:

make

Note that you should not commit the changes that were made to NM-1.0.gir or Phosh-0.gir.

Examples

There's two examples demoing the libphosh-rs usage:

  • hello-world.rs has the minimum code to spawn a shell and can be run like
   WLR_BACKENDS=wayland phoc -E target/debug/examples/hello-world
   WLR_BACKENDS=wayland phoc -E target/debug/examples/custom-shell-and-lockscreen

Documentation

API documentation is at https://guidog.pages.gitlab.gnome.org/libphosh-rs/git/docs/

Dependencies

~18MB
~410K SLoC