DEV Community

Cover image for rwx - An interactive Unix file permissions and ownership TUI manager
Vinícius Manoel
Vinícius Manoel

Posted on

rwx - An interactive Unix file permissions and ownership TUI manager

I know what chmod 755 is.

The problem is that, a few months later, I'll need to look it up again.

I use the terminal every day.

I manage files through the CLI, automate tasks with shell scripts, and spend a good part of my time inside a terminal window.

But when it's time to change Unix permissions, the same thing always happens:

"Was it 755 or 775?"

Does the directory need execute permission?

What's the difference between 644 and 664?

To change the owner and group, was it chown user:group?

I know how Unix permissions work. I just don't use those details often enough to keep them memorized.

So the routine begins:

Open another tab.

Search for "chmod calc."

Check a calculator.

Go back to the terminal.

Then I thought:

Why isn't there a TUI focused exclusively on Unix permissions?

Since I couldn't find one that worked the way I wanted, I set aside a weekend and built one.

That's how rwx was born. 🦀

A TUI written in Rust, using Ratatui and Crossterm, designed to make working with Unix permissions more visual, clear, and safe.

The idea is simple:

Stop mentally translating numbers like 755, 644, or 775.

In rwx, you visually choose the permissions for Owner, Group, and Others:

Read. Write. Execute.

The tool automatically displays:

• symbolic representation, such as drwxr-xr-x;

• octal value, such as 0755;

• owner and group;

• the target being modified;

• recursive mode.

You can also browse files, open paths directly, and change the owner and group with real-time validation.

rwx doesn't try to replace a full-featured file manager.

It does the opposite:

It's small, specialized, and solves a specific problem.

For people who already live in the terminal, know exactly which file they want to modify, and just want to avoid permission mistakes.

The goal of rwx is simple:

Help you stop memorizing numbers that the computer can simply show you.

This is the part I like most:

I no longer have to think, "What does 755 mean again?"

I check the permissions I want, and the octal value appears automatically.

If something is wrong, it's visible before the changes are applied.

I also paid special attention to recursive mode:

The target is always visible.

The option must be enabled explicitly.

And changes are only applied after confirmation.

To install:

brew install vncsmnl/tap/rwx

or:

cargo install rwx

Then:

rwx

or:

rwx /file or /directory

The project came from getting tired of spending mental energy trying to remember something the computer could simply show me.

Maybe it won't change anyone's life.

But it removes a small, recurring source of friction.

That's my favorite kind of project:

Turning a small annoyance into something that no longer requires mental effort.

Now, when I need to change permissions:

I don't open Google anymore.

I open rwx.

🔗 Project: https://github.com/vncsmnl/rwx

Top comments (0)