Native Linux
Last updated 2026-08-20 · 6 notes · 4 tags
Tags: linux ubuntu mint setup
For Ubuntu or Linux Mint as a normal install (or a full virtual machine) — not WSL. After Linux is installed, the tool list matches the WSL guide so either environment works for the later pages.
Note: If you use Windows every day and only want a Linux terminal, prefer WSL on Windows instead.
1. Install the operating system
- Download Ubuntu Desktop or Linux Mint from the official site.
- Create a bootable USB (use the maker tool recommended on that site).
- Boot from the USB and complete the installer.
- Log in, connect to the internet, and apply the first round of system updates from the Software Updater if it appears.
Note: During install, write down the username you create — that is your Linux account for
sudocommands.
2. Update the system
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y
Verify:
lsb_release -a
uname -a
3. Git
sudo apt install git -y
git --version
4. GitHub CLI (gh)
Install GitHub CLI:
sudo apt update
sudo apt install gh -y
gh --version
You will sign in later with gh auth login.
5. Python, pip, and venv
sudo apt install python3 python3-pip python3-venv -y
python3 --version
pip3 --version
Note: Use a virtual environment per project. See Python virtual environments. Do not treat global
pip installas your default habit.
6. pipx and uv
sudo apt install pipx -y
pipx ensurepath
Open a new terminal window, then:
pipx --version
pipx install uv
uv --version
7. Node.js (LTS) with nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
Restart the terminal, then:
nvm install --lts
node --version
npm --version
8. Cursor or VS Code
Install from the official site for Linux, or use your distribution’s software center if the vendor package is listed.
- Cursor: https://cursor.com
- VS Code: https://code.visualstudio.com/
Verify (if the code command is on your PATH):
code --version
9. Ollama (optional)
curl -fsSL https://ollama.com/install.sh | sh
ollama --version
ollama pull qwen3:4b
ollama list
10. Handy utilities
sudo apt install tree zip unzip curl wget trash-cli ffmpeg jq -y
tree --version
curl --version
trash-put --version
jq --version
Note: Set up safe delete next so everyday
rmmistakes are recoverable.
11. Git identity and GitHub login
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
git config --list
gh auth login
gh auth status
12. Project folder
mkdir -p ~/projects
cd ~/projects
pwd
Note: Keeping all projects under
~/projectsmakes paths easier to remember and to share with an AI assistant.
13. Quick health check
git --version
gh --version
python3 --version
pip3 --version
pipx --version
uv --version
node --version
npm --version
tree --version
curl --version
wget --version
jq --version
ffmpeg -version
trash-put --version
14. Keeping things updated
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y
pipx upgrade-all
Note: On Mint, the Update Manager GUI is fine for system packages; still use the terminal for
pipx/nvm/ Ollama as shown above.
Common mistakes
sudoasks for your user password.- If a brand-new terminal still cannot find
nvmorpipx, log out and back in once. - Mint is Ubuntu-based; these
aptcommands apply to both in almost all cases used here.
This project chronicles ideas, decisions and lessons I have gleaned from building with AI. The goal is to help non-technical users get familiar with these tools and techniques, so that they may be able to use them effectively. At times, I have also made the use of AI tools to augment or refine the content.
Readers are responsible for using any commands or instructions published here with due caution. The creator of this site accepts no responsibility for any system damage, data loss or other consequences, resulting from the application of this content.