Sean (ANGRYxScotsman) 2fcd7cf878 New linutil website (#1215)
* Add Hugo build artifacts to .gitignore

Ignore docs/public/, docs/resources/, and docs/.hugo_build.lock so
generated Hugo output is never accidentally committed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add Hugo site infrastructure for Linutil docs

Adds the Hugo configuration, theme module (hextra), layout shortcodes,
i18n strings, static assets (favicons, nav logo), and archetype template
needed to build the documentation site.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add docs site homepage

Adds the root _index.md with badges, the quick-start curl command, and
an important-note callout about frequent updates.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add user guide content pages for Linutil

Rewrites all user guide sections from Winutil (Windows) content to
accurate Linutil (Linux) documentation:

- _index.md: overview, feature summary, quick links
- getting-started.md: how to run, install options, TUI navigation, keyboard shortcuts
- store/_index.md: application installation guide with category tables
- tweaks/_index.md: distro-specific system setup (Arch, Fedora, Debian, Ubuntu, Alpine)
- features/_index.md: security, gaming, emulators, and utilities reference
- updates/_index.md: how to keep Linutil up to date
- automation/_index.md: TOML config file usage and use-case examples

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add FAQ, known issues, and contributing guide pages

- faq.md: answers for general usage, running, scripts, contributing, and updates
- KnownIssues.md: documents terminal size, rendering, distro support, Nvidia, and Cargo update issues
- CONTRIBUTING.md: full contributing guide based on .github/CONTRIBUTING.md, formatted for the docs site

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Add developer reference section and architecture docs

- dev/_index.md: landing page for the developer reference section
- dev/architecture.md: comprehensive architecture doc covering workspace
  layout, data model (Tab/ListNode/Command), tab_data.toml format, task
  list flags, preconditions system, script embedding via include_dir!,
  the script execution pipeline (PTY/vt100/tui-term), TUI layout and
  focus state machine, config file parsing, and key dependencies

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docgen: write walkthrough to docs/content/userguide/walkthrough.md

- Rename generated file from userguide.md to walkthrough.md to better
  reflect that it is an auto-generated script reference/walkthrough
- Update USER_GUIDE path to docs/content/userguide/walkthrough.md so
  cargo xtask docgen writes to the correct Hugo content location
- Update automation guide link to point to ../walkthrough/

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* docs: remove unused Winutil screenshot assets

All images in docs/assets/images/ were Winutil (Windows) screenshots
copied over from the Winutil docs. None are referenced by any content
file. Keeping only favicon.png and navlogo.png at the assets root,
which are used by hugo.toml.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Update CNAME

* updated hugo configs

* docs: add preview.gif to homepage via Hugo mount

Mount .github/preview.gif directly into Hugo's static pipeline using
includeFiles so only the gif is exposed (no workflows or other .github
files). This means any update to .github/preview.gif is automatically
reflected on the site without any manual copying.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* added workflow

* Delete docs/assets/navlogo.png

can change this to something else

* Delete navlogo.png

* Update docs.yaml

* Update hugo.toml

* Update _index.md

* fix typo

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-05 16:13:39 -06:00
2024-10-08 16:12:47 -05:00
2026-03-05 16:13:39 -06:00
2025-08-21 11:34:26 -05:00
2026-03-05 16:13:39 -06:00
2025-10-23 13:38:00 -05:00
2025-10-23 13:47:54 -05:00
2026-03-05 16:13:39 -06:00
2024-10-07 20:43:47 -05:00
2026-03-05 16:13:39 -06:00
2026-02-06 19:34:36 -06:00
2025-10-23 13:47:54 -05:00
2025-01-09 23:55:30 -06:00
2026-01-22 15:11:15 -06:00
2025-06-27 12:48:23 -05:00
2026-02-06 19:34:36 -06:00
2026-01-22 12:37:38 -06:00

Chris Titus Tech's Linux Utility

Version GitHub Downloads (specific asset, all releases) Crates.io Version Preview

The above preview was generated with the help of vhs, give them a !

Linutil is a distro-agnostic toolbox designed to simplify everyday Linux tasks. It helps you set up applications and optimize your system for specific use cases. The utility is actively developed in Rust 🦀, providing performance and reliability.

Note

Since the project is still in active development, you may encounter some issues. Please consider submitting feedback if you do.

💡 Usage

To get started, pick which branch you would like to use, then run the command in your terminal:

curl -fsSL https://christitus.com/linux | sh

Dev branch

curl -fsSL https://christitus.com/linuxdev | sh

CLI arguments

View available options by running:

linutil --help

For installer options:

curl -fsSL https://christitus.com/linux | sh -s -- --help

⬇️ Installation

Linutil is also available as a package in various repositories:

Packaging status

Arch Linux

Linutil can be installed on Arch Linux with three different AUR packages:

  • linutil - Stable release compiled from source
  • linutil-bin - Stable release pre-compiled
  • linutil-git - Compiled from the last commit (not recommended)

by running:

git clone https://aur.archlinux.org/<package>.git
cd <package>
makepkg -si

Replace <package> with your preferred package.

If you use yay, paru or any other AUR Helper, it's even simpler:

paru -S linutil

Replace paru with your preferred helper and linutil with your preferred package.

OpenSUSE

Linutil can be installed on OpenSUSE with:

sudo zypper install linutil
Cargo

Linutil can be installed via Cargo with:

cargo install linutil_tui

Note that crates installed using cargo install require manual updating with cargo install --force (update functionality is included in LinUtil)

Configuration

Linutil supports configuration through a TOML config file. Path to the file can be specified with --config (or -c).

Available options:

  • auto_execute - A list of commands to execute automatically (can be combined with --skip-confirmation)
  • skip_confirmation - Boolean ( Equal to --skip-confirmation)
  • size_bypass - Boolean ( Equal to --size-bypass )

Example config:

# example_config.toml

auto_execute = [
    "Fastfetch",
    "Alacritty",
    "Kitty"
]

skip_confirmation = true
size_bypass = true
linutil --config /path/to/example_config.toml

💖 Support

If you find Linutil helpful, please consider giving it a to show your support!

🎓 Documentation

For comprehensive information on how to use Linutil, visit the Linutil Official Documentation.

🛠 Contributing

We welcome contributions from the community! Before you start, please review our Contributing Guidelines to understand how to make the most effective and efficient contributions.

Official LinUtil Roadmap

Docs are now here

🏅 Thanks to All Contributors

Thank you to everyone who has contributed to the development of Linutil. Your efforts are greatly appreciated, and you're helping make this tool better for everyone!

Contributors

📜 Contributor Milestones

  • 2024/07 - Original Linutil Rust TUI was developed by @JustLinuxUser.
  • 2024/09 - TabList (Left Column) and various Rust Core/TUI Improvements developed by @lj3954
  • 2024/09 - Cargo Publish, AUR, Rust, and Bash additions done by @koibtw
  • 2024/09 - Rust TUI Min/Max, MultiSelection, and Bash additions done by @jeevithakannan2
  • 2024/09 - Various bash updates and standardization done by @nnyyxxxx
  • 2024/09 - Multiple bash script additions done by @guruswarupa
S
Description
Linux utility tool
Readme MIT 122 MiB
Languages
Shell 79.3%
Rust 20.4%
Nix 0.3%