# Linux + Git Bash Lecture Linux is the most important open-source operating system and is present on most remote training servers including Paramganga at IITR. So we want you to follow the resources and become familiar with basic command line features, ssh and virtual environments. ## Things to be installed beforehand ### WSL (for windows) ### MacOS only Please try to install Homebrew as the package manager in your systems M1 installation: https://stackoverflow.com/questions/66666134/how-to-install-homebrew-on-m1-mac Intel macs: https://www.digitalocean.com/community/tutorials/how-to-install-and-use-homebrew-on-macos ### Linux users Don't have to install anything :-) just make sure to read about apt and how to install packages ### Anaconda (Virtual env) (must for all including Linux) https://docs.anaconda.com/anaconda/install/index.html (virtual env to be installed and needed for most linux and python packages)(you have to figure out the installation before the lecture) ### Terminal tools (Not compulsory) - Powerlevel10k - https://github.com/romkatv/powerlevel10k - OhmyZsh - https://ohmyz.sh - Warp (for macOS only right now) - https://www.warp.dev ## Linux and Bash (Basics) ### Lectures * https://missing.csail.mit.edu - most important lecture just do first 2 lectures and watch the rest in future depending upon usage and needs * https://www.youtube.com/watch?v=j6vKLJxAKfw&list=PL-osiE80TeTvGhHkpvfmKWOiIPF8UVy6c - can be followed for extra commands like grep ### Coding Labs * http://overthewire.org/wargames/bandit/ - do first 15 labs that are a must ### Apart from this #### Some Important commands in terminal for navigation and debugging and manuals you can read about apart from lectures * tldr * help * grep * diff #### Linux Important References(for future)(advanced use only and Not Necessary) These are only to be followed for some in-depth understanding of programs and concepts within the linux ecosystem. * https://www.linux.org/forums/#linux-tutorials.122 * https://wiki.archlinux.org