Skip to content

Releases: Firstp1ck/UsrGrp-Manager-TUI

v0.3.0

21 Oct 22:04

Choose a tag to compare

v0.3.0 Pre-release
Pre-release

usrgrp-manager v0.3.0

Highlights

  • New keybindings side panel with grouped sections, aligned columns, bold titles, and italic dynamic values.
  • Richer Users and Groups details with system insights (home perms, shell validity, password status, etc.).
  • Cleaner header (top pane now uses app background).
  • Help modal with key usage tips.

Keybindings

  • Toggle keybindings panel: Shift+K (supports common terminal variants).
  • Vim ‘k’ restored to MoveUp.
  • Removed Ctrl+Tab toggle; use Shift+Tab for pane toggling.
  • Keybind hints were removed from the header; use the right-side viewer.

Users Details (expanded)

  • Identity: UID, Primary GID, Primary group name.
  • Home: path, existence, octal permissions (e.g., 755).
  • Shell: validity (listed in /etc/shells) and interactivity (nologin/false detection).
  • Password status: locked, no_password, expired (best-effort from /etc/shadow), with last change and expiry (days since epoch).
  • Sudo membership: indicates if user is a member of the configured sudo group.
  • SSH: counts entries in ~/.ssh/authorized_keys (best-effort).
  • Processes: current process count owned by the user (best-effort via /proc).
  • UI: details pane height increased to fit new fields.

Groups Details (expanded)

  • Classification: GID and system/user group classification.
  • Membership:
    • Counts: primary members vs secondary (listed) members.
    • Preview: alphabetical top-N member names (with “+N more”).
    • Orphan detection: flags secondary members not present in users list.
  • Distributions:
    • Shell: interactive vs noninteractive.
    • UID class: system (<1000) vs user (≥1000).
    • Account status: locked, no_password, expired (best-effort).
  • Privilege: indicates if the group is the sudo-capable group.
  • Change proxy: /etc/group mtime (days since epoch) as a rough membership-change indicator.
  • UI: details pane height increased to fit new fields.

UI / Layout

  • Right-side keybindings panel replaces embedded header hints.
  • Header background now matches the app background for consistency.

Configuration

  • Sudo group name: configurable via environment variable UGM_SUDO_GROUP (defaults to wheel).

Quality & Tests

  • Keybinding mapping/state tests updated (including Shift+K toggle).
  • Clippy warnings addressed (vector initialization cleanup).
  • All unit/integration tests passing.

Breaking/Behavior Changes

  • Removed Ctrl+Tab for pane toggling; use Shift+Tab.
  • Header no longer shows inline key hints; use the keybindings panel (Shift+K).
  • ‘k’ is back to MoveUp (vim behavior).

Known Limitations

  • Password and account details rely on best-effort reads of /etc/shadow; fields may be unavailable without sufficient privileges.
  • SSH key counting and process counts are best-effort and may vary across environments.

Upgrade Notes

  • If you relied on Ctrl+Tab for toggling panes, switch to Shift+Tab.
  • To customize sudo group membership checks, set UGM_SUDO_GROUP (e.g., export UGM_SUDO_GROUP=sudo).

v0.2.0

15 Sep 13:22

Choose a tag to compare

v0.2.0 Pre-release
Pre-release

Refactor user and group management

  • Replace multiple third-party deps with internal implementations for smaller, tighter core
  • Add unit tests; document additional test ideas in Improvements.md
  • Implement live search in lists via "/" key
  • Support batch add/remove of groups for users and members for groups
  • UI polish: navigation/feedback improvements and minor layout tweaks
  • Misc small fixes

v0.1.0

14 Sep 14:10

Choose a tag to compare

v0.1.0 Pre-release
Pre-release

v0.1.0 — 2025-09-14

First public alpha of UsrGrp-Manager-TUI: a keyboard‑driven terminal app to view and manage users and groups on Linux.

Features

  • Users tab: list users, view details (UID/GID, home, shell, name), view member‑of groups
  • User management: create user (optional home), delete user (optional remove home), set/change/reset password, modify username, full name (GECOS), and login shell
  • Groups tab: list groups with members, create/delete groups, add/remove users
  • Search: quick substring filter on Users and Groups
  • Safety: read‑only browsing works without privileges; write actions prompt/require appropriate privileges
  • Logging: set USRGRP_MANAGER_LOG=info|debug|trace (default: info)

Status and Notes

  • Alpha: interfaces and keybindings may change; error handling and performance still improving
  • Linux focused; write operations call system tools like usermod, gpasswd, groupadd, groupdel, useradd, userdel, chpasswd, chage
  • User deletion requires confirmation; optional home removal

For usage and keybindings, see README.md.