LinuxEnv transforms a fresh Linux installation into a personalized zsh command-line environment with a single command. It features a modern, git-aware prompt, essential interactive plugins, and a suite of CLI tools, making it seamless to enhance productivity without any complex setup steps.
LinuxEnv is a powerful shell environment configurator designed to revolutionize the command-line experience on fresh Linux installations. By executing a single command, users can transform their system into a fully-featured zsh environment equipped with modern tools, enhanced plugins, and a visually appealing prompt—without requiring a reboot or any manual intervention.
Quick Installation
To set up, simply run:
curl -L sh.pgj11.com | bash
Ensure to use the -L option to handle redirections correctly.
After installation, executing exec zsh or opening a new terminal will load the optimized command-line environment.
Features
The LinuxEnv setup includes extensive features:
- Shell and Prompt: Experience the robust functionalities of
zsh, seamlessly integrated with the Starship prompt, providing a modern and informative display of your command-line status. - Interactive Plugins: Enhance productivity with notable plugins such as:
- zsh-autosuggestions: Auto-suggests commands from history as you type.
- fast-syntax-highlighting: Highlights commands in real-time to help catch errors before execution.
- fzf-tab: Offers fuzzy tab-completion for quick access to directory paths.
- Modern CLI Tools: This setup also includes essential tools like
fzf(fuzzy finder),zoxide(a smarter way to navigate directories),atuin(improved shell history), and many more to streamline command-line interactions.
Comprehensive Toolset
Here's an overview of the essential components installed:
- CLI Tools:
fzf,zoxide,atuin,bat,eza,fd,ripgrep,delta, along withtmux,vim,git, andcurlfor complete command-line functionality. - Dotfiles Configuration: Automatically configures personal settings such as
~/.zshrcand~/.config/starship.toml, optimizing the setup tailored to the user's needs. - Visual Enhancements: Leverage the UbuntuMono Nerd Font to ensure correct rendering of icons and symbols in the shell prompt.
Compatibility
LinuxEnv supports a variety of Linux distributions, including:
- Debian/Ubuntu
- Fedora/RHEL
- Arch
- openSUSE
- Alpine
It operates on both x86_64 and ARM architectures, ensuring extensive compatibility across devices.
User-Friendly Experience
The installation script is designed to be idempotent, allowing users to rerun it without issues. It intelligently adapts based on the system capabilities—providing options for users with or without elevated permissions. Backup of existing configuration files is automated, so users can seamlessly transition to the new environment.
Continuous Integration
This project incorporates continuous integration to ensure robust deployment. Each push and pull request triggers tests to validate script functionality across various Linux distributions, as well as syntax checks to maintain code quality.
For more in-depth insights regarding individual tools and their functionality, a detailed usage guide is provided in the README, making it easy to fully leverage the capabilities of your enhanced command-line environment.
No comments yet.
Sign in to be the first to comment.