Uutils: Difference between revisions
m remove "the" |
m CLI_Applications |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
The [https://uutils.github.io/ Uutils] project reimplements ubiquitous command line utilities in memory-safe Rust | The [https://uutils.github.io/ Uutils] project reimplements ubiquitous command line utilities in memory-safe Rust. | ||
== Coreutils == | == Coreutils == | ||
Line 22: | Line 22: | ||
]; | ]; | ||
}|name=/etc/nixos/configuration.nix|lang=nix}} | }|name=/etc/nixos/configuration.nix|lang=nix}} | ||
<small>If you want a prefixed package for some reason, use [https://search.nixos.org/packages?show=uutils-coreutils <code>uutils-coreutils</code>] instead</small> | <small>If you want a prefixed package for some reason, use [https://search.nixos.org/packages?show=uutils-coreutils <code>uutils-coreutils</code>] instead</small> | ||
{{Note|1=This will '''not''' replace [https://search.nixos.org/packages?show=coreutils-full the <code>coreutils-full</code> package], only install it and give it higher priority | |||
Using [https://search.nixos.org/options?show=system.replaceDependencies <code>system.replaceDependencies</code>] instead of [https://search.nixos.org/options?show=environment.systemPackages <code>environment.systemPackages</code>] seems to be a better approach, but it has not been successful yet | |||
<small>For details, see [https://discourse.nixos.org/t/how-to-use-uutils-coreutils-instead-of-the-builtin-coreutils/8904/36?u=malix NixOS - Discourse: "How to use uutils-coreutils instead of the builtin coreutils?" (8904) - Comment 36]</small>}} | |||
== Findutils == | == Findutils == | ||
{{Expand|scope=section}} | |||
[https://uutils.github.io/findutils/ Uutils Findutils] is a cross-platform memory-safe reimplementation of GNU findutils: <code>xargs</code>, <code>find</code>, <code>locate</code> and <code>updatedb</code> | [https://uutils.github.io/findutils/ Uutils Findutils] is a cross-platform memory-safe reimplementation of GNU findutils: <code>xargs</code>, <code>find</code>, <code>locate</code> and <code>updatedb</code> | ||
Line 32: | Line 39: | ||
== Diffutils == | == Diffutils == | ||
[https://uutils.github.io/diffutils/ Uutils Diffutils] is is a cross-platform memory-safe reimplementation of GNU findutils: <code>diff</code>, <code>cmp</code>, <code>diff3</code> and <code>sdiff</code> | {{Expand|scope=section}} | ||
[https://uutils.github.io/diffutils/ Uutils Diffutils] is is a cross-platform memory-safe reimplementation of GNU findutils: <code>diff</code>, <code>cmp</code>, <code>diff3</code> and <code>sdiff</code> | |||
It aims to be a drop-in replacement of the original GNU | It aims to be a drop-in replacement of the original GNU diffutils commands | ||
[https://search.nixos.org/packages?show=uutils-diffutils Nixpkgs - <code>uutils-diffutils</code>] | [https://search.nixos.org/packages?show=uutils-diffutils Nixpkgs - <code>uutils-diffutils</code>] | ||
[[Category:CLI_Applications]] | |||
[[Category:Applications]] | |||
[[Category:Rust]]] |
Latest revision as of 13:31, 17 August 2025
The Uutils project reimplements ubiquitous command line utilities in memory-safe Rust.
Coreutils
Introduction
Uutils Coreutils is a cross-platform memory-safe reimplementation of GNU Coreutils in Rust
While all programs have been implemented, some options might be missing or different behavior might be experienced
For details, see Uutils Coreutils - GNU Coreutils Test Coverage
Though the main goal of the project is compatibility, Uutils Coreutils supports a few features that are not supported by GNU Coreutils
For details, see Uutils Coreutils - Extensions
Usage
In your configuration file, add the uutils-coreutils-noprefix
package in environment.systemsPackages
, and give it a high priority in order to avoid potential conflicts with coreutils-full
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
(lib.hiPrio pkgs.uutils-coreutils-noprefix) # `lib.hiPrio` is used to avoid potential conflict with `coreutils-full` (also see https://discourse.nixos.org/t/how-to-use-uutils-coreutils-instead-of-the-builtin-coreutils/8904/15?u=malix)
];
}
If you want a prefixed package for some reason, use uutils-coreutils
instead
coreutils-full
package, only install it and give it higher priority
Using system.replaceDependencies
instead of environment.systemPackages
seems to be a better approach, but it has not been successful yet
Findutils
Uutils Findutils is a cross-platform memory-safe reimplementation of GNU findutils: xargs
, find
, locate
and updatedb
It aims to be a drop-in replacement of the original GNU findutils commands
Diffutils
Uutils Diffutils is is a cross-platform memory-safe reimplementation of GNU findutils: diff
, cmp
, diff3
and sdiff
It aims to be a drop-in replacement of the original GNU diffutils commands