From e82a644e998319ef0e8947797345c7852175d573 Mon Sep 17 00:00:00 2001 From: Evan Date: Sat, 11 Jul 2026 18:20:26 -0500 Subject: [PATCH] add .gitignore, python, uv, and update permissions --- .gitignore | 2 ++ main.sh | 53 +++++++++++++++++++++++------------------------------ 2 files changed, 25 insertions(+), 30 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c5f3e60 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +todo.md + diff --git a/main.sh b/main.sh index 8ab722d..55eb3f9 100644 --- a/main.sh +++ b/main.sh @@ -1,22 +1,13 @@ #!/bin/bash # Last updated: 7/4/2026 # This was designed for Linux Mint XX.x; most of it should work for other distros. the desktop-environment.sh code will probably need to be different for anything that's not Cinnamon. - -USER_DIR="/home/evan" - # Some things here require manual install because they aren't in apt repositories, don't have another stable installation source, and I don't want to rely on a static download location. # These things will all be put into a TODO.md file in the current directory along with brief notes/instructions. -# check for root access -if [ "$EUID" -ne 0 ] - then echo "please run this script as root" - exit -fi - touch todo.md -mkdir -p /usr/local/bin -chmod 755 /usr/local/bin -apt-get update +sudo mkdir -p /usr/local/bin +sudo chmod 755 /usr/local/bin +sudo apt-get update ####################### ## DEV/PROGRAMMING ## @@ -25,14 +16,16 @@ apt-get update echo "## dev/programming & essential tools/programs" | tee todo.md -a # Install some apt packages -apt-get install -y git jq build-essentials unzip # for development -apt-get install -y ripgrep # I honestly don't remember why I installed these +sudo apt-get upgrade +sudo apt-get install -y curl git jq build-essentials unzip # for development +sudo apt-get install -y ripgrep # I honestly don't remember why I installed these echo "* globstar?" | tee todo.md -a -# Install Python & uv (package manager) - -# link /usr/bin/python to a real python install -echo "* install python" | tee todo.md -a +# Install Python & uv (package/version manager) +curl -LsSf https://astral.sh/uv/install.sh | sh +source $HOME/.local/bin/env +# install latest version of python with default `python` and `python3` executables +uv python install --default # Node.js 24 (with nvm - https://github.com/nvm-sh/nvm) # also required for pyright language server (neovim) @@ -47,7 +40,7 @@ unzip ./utils/DejaVuSansMono.zip /usr/share/fonts/truetype/DejaVuSansMono/ # zsh (better shell) echo "* add zsh and starship, etc. + nerd font" | tee todo.md -a -apt-get install -y zsh +sudo apt-get install -y zsh # starship (shell prompt) curl -sS https://starship.rs/install.sh | sh @@ -81,25 +74,25 @@ echo "* install Zoom (video call)" | tee todo.md -a echo "## workflow helpers, small tools, and utilities" | tee todo.md -a # pbcopy/pbpaste (from macOS) -apt-get install -y xclip +sudo apt-get install -y xclip printf '#!/bin/bash \nxclip -selection clipboard' | tee /usr/local/bin/pbcopy chmod 755 /usr/local/bin/pbcopy printf '#!/bin/bash \nxclip -selection clipboard -o' | tee /usr/local/bin/pbpaste chmod 755 /usr/local/bin/pbpaste # WordNet & def utility -apt-get install -y wordnet +sudo apt-get install -y wordnet printf '#!/bin/bash \nwn $1 -over' | tee /usr/local/bin/def chmod 755 /usr/local/bin/def # Artha (WordNet dictionary) -apt-get install -y artha +sudo apt-get install -y artha # qpdf (pdf manipulation) -apt-get install -y qpdf +sudo apt-get install -y qpdf # rndrmarkdown markdown renderer -apt-get install -y pandoc +sudo apt-get install -y pandoc cp ./utils/rndrmarkdown /usr/local/bin/rndrmarkdown chmod 755 /usr/local/bin/rndrmarkdown echo 'alias rmd="rndrmarkdown"' | tee ~/.bashrc -a @@ -110,23 +103,23 @@ chmod 755 /usr/local/bin/rline echo "* verify rline formatted correctly" # Calc (command-line calculator) -apt-get install -y calc +sudo apt-get install -y calc # OpenSSH server (prob already has ssh client) -apt-get install -y openssh-server +sudo apt-get install -y openssh-server echo "* verify has openSSH client" | tee todo.md -a # Wine (run windoze apps) -apt-get install -y winehq +sudo apt-get install -y winehq # Gpick (color picker) -apt-get install -y gpick +sudo apt-get install -y gpick # ksnip (screenshot) -apt-get install -y ksnip +sudo apt-get install -y ksnip # btop (system resource monitor) -apt-get install -y btop +sudo apt-get install -y btop ##########################