mirror of
https://github.com/ChrisTitusTech/mybash.git
synced 2026-04-11 23:18:18 +00:00
e67d57018cb4be979ee6b780775f66a3d67e358a
add xdg folders export linuxtoolboxdir as other scripts will use it add caching for starship and zoxide so that the shell starts faster
Overview of ChrisTitusTech's .bashrc Configuration
The .bashrc file is a script that runs every time a new terminal session is started in Unix-like operating systems. It is used to configure the shell session, set up aliases, define functions, and more, making the terminal easier to use and more powerful. Below is a summary of the key sections and functionalities defined in the provided .bashrc file.
Initial Setup and System Checks
- Environment Checks: The script checks if it is running in an interactive mode and sets up the environment accordingly.
- System Utilities: It checks for the presence of utilities like
fastfetch,bash-completion, and system-specific configurations (/etc/bashrc).
Aliases and Functions
- Aliases: Shortcuts for common commands are set up to enhance productivity. For example,
alias cp='cp -i'makes thecpcommand interactive, asking for confirmation before overwriting files. - Functions: Custom functions for complex operations like
extract()for extracting various archive types, andcpp()for copying files with a progress bar.
Prompt Customization and History Management
- Prompt Command: The
PROMPT_COMMANDvariable is set to automatically save the command history after each command. - History Control: Settings to manage the size of the history file and how duplicates are handled.
System-Specific Aliases and Settings
- Editor Settings: Sets
nvim(NeoVim) as the default editor. - Conditional Aliases: Depending on the system type (like Fedora), it sets specific aliases, e.g., replacing
catwithbat.
Enhancements and Utilities
- Color and Formatting: Enhancements for command output readability using colors and formatting for tools like
ls,grep, andman. - Navigation Shortcuts: Aliases to simplify directory navigation, e.g.,
alias ..='cd ..'to go up one directory. - Safety Features: Aliases for safer file operations, like using
trashinstead ofrmfor deleting files, to prevent accidental data loss. - Extensive Zoxide support: Easily navigate with
z,zi, or pressing Ctrl+f to launch zi to see frequently used navigation directories.
Advanced Functions
- System Information: Functions to display system information like
distribution()to identify the Linux distribution. - Networking Utilities: Tools to check internal and external IP addresses.
- Resource Monitoring: Commands to monitor system resources like disk usage and open ports.
Installation and Configuration Helpers
- Auto-Install: A function
install_bashrc_support()to automatically install necessary utilities based on the system type. - Configuration Editors: Functions to edit important configuration files directly, e.g.,
apacheconfig()for Apache server configurations.
Conclusion
This .bashrc file is a comprehensive setup that not only enhances the shell experience with useful aliases and functions but also provides system-specific configurations and safety features to cater to different user needs and system types. It is designed to make the terminal more user-friendly, efficient, and powerful for an average user.
Description
My Bash profile - Highly customized Starship Theme - Just imagine Powerlevel10k and Nord Theme had a baby.
Languages
Shell
100%