Repository navigation
Application Directory
This configuration installs a large number of useful programs to provide a complete development environment with minimal effort. This page will provide an overview of the programs installed by default to make it easier to know what each program is for.
Tools for compressing and decompressing files in various formats
- atool - "universal" tool for working with files in many formats - does not implement any compression routines itself, so underlying tools must be installed
- bzip2 - compress and decompress
.bz2files - cpio
- dtrx - "universal" tool for working with files in many formats - does not implement any compression routines itself, so underlying tools must be installed
Tools to manage shell history
- atuin - sync history across multiple machines
- autoconf - generate
configurescript fromconfigure.ac- part of autotools - autogen
- automake - generate
Makefile.intemplate fromMakefile.am
Tools to automatically format code following specific language standards
- autopep8 - automatically format Python code to follow PEP 8 style guide
- black - strict code formatter for Python
- cabal-fmt - format .cabal files
- cbfmt - format codeblocks in Markdown
- comby
- dfmt - format D
- docformatter - format Python docstrings
- dprint
- cabal-install - Haskell package manager
- conda-tree
- dub - D package manager
- cake - .NET build tool
- cmake
- dune
Language servers are a relatively new class of tools that implement the Language Server Protocol for providing completion and linting suggestions to text editors and IDEs.
- autotools-language-server - Autotools files (configure.ac, Makefile.am etc.)
- awk-language-server - Awk scripts
- azure-pipelines-language-server - Azure pipelines YAML files
- bash-language-server - Bash scripts
- clojure-lsp - Clojure
- cmake-language-server - Cmake
- compose-language-service - Docker compose
- dcd - D completion
- diagnostic-languageserver
- digestif - TeX languages
- dockerfile-language-server-nodejs - Dockerfiles
- dot-language-server
- dotnet-format
Tools for comparing text files
- diff-so-fancy
- diffr
- difftastic
- diffutils - classic
diffcommand
Tools for finding duplicate files
- ddh
Tools to quantify disk usage
- diskonaut
- diskus
- duc
- duf
- dust
- ncdu - ncurses disk usage tool
Tools for debugging code, some of which are support the Debug Adapter Protocol
- delve - Go debugger
- dotnet-diagnostics
Linters make suggested changes to code based on style and best practices guidelines
- bandit - Identifies common security issues in Python code
- beautysh - Bash script beautifier
- bibclean - syntax checking and pretty printing of BibTeX citation files
- checkmake
- checkstyle
- cljstyle
- codespell - find spelling errors in code
- commitlint - syntax checking for git commits
- cppcheck
- cpplint
- chezmoi
Tools for manipulating text in multiple formats
- dasel
Tools for working with tabular data
- csview - viewer for CSV and TSV files
- csvprintf - viewer for CSV and TSV files
- csvq
- datamash
- dsq
- duckdb
Git is a very population version control system with a large ecosystem of other tools
- bit-git
- choose-rust
- fzf
- fzy
- clang
- clangxx
- clang-tools
- dtools
- llvm-tools
Version control systems are used to manage changes to codebases
- breezy - Python 3 rewrite of the now unmaintained
bzrclient for Bazaar VCS - cvs
Scripting languages generally refer to languages which are interpreted rather than compiled. They are designed for interactivity and ease of use at the expense of slower performance and often less type safety.
- awk - classic scripting language for tabular data
- clojure - Common List derivative that runs on JVM
- dotnet-script - Use C# as a scripting language
- as-tree - print list of paths as a tree
- broot
- felix
- joshuto
- nnn
- ranger
A shell is an interactive environment in which the user can call other executables, in some cases piping together the output of one tool to the input of another, or saving the output to a file
- bash - The default shell on many Linux distributions and formerly macOS - this just provides the latest version in case the host copy is too old
- elvish
- fish - A "friendly interactive shell" with many nice features that is less compatible with bash
- nushell
- oil
- pwsh (Powershell) - The new shell for Windows (yes it does run on Linux and macOS now)
- zsh - The default shell for this configuration and the default on macOS
- amp
- emacs
- nvim
- vim
- ack - code searching tool written Perl
- bingrep - grep for binary files written in rust
- cgrep - code-aware grep tool written in Haskell
- grep - class file filtering tool
- ripgrep - fast Rust rewrite of grep
- the_silver_searcher - code searching tool written in C
- sad
- sd
- sed
- bat - Rust rewrite of cat
- cat (in coreutils) - classic pager
- ccat
- colortail
- alex - Parser written in and used by Haskell
- flex - classic lexer
- bison - classic parser
- happy - Parser written in and used by Haskell
- ammonite - Scala REPL
- dotnet-repl
- angle-grinder - manipulate log files
- bartib - log run time of commands
- bc - classic CLI calculator
Process monitors help you to see what process are running and how many resources they are using
- bottom
- btop
- aria2 - parallel download tool
- curl - classic tool for downloading files
- curlie
- pget - go rewrite of wget
- wget - simple download tool
- chars
- code-minimap
- coreutils