#! /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" # Set py3 version for macOS PY3V=310 # 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 python$PY3V py$PY3V-ipython py$PY3V-pip py$PY3V-six py$PY3V-tox py$PY3V-flake8 py$PY3V-virtualenv py$PY3V-black" # Macvim with ruby and python support # sudo_package 'macvim +ruby +python27' # Vim with ruby and python support packages="$packages vim +python$PY3V" # Newer version of git with completion packages="$packages git +bash_completion" # Neovim python plugins packages="$packages py$PY3V-neovim" # Docker stuff packages="$packages colima docker docker-compose kubectl_select kubectl-1.23" # Lua packages="$packages lua53 lua53-luarocks lua53-luafilesystem" ;; "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" # Lua packages="$packages luarocks" ;; "apk") packages="$packages ctags py3-pynvim" # Lua packages="$packages luarocks" ;; esac sudo_package "$packages" if [[ "$PACKAGE_MANAGER" == "port" ]]; then # Select defaults sudo port select --set python "python$PY3V" sudo port select --set python2 python27 sudo port select --set python3 "python$PY3V" sudo port select --set ipython "py$PY3V-ipython" sudo port select --set ipython2 py27-ipython sudo port select --set ipython3 "py$PY3V-ipython" sudo port select --set pip "pip$PY3V" sudo port select --set pip2 pip27 sudo port select --set pip3 "pip$PY3V" # Use py3 versions for utilities sudo port select --set tox "tox$PY3V" sudo port select --set flake8 "flake8-$PY3V" sudo port select --set black "black$PY3V" sudo port select --set virtualenv "virtualenv$PY3V" # Select first luarocks version sudo port select --set luarocks lua53-luarocks # 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