Welcome to Linux First Aid, a comprehensive guide and toolset for configuring your Linux environment quickly and efficiently. This project provides automated scripts for setting up essential tools, NVIDIA drivers, Docker, and other development utilities tailored for a productive experience.
LinuxFirstAid is a comprehensive setup script for quickly preparing a Linux environment for development, gaming, and machine learning. It is designed to simplify the initial configuration of Linux systems, providing tools and environments that users commonly need right after installation.
-
Ubuntu
-
Arch (The Nvidia install script hasn't been tested)
-
Fedora (Coming Soon...)
-
Essential Tools Setup: Install Fish shell, Zoxide, Visual Studio Code, and Neovim.
-
Docker and Podman Installation for containerization.
-
Development Environment setup with support for multiple programming languages, including C++, Python, Rust, Node.js, and more.
-
Proprietary NVIDIA Driver Installation for maximum GPU performance.
-
CUDA Toolkit Setup for machine learning and GPU programming.
Fish is a user-friendly and feature-rich shell that includes autocompletions, syntax highlighting, and better defaults.
Advantages:
-
Autosuggestions for faster commands.
-
Easier customization with built-in configuration.
-
Clear and intuitive scripting syntax.
Zoxide is a blazing fast directory jumper that saves time navigating file paths.
Advantages:
-
Automatically remembers your most used directories.
-
Simple, fast, and integrates seamlessly with your shell.
-
Aliases like
zfor quick access.
This script only helps installation of Zoxide but does not handle its configuration and setup. You can find configuration instructions based on your linux shell on the official Zoxide repository.
If you don't need a specific package or configuration from the script, simply comment out the corresponding lines in the script. This flexibility allows you to tailor the setup to your needs.
- Clone this repository
git clone https://github.com/Sembarang28/LinuxFirstAid.git
- Navigate to the directory
cd LinuxFirstAid
- Navigate to directory based on your linux distribution (example ubuntu)
cd ubuntu
- Make Scripts Executable
chmod +x *.sh
- Run the script you need (example running setup_essentials.sh script)
./setup_essentials.sh
-
setup_essentials.sh
- Install fish shell.
- Change default shell to fish shell
- Install curl
- Install wget
- Install Firefox
- Install Google Chrome
- Install Zoxide
- Install git
- Install Visual Studio Code
- Install Neovim
-
setup_programming_languages.sh
- Install C/C++ Programming Language
- Install C# Programming Language
- Install Java Programming Language
- Install Kotlin Programming Language
- Install JavaScript & TypeScript Programming Language
- Install Go Programming Language
- Install Python Programming Language
- Install Rust Programming Language
- Install Ruby Programming Language
- Install PHP Programming Language
- Install Dart Programming Language
-
setup_containers_and_databases.sh
- Install Docker
- Install Podman
- Install MySQL
- Install PostgreSQL
-
setup_nvidia_driver.sh
- Install Nvidia Driver Version 535
-
setup_nvidia_cuda.sh
- Install Nvidia CUDA
- Install Nvidia CUDA Driver version 570
Contributions are welcome! If you have ideas to improve the scripts or add more features:
-
Fork the repository.
-
Create a feature branch (
git checkout -b feature/YourFeature). -
Commit your changes (
git commit -m 'Add YourFeature'). -
Push to the branch (
git push origin feature/YourFeature). -
Open a Pull Request.
Happy hacking! ✨