#! /bin/bash sudo_package_update # This now installs a lot of language specific stuff from python, gradle, to go. # Should consider pulling these into different recipes that are dependent on the environment # that I wish to bootstrap. If not a dev environment, I can trim out some of this. # Packages that are pretty much the same treatment or names in all systems # Shells packages="fish bash" # Common shell utils packages="$packages tmux htop curl wget pv jq mosh bash-completion ripgrep" # Development tools packages="$packages neovim vim tig shellcheck" # Manager specific packages case "$PACKAGE_MANAGER" in "port") packages="$packages universal-ctags" packages="$packages gnutar" # Non-standard packages packages="$packages md5sha1sum" # Python packages packages="$packages python27 py27-ipython py27-pip py27-six py27-virtualenv" packages="$packages python310 py310-ipython py310-pip py310-six py310-tox py310-flake8 py310-virtualenv py310-black" # Macvim with ruby and python support # sudo_package 'macvim +ruby +python27' # Vim with ruby and python support packages="$packages vim +python310" # Newer version of git with completion packages="$packages git +bash_completion" # Neovim python plugins packages="$packages py310-neovim" # Docker stuff packages="$packages colima docker docker-compose kubectl_select kubectl-1.23" ;; "apt-get") packages="$packages universal-ctags build-essential" # Neovim python plugins packages="$packages python3-neovim" # Python packages packages="$packages python3 python3-ipython python3-pip python3-six tox python3-flake8 black python3-virtualenv python3-venv" ;; "apk") packages="$packages ctags py3-pynvim" ;; esac sudo_package "$packages" if [[ "$PACKAGE_MANAGER" == "port" ]]; then # Select defaults sudo port select --set python python27 sudo port select --set python2 python27 sudo port select --set python3 python310 sudo port select --set ipython py27-ipython sudo port select --set ipython2 py27-ipython sudo port select --set ipython3 py310-ipython sudo port select --set pip pip27 sudo port select --set pip2 pip27 sudo port select --set pip3 pip310 # Use py3 versions for utilities sudo port select --set tox tox310 sudo port select --set flake8 flake8-310 sudo port select --set black black310 sudo port select --set virtualenv virtualenv310 # Select kubectl sudo port select --set kubectl kubectl1.23 # Make uctags ctags sudo ln -s "$(which uctags)" /usr/local/bin/ctags fi pip3 install --user padio release-gitter