add .gitignore, python, uv, and update permissions
This commit is contained in:
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
todo.md
|
||||||
|
|
||||||
53
main.sh
53
main.sh
@@ -1,22 +1,13 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Last updated: 7/4/2026
|
# 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.
|
# 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.
|
# 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.
|
# 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
|
touch todo.md
|
||||||
mkdir -p /usr/local/bin
|
sudo mkdir -p /usr/local/bin
|
||||||
chmod 755 /usr/local/bin
|
sudo chmod 755 /usr/local/bin
|
||||||
apt-get update
|
sudo apt-get update
|
||||||
|
|
||||||
#######################
|
#######################
|
||||||
## DEV/PROGRAMMING ##
|
## DEV/PROGRAMMING ##
|
||||||
@@ -25,14 +16,16 @@ apt-get update
|
|||||||
echo "## dev/programming & essential tools/programs" | tee todo.md -a
|
echo "## dev/programming & essential tools/programs" | tee todo.md -a
|
||||||
|
|
||||||
# Install some apt packages
|
# Install some apt packages
|
||||||
apt-get install -y git jq build-essentials unzip # for development
|
sudo apt-get upgrade
|
||||||
apt-get install -y ripgrep # I honestly don't remember why I installed these
|
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
|
echo "* globstar?" | tee todo.md -a
|
||||||
|
|
||||||
# Install Python & uv (package manager)
|
# Install Python & uv (package/version manager)
|
||||||
|
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||||
# link /usr/bin/python to a real python install
|
source $HOME/.local/bin/env
|
||||||
echo "* install python" | tee todo.md -a
|
# 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)
|
# Node.js 24 (with nvm - https://github.com/nvm-sh/nvm)
|
||||||
# also required for pyright language server (neovim)
|
# also required for pyright language server (neovim)
|
||||||
@@ -47,7 +40,7 @@ unzip ./utils/DejaVuSansMono.zip /usr/share/fonts/truetype/DejaVuSansMono/
|
|||||||
|
|
||||||
# zsh (better shell)
|
# zsh (better shell)
|
||||||
echo "* add zsh and starship, etc. + nerd font" | tee todo.md -a
|
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)
|
# starship (shell prompt)
|
||||||
curl -sS https://starship.rs/install.sh | sh
|
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
|
echo "## workflow helpers, small tools, and utilities" | tee todo.md -a
|
||||||
|
|
||||||
# pbcopy/pbpaste (from macOS)
|
# 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
|
printf '#!/bin/bash \nxclip -selection clipboard' | tee /usr/local/bin/pbcopy
|
||||||
chmod 755 /usr/local/bin/pbcopy
|
chmod 755 /usr/local/bin/pbcopy
|
||||||
printf '#!/bin/bash \nxclip -selection clipboard -o' | tee /usr/local/bin/pbpaste
|
printf '#!/bin/bash \nxclip -selection clipboard -o' | tee /usr/local/bin/pbpaste
|
||||||
chmod 755 /usr/local/bin/pbpaste
|
chmod 755 /usr/local/bin/pbpaste
|
||||||
|
|
||||||
# WordNet & def utility
|
# 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
|
printf '#!/bin/bash \nwn $1 -over' | tee /usr/local/bin/def
|
||||||
chmod 755 /usr/local/bin/def
|
chmod 755 /usr/local/bin/def
|
||||||
|
|
||||||
# Artha (WordNet dictionary)
|
# Artha (WordNet dictionary)
|
||||||
apt-get install -y artha
|
sudo apt-get install -y artha
|
||||||
|
|
||||||
# qpdf (pdf manipulation)
|
# qpdf (pdf manipulation)
|
||||||
apt-get install -y qpdf
|
sudo apt-get install -y qpdf
|
||||||
|
|
||||||
# rndrmarkdown markdown renderer
|
# rndrmarkdown markdown renderer
|
||||||
apt-get install -y pandoc
|
sudo apt-get install -y pandoc
|
||||||
cp ./utils/rndrmarkdown /usr/local/bin/rndrmarkdown
|
cp ./utils/rndrmarkdown /usr/local/bin/rndrmarkdown
|
||||||
chmod 755 /usr/local/bin/rndrmarkdown
|
chmod 755 /usr/local/bin/rndrmarkdown
|
||||||
echo 'alias rmd="rndrmarkdown"' | tee ~/.bashrc -a
|
echo 'alias rmd="rndrmarkdown"' | tee ~/.bashrc -a
|
||||||
@@ -110,23 +103,23 @@ chmod 755 /usr/local/bin/rline
|
|||||||
echo "* verify rline formatted correctly"
|
echo "* verify rline formatted correctly"
|
||||||
|
|
||||||
# Calc (command-line calculator)
|
# Calc (command-line calculator)
|
||||||
apt-get install -y calc
|
sudo apt-get install -y calc
|
||||||
|
|
||||||
# OpenSSH server (prob already has ssh client)
|
# 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
|
echo "* verify has openSSH client" | tee todo.md -a
|
||||||
|
|
||||||
# Wine (run windoze apps)
|
# Wine (run windoze apps)
|
||||||
apt-get install -y winehq
|
sudo apt-get install -y winehq
|
||||||
|
|
||||||
# Gpick (color picker)
|
# Gpick (color picker)
|
||||||
apt-get install -y gpick
|
sudo apt-get install -y gpick
|
||||||
|
|
||||||
# ksnip (screenshot)
|
# ksnip (screenshot)
|
||||||
apt-get install -y ksnip
|
sudo apt-get install -y ksnip
|
||||||
|
|
||||||
# btop (system resource monitor)
|
# btop (system resource monitor)
|
||||||
apt-get install -y btop
|
sudo apt-get install -y btop
|
||||||
|
|
||||||
|
|
||||||
##########################
|
##########################
|
||||||
|
|||||||
Reference in New Issue
Block a user