Unsafe bindings and a safe wrapper for gtk4-layer-shell, automatically generated from a .gir file

Overview

maintenance-status: passively-maintained (as of 2023-04-12) dependabot status

Build

gtk4-layer-shell: Crate docs.rs dependency status

gtk4-layer-shell-sys: Crate docs.rs dependency status

gtk4-layer-shell

This is the safe wrapper for gtk4-layer-shell, automatically generated from its .gir file. For details on how to use it or how to generate the code yourself, have a look at the crate's README. The unsafe bindings can be found in this folder. You need to have gtk4-layer-shell installed on your system to use this crate. Because it is new, you probably have to build it from source. If you did that, you might also have to set the following two environment variables:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=/usr/local/lib

These crates are GTK4 only. Checkout gtk-layer-shell or gtk-layer-shell-sys if you want the GTK3 versions.

Maintenance status

These crates are just wrappers for the C library so it is feature complete and not actively worked on. The C library was recently released so there might be frequent changes. I try to keep up with them so the crate might get frequent updates and could break things. If you encounter any problems, feel free to open a PR.

Contributing

Pull requests are very welcome but please keep the maintenance status in mind.

License

MIT

You might also like...
A little wrapper I've written for creating UI screens from files for the BevyEngine.
A little wrapper I've written for creating UI screens from files for the BevyEngine.

UI Screens for BevyEngine This is a little thing I put together for creating simple UI screens using the BevyEngine. The idea is to define the screens

A desktop application wrapper for CovidValidator.app
A desktop application wrapper for CovidValidator.app

A desktop application wrapper for CovidValidator.app Check EU Digitial Covid Certificates with ease and validate them against local or country rules.

Rust bindings to Core Foundation and other low level libraries on Mac OS X and iOS

core-foundation-rs Compatibility Targets macOS 10.7 by default. To enable features added in macOS 10.8, set Cargo feature mac_os_10_8_features. To hav

Rust bindings and wrappers for GLib, GDK 3, GTK+ 3 and Cairo.

THIS REPOSITORY IS DEPRECATED SEE: https://github.com/rust-gnome rgtk Rust bindings and wrappers for GLib, GDK 3, GTK+ 3 and Cairo. Building rgtk expe

OS-native file dialogs on Linux, OS X and Windows
OS-native file dialogs on Linux, OS X and Windows

nfd-rs nfd-rs is a Rust binding to the library nativefiledialog, that provides a convenient cross-platform interface to opening file dialogs on Linux,

File system enumerator and monitor for Android.

File system enumerator and file monitor for Android. Built to be compatible with other command line utilties! This tool was created to somewhat automa

A tiny, neat C library that portably invokes native file open and save dialogs.
A tiny, neat C library that portably invokes native file open and save dialogs.

Native File Dialog A tiny, neat C library that portably invokes native file open, folder select and save dialogs. Write dialog code once and have it p

Szyszka is a simple but powerful and fast bulk file renamer.
Szyszka is a simple but powerful and fast bulk file renamer.

Szyszka is a simple but powerful and fast bulk file renamer. Features Written in Rust Available for Linux, Mac and Windows Simple GUI created

Rust bindings for the FLTK GUI library.
Rust bindings for the FLTK GUI library.

fltk-rs Rust bindings for the FLTK Graphical User Interface library. The FLTK crate is a crossplatform lightweight gui library which can be statically

Comments
  • Are changes needed to get the linking order right?

    Are changes needed to get the linking order right?

    The order of the linking is important for the original C library (https://github.com/wmww/gtk4-layer-shell/blob/main/linking.md). The example worked just fine without paying attention to it. Was this a coincidence or is it somehow automatically done correctly?

    opened by pentamassiv 0
  • gtk4-layer-shell-sys: Run gir without warnings

    gtk4-layer-shell-sys: Run gir without warnings

    Running gir -o . returns:

    [WARN  libgir::parser] <boxed name=Some("TreeRowData")>
    

    Fix the warning and the workaround in the CI to ignore one error

    opened by pentamassiv 1
  • CI: Remove workaround of setting the environment variables

    CI: Remove workaround of setting the environment variables

    Because gtk4-layer-shell is built and installed from source, the lib is in a different path. Two environment variables need to be set to make the builds work. Remove this from the CI once gtk4-layer-shell is installed as a package

    This is the code to be removed:

          - name: Export environment variables
            run: |
              export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
              export LD_LIBRARY_PATH=/usr/local/lib
    
    opened by pentamassiv 0
Owner
Rust and Linux enthusiast
null
A simple note taking application written in Rust and GTK4

Rnote A simple note taking application written in Rust and GTK4. Rnote aims to be a simple but functional note taking application for freehand drawing

Felix Zwettler 3.4k Jan 5, 2023
An idiomatic GUI library inspired by Elm and based on gtk4-rs

An idiomatic GUI library inspired by Elm and based on gtk4-rs. Relm4 is a new version of relm that's built from scratch and is compatible with GTK4 an

Aaron Erhardt 722 Dec 31, 2022
Neovim GUI written in Rust, using relm4 and gtk4-rs

Reovim Neovim GUI written in Rust, using relm4 and gtk4-rs. Thanks Neovide Configuration To setup font add next line to init.vim set guifont=Cascadia\

songww 70 Dec 13, 2022
An Anime Game Launcher variant written on Rust, GTK4 and libadwaita, using Anime Game Core library

An Anime Game Launcher GTK The launcher variant written on Rust, GTK4 and libadwaita, using Anime Game Core library You could also try the main branch

An Anime Team 77 Jan 9, 2023
Honkers Launcher variant written on Rust, GTK4 and libadwaita, using Anime Game Core library

You could also try the main branch Development Folder Description ui Blueprint UI files ui/.dist UI files compiled by the blueprint src Rust source co

An Anime Team 9 Nov 2, 2022
A Modern, Open Source GTK4 ebook manager powered by Rust.

Bookx An MVP in progress: An ebook reader with .epub support Context menu for each book (delete, rename book, info) On click switch the carousal to th

Anurag Dhadse 12 Dec 28, 2022
📎 Do something on your clipboard, automatically.

?? autoclip Do something on your clipboard, automatically. ✨ Features Automatic Customisable with Plugins ?? Installation $ cargo build --release ??

Naoki Ikeguchi 18 Nov 29, 2022
Automatically create GUI applications from clap3 apps

Automatically create GUI applications from clap3 apps

Michał Gniadek 340 Dec 20, 2022
Simple, thread-safe, counter based progress logging

?? proglog Documentation Crates.io This is a simple, thread-safe, count-based, progress logger. Synopsis proglog hooks into your existing log implemen

Seth 5 Nov 7, 2022
Clear Coat is a Rust wrapper for the IUP GUI library.

Clear Coat Clear Coat is a Rust wrapper for the IUP GUI library. IUP uses native controls and has Windows and GTK backends. A macOS backend has been o

Jordan Miner 18 Feb 13, 2021