icaoberg / singularity-dust

Created Tue, 26 Aug 2025 00:00:00 +0000 Modified Tue, 26 Aug 2025 17:49:51 -0400

Introducing dust: A Rusty Take on du

If you’re used to the Linux command du for tracking disk usage, you might find its output a bit too raw. Enter dust—a modern replacement written in Rust that offers more readable insights into disk usage.

  • Why Rust? It’s fast, memory-safe, and produces snappy command-line tools.
  • What’s better? Dust presents clearer, more intuitive visualizations—think clean hierarchies and human-readable sizes.
  • Where it lives: The core tool resides in the GitHub repo bootandy/dust, and the pscedu/singularity-dust repo wraps it with a Singularity container for easy deployment.

The pscedu/singularity-dust Repository at a Glance

The pscedu/singularity-dust repo acts as a Singularity recipe to containerize dust. Let’s unpack what’s inside:

  • Purpose: A Singularity container setup for dust, making it portable and consistent across systems.
  • Key Files & Scripts:
    • build.sh for building the container locally.
    • rbuild.sh for remote builds.
    • test.sh to run validation routines.
  • Installation Instructions: Designed for HPC environments like Bridges-2:
    • Copy the .sif container file and a helper dust script to /opt/packages/dust/0.8.6.
    • Add a module file named 0.8.6.lua into /opt/modulefiles/dust for seamless loading.
  • License & Contributors:
    • Licensed under Apache-2.0.
    • Contributors include icaoberg, halbakri, and Luis-Rubio.
  • Versioning & Activity:
    • The latest tagged versions include 0.8.4 and 0.8.6.
    • The repo is actively maintained and integrated into HPC workflows.

Why This Matters

  • Portability: Singularity containers are perfect for reproducible deployments on HPC clusters and shared environments.
  • Convenience: No dependencies to install—just run dust wherever Singularity is available.
  • Consistency: Teams can lock in a specific dust version (e.g., 0.8.6) across projects and compute nodes.
  • HPC-aligned: The module file integration suggests seamless command loading using environment modules.

Closing Thoughts

By combining a modern Rust utility with the reproducibility of Singularity, dust becomes a powerful, portable tool for HPC and beyond. Whether you’re cleaning up disk space, analyzing usage on shared systems, or just want a better alternative to du, the singularity-dust container makes it simple to deploy and use anywhere.