Tools/applications written in Rust

I’m just getting started with Rust - the one I didn’t see was rustup. Most of the books recommend you install rustup and let it install the rest locally, rather than having a system-wide fixed toolchain.

I think the reason why we don’t want to package rustup is because we don’t want people to use non-system compilers.

The rest of developers can install rustup themselves.

This is why I love the Silverblue concept so much - IMHO the OS should just be the kernel / device manager, a rational command line and a display / desktop - everything else should be isolated in a container via podman or flatpak. Want a Rust toolchain? Run it in a container! :wink:

1 Like

This is precisely why I’m against the idea of Silverblue.

You can also tell rustup about the system toolchain:

$ rustup toolchain link system /usr

And perhaps:

$ rustup default set system

I use this because I do test with different versions while developing crates, but by default I want to use Fedora’s rustc, cargo, and extended tools.

1 Like

To add to this a bit: there are Docker images for pretty much every Rust version, so it’s basically a really nice, isolated rustup.

1 Like

I’d like to see zola, the rust-based static-site generator packaged for Fedora.

I know that it doesn’t use crates.io, though, so I’m not sure if that would impede its ability to be packaged for Fedora.

I’ll add it to my list, thanks!

It is okay, we can package things as long as they are available somewhere and their dependencies are available on crates.io (which seems to be the case).

1 Like

Requesting package: Shortwave

https://github.com/lotabout/skim A general fuzzy finder like fzf.

https://github.com/rschmitt/heatseeker A general-purpose fuzzy selector.

https://github.com/p-e-w/hegemon A modular system monitor.

I’m still planning on packaging rav1e when I have the time:

Request: sccache - Shared Compilation Cache

The dependencies can be trimmed a lot if we disable the features for remote storage and distributed client/server, so it would only support local disk storage. Even then, we’re missing a few things.

I have packaged it and it is available in fedora-updates-testing-modular. It should be enough to do dnf --enablerepo=fedora-updates-testing-modular install heatseeker.

Good news, many apps got into repos all the way back to f28.

As well we have packaged following apps:

  • ffsend Easily and securely share files from the command line. A fully featured Firefox Send client.
  • lscolors Command-line tool that can be used to colorize the output of other commands.
  • lsd LSDeluxe. Heavily inspired by the super colorls project.
  • rpick Command line tool that helps you to pick items from a list, using configurable algorithms.
  • silver Cross-shell customizable powerline-like prompt heavily inspired by Agnoster. The faster rust port of bronze.
  • skim Fuzzy Finder in rust.

Only ffsend and rpick are available in f28/f29/f30 at this point, but we are working on adding the rest.

1 Like
  • watchexec is a simple, standalone tool that watches a path and runs a command whenever it detects modifications.
  • podcast is a command line podcast player.
  • procs is a replacement for ps written by Rust.
  • oxipng A lossless PNG compression optimizer
  • broot A better way to navigate directories
  • jql A JSON Query Language CLI tool built with Rust
  • diskus is a very simple program that computes the total size of the current directory. It is a parallelized version of du -sh .
  • tin-summer Find build artifacts that are taking up disk space
  • dust A more intuitive version of du in rust
  • rm-improved is a command-line deletion tool focused on safety, ergonomics, and performance. It favors a simple interface, and does /not/ implement the xdg-trash spec or attempt to achieve the same goals.
  • cobalt-bin A straightforward static site generator written in Rust.
  • rnr is a command-line tool to rename multiple files and directories that supports regular expressions.
  • amber is a code search and replace tool written by Rust. This tool is inspired by ack, ag, and other grep-like tools.
  • hunter is a fast and lag-free file browser/manager for the terminal. It features a heavily asynchronous and multi-threaded design and all disk IO happens off the main thread in a non-blocking fashion, so that hunter will always stay responsive, even under heavy load on a slow spinning rust disk, even with all the previews enabled.
  • peep The CLI text viewer tool that works like less command on small pane within the terminal window.

I forgot tarssh A simple SSH tarpit, similar to endlessh.

1 Like

Wishlisted app: gifski

Highest-quality GIF encoder based on pngquant.

gifski converts video frames to GIF animations using pngquant’s fancy features for efficient cross-frame palettes and temporal dithering. It produces animated GIFs that use thousands of colors per frame.

Seconding gifski.

Also wishlist for texlab.

Hello @jcampbell, Zola is now available everywhere starting from F29! :champagne:

1 Like