7 releases

0.0.7 Sep 26, 2025
0.0.6 Feb 9, 2025
0.0.5 Dec 31, 2024
0.0.4 Nov 14, 2024
0.0.1 Jul 2, 2024

#598 in Concurrency

Download history 120/week @ 2025-11-27 1/week @ 2025-12-11 19/week @ 2026-01-01 10/week @ 2026-01-15 5/week @ 2026-01-22 19/week @ 2026-01-29 3/week @ 2026-02-05 69/week @ 2026-02-12 196/week @ 2026-02-19 67/week @ 2026-02-26 28/week @ 2026-03-05 64/week @ 2026-03-12

358 downloads per month
Used in phrog

MIT and LGPL-2.1-only

125KB
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://world.pages.gitlab.gnome.org/Phosh/libphosh-rs/git/docs/

Dependencies

~18MB
~422K SLoC