v3.0.4
DXSBash is a shell enhancement suite designed for developers, system administrators, and Linux power users. It provides a consistent, feature-rich experience across multiple shells, combining productivity tools, visual improvements, and optimized workflows.
Tested extensively on Debian 13. Please test on any system and send e-mail with detailed info with results, bugs, etc...
For a comprehensive list of all available commands and aliases in DXSBash, see the Commands Reference.
Ctrl+R- Search command history with fuzzy matchingCtrl+F- Launch interactive directory navigatorAlt+C- Change to selected directory via fuzzy finder
- Debian 13 (extensively tested)
- Limited support still for Debian 12
- Arch Linux (moderately tested)
- Ubuntu 20.04+ (limited tested)
- Administrative privileges (sudo mostly)
git clone --depth=1 https://github.com/digitalxs/dxsbash.git
cd dxsbash
chmod +x setup.sh
./setup.shThe installer provides an interactive experience:
- Detects your Linux distribution automatically
- Lets you choose your preferred shell (Bash, Zsh, or Fish)
- Installs all required dependencies
- Configures your chosen shell with enhanced features
- Sets up visual elements and productivity tools
- Configures KDE terminal Konsole and Yakuake profiles and defaults
Update to the latest version:
update-dxsbash.bashrc- Enhanced Bash configuration.zshrc- Zsh configuration with pluginsconfig.fish- Fish shell configuration
- Starship - Cross-shell prompt with rich information
- Zoxide - Smarter directory navigation
- FZF - Fuzzy finder for files and history
- Fastfetch - Optimized system information display
- FiraCode Nerd Font - Programming font with ligatures and icons
Ctrl+R- Search command history with fuzzy matchingCtrl+F- Launch interactive directory navigatorAlt+C- Change to selected directory via fuzzy finder
update- Update system packagesinstall [package]- Install packages with updateswhatsmyip- Show internal and external IP addresses
extract <file>- Extract any archive type automaticallymkdirg <dir>- Create and navigate to directorycpg <src> <dest>- Copy and go to destinationmvg <src> <dest>- Move and go to destination
..,...,....- Go up 1, 2, or 3 directoriesbd- Go back to previous directoryup <n>- Go up n directories
gs- Git statusga- Git addgc- Git commitgp- Git pushgl- Git loggb- Git branchgco- Git checkout
DXSBash installs and uses the following software packages to enhance the Linux terminal experience and DXSBash would not be possible without them:
| Software | Description | Project Link |
|---|---|---|
| Bash | GNU Bourne Again Shell | gnu.org/software/bash |
| Zsh | Z Shell | zsh.org |
| Fish | Friendly Interactive Shell | fishshell.com |
| Software | Description | Project Link |
|---|---|---|
| Starship | Cross-shell prompt | starship.rs |
| Zoxide | Smart directory navigation | github.com/ajeetdsouza/zoxide |
| FZF | Fuzzy finder | github.com/junegunn/fzf |
| Fastfetch | System information display | github.com/fastfetch-cli/fastfetch |
| Bat/Batcat | Improved cat command | github.com/sharkdp/bat |
| Ripgrep | Fast text search | github.com/BurntSushi/ripgrep |
| Tree | Directory visualization | mama.indstate.edu/users/ice/tree |
| Multitail | Enhanced log viewing | vanheusden.com/multitail |
| Software | Description | Project Link |
|---|---|---|
| FiraCode Nerd Font | Programming font with ligatures and icons | github.com/ryanoasis/nerd-fonts |
| Software | Description | Project Link |
|---|---|---|
| Oh My Zsh | Zsh framework | ohmyz.sh |
| zsh-autosuggestions | Command suggestions for Zsh | github.com/zsh-users/zsh-autosuggestions |
| zsh-syntax-highlighting | Syntax highlighting for Zsh | github.com/zsh-users/zsh-syntax-highlighting |
| Fisher | Plugin manager for Fish | github.com/jorgebucaran/fisher |
| fzf.fish | FZF integration for Fish | github.com/PatrickF1/fzf.fish |
| Tide | Fish prompt | github.com/IlanCosman/tide |
| Software | Description | Project Link |
|---|---|---|
| Git | Version control system | git-scm.com |
| Neovim | Text editor | neovim.io |
| Nano | Simple text editor | nano-editor.org |
| Joe | Text editor | joe-editor.sourceforge.net |
| Software | Description | Project Link |
|---|---|---|
| Nala | APT frontend | github.com/volitank/nala |
| Trash-cli | Safer alternative to rm | github.com/andreafrancia/trash-cli |
| Curl | URL transfer tool | curl.se |
| Wget | File retrieval tool | gnu.org/software/wget |
| Unzip | Archive extraction | infozip.sourceforge.net/UnZip.html |
| Pwgen | Password generator | sourceforge.net/projects/pwgen |
| Powerline | Status line | github.com/powerline/powerline |
| Plocate | Fast file search | plocate.sesse.net |
| Fontconfig | Font management | freedesktop.org/wiki/Software/fontconfig |
| Bash-completion | Improved shell completion | github.com/scop/bash-completion |
| Software | Description | Project Link |
|---|---|---|
| Nmcli | Network management CLI | developer.gnome.org/NetworkManager/stable/nmcli.html |
| Netstat | Network statistics | net-tools.sourceforge.net |
| Software | Description | Project Link |
|---|---|---|
| XDotool | X11 automation tool | github.com/jordansissel/xdotool |
| XClip | Clipboard management | github.com/astrand/xclip |
| Software | Description | Project Link |
|---|---|---|
| Docker | Container platform | docker.com |
| Docker Compose | Multi-container Docker | docs.docker.com/compose |
| Kubectl | Kubernetes CLI | kubernetes.io/docs/reference/kubectl |
| Software | Description | Project Link |
|---|---|---|
| DNF | Fedora package manager | dnf.readthedocs.io |
| Zypper | SUSE package manager | en.opensuse.org/Portal:Zypper |
| Pacman | Arch package manager | archlinux.org/pacman |
| Emerge | Gentoo package manager | wiki.gentoo.org/wiki/Portage |
| XBPS | Void Linux package manager | voidlinux.org/usage/xbps |
| Nix | NixOS package manager | nixos.org/manual/nix |
| Yay/Paru | AUR helpers | github.com/Jguer/yay / github.com/Morganamilo/paru |
| Software | Description | Project Link |
|---|---|---|
| Konsole | KDE terminal | konsole.kde.org |
| Yakuake | KDE drop-down terminal | kde.org/applications/system/org.kde.yakuake |
| Kitty | GPU-accelerated terminal | sw.kovidgoyal.net/kitty |
You can customize your environment even more by editing:
- Shell configuration:
.bashrc,.zshrc, or~/.config/fish/config.fish - Edit aliases:
.bash_aliases - Prompt:
~/.config/starship.toml - System info:
~/.config/fastfetch/config.jsonc
- Linux-specific Commands: Some commands (like netstat-based aliases) might not work correctly on all Linux distributions or might have different output formats.
- X11-dependent Features: Commands like clickpaste rely on X11 utilities (xdotool) which won't work in Wayland or headless environments.
- Hardware-dependent Commands: The cpu function assumes a specific format in /proc/stat, which might not be consistent across all Linux kernels.
- Terminal-specific Features: The Konsole and Yakuake configurations might not translate well to other terminal emulators.
Revert to default shell configuration:
sudo reset-shell-profile [username]DXSBash was successfully compatibility tested with:
- Debian 13
- Konsole 25.04.2
- Yakuake 25.04.0
- XFce Terminal 1.0.4 (Need to change font settings to Firacode Nerd Font Regular)
- Kitty 0.26.5
If you find DXSBash valuable for your workflow, consider supporting its development:
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
- GitHub: digitalxs/dxsbash
- Email: luis@digitalxs.ca
- Website: https://digitalxs.ca

