My home-manager zsh config
| .forgejo/workflows | ||
| modules | ||
| .gitignore | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| README.md | ||
zsh-nix
A home-manager flake containing my zsh config.
Usage
{
# Add this flake to your inputs
inputs = {
zsh-config.url = "/home/jirka/Projects/zsh-nix/";
...
}
...
outputs = {
self,
nixpkgs,
home-manager,
zsh-config, # Don't forget to import it
...
}
...
# Then add it to your homeConfigurations
homeConfigurations = {
"user@hostname" = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance
extraSpecialArgs = {inherit inputs outputs;};
modules = [
...
inputs.zsh-config.homeManagerModules.default
...
];
};
ZSH Configuration Flake
This flake provides a ZSH configuration with various plugins, syntax highlighting, enhanced file handling, etc.
Overview
Notable plugins
zsh-autosuggestions: Provides suggestions as you type based on your command history.zsh-you-should-use: Reminds you to use aliases for commands you frequently type. It helps you streamline your workflow.ssh-connect: A utility for managing SSH connections and quickly switching between them.enhancd: Improves directory navigation with fuzzy search, similar tozsh-z.zsh-completions: Adds missing completions for various tools.powerlevel10k: A highly customizable ZSH theme that gives you a clean and modern look with useful information in your prompt.gitplugin: Provides consistent, intuitive aliases and extra functions for common Git commands, improving workflow efficiency.
Packages
This flake includes some useful packages:
nix-zsh-completions: ZSH completions for Nix, NixOS, and NixOps.asciinema: Terminal recording tool.libnotify: Provides notifications for terminal events.websocat: Used for streaming asciinema recordings in v2 format.
tldr: Community-driven simplified man pages for faster reference.lsd: A next-generationlscommand with improved features.bat: Acatclone with syntax highlighting and Git integration.eza: A modern, maintained replacement forls.trash-cli: Command line interface to the Freedesktop.org trashcan.
Other
ex: A shell function to extract various archive formats.- Supported formats include
.tar.bz2,.zip,.rar,.gz, and more.
- Supported formats include