Skip to content

cachebag/nmrs

CI

nmrs 🦀

Wayland-native frontend for NetworkManager. Provides a GTK4 UI and a D-Bus proxy core, built in Rust.

image

Install

Via yay

yay -S nmrs

or paru

paru -S nmrs

Wire into waybar

"network": {
    "tooltip": false,
    "format-wifi": "  {essid}",
    "format-ethernet": "",
    "on-click": "nmrs"
  },

For tiling window managers to avoid automatic tiling (Hyprland, Sway, i3, etc.)

windowrulev2 = float, class:^(org\.netrs\.ui)$

Adjust class if your compositor reports a different one via hyprctl clients.

Styling

Expose your own styles by placing style.css in ~/.config/nmrs/

Example:

/* Global overrides */
* {
    font-family: "Inter", "Sans";
    color: #073642; /* Solarized dark teal */
}

window, .network-page {
    background: #fdf6e3; /* Solarized base3 */
}

/* Replace all labels with a distinct color */
label {
    color: #586e75 !important;
}

See nmrs-ui/src/style.css for any custom widget labels I currently use.

This project is still in development. If you would like to contribute, please read the contribution guide. Here's a quick list of setup steps to get you started:

Requirements

  • Rust toolchain (rustup, cargo, rustc)
  • GTK4 and libadwaita development libraries

On Arch Linux:

sudo pacman -S gtk4 libadwaita base-devel

On Debian/Ubuntu:

sudo apt install pkg-config libglib2.0-dev libgirepository1.0-dev \
libgdk-pixbuf2.0-dev libpango1.0-dev libcairo2-dev \
libgtk-4-dev libadwaita-1-dev

Clone and Build

git clone https://github.com/cachebag/nmrs.git
cd nmrs
cargo build --release

Run

cargo run

About

Wayland-native frontend for NetworkManager.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •