Skip to content

Instantly share code, notes, and snippets.

@pcgeek86
Last active April 7, 2021 02:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pcgeek86/c4c48ed7589b3f6ffa2a8e5c05f9c429 to your computer and use it in GitHub Desktop.
Save pcgeek86/c4c48ed7589b3f6ffa2a8e5c05f9c429 to your computer and use it in GitHub Desktop.
Setup Chromebook - Crostini
#!/bin/bash
# Author: Trevor Sullivan <trevor@trevorsullivan.net>
# Install pip3 package manager for Python 3.x
sudo apt install python3-pip --yes
# Upgrade pip3
sudo -H pip3 install --upgrade pip
# Install Ansible from PyPI
sudo -H pip3 install --upgrade ansible
# Add SSH public key
ansible localhost --module-name lineinfile --args "path=/home/trevor/.ssh/authorized_keys create=true state=present line='ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC5DSl8pDxICnqFBRsKKMLF1sA+9FgXDpSgZvBh3mNXmGRT3gI4SpHvFbZSmFDjJS6SbcjW6XDeFrBKuUlxP1u/MR4HaqK2EvK3sBEIVtg5GCwzCJdXoDMaT1bU1TSc03fJhK9SY63dRK/zHup1uOiBcPq6zJr28gJ34NL+TrxYEKUck7TWMzrY9TVjJLvD1V/hEPzZ2h8QTZ4jqnUk3TyzYPvFCIwIl+j3O95XXWZ7zMggBi+nkUVXFa7hTCZhRxdQdekmk9l/99G8H+F8PMaEflv0eH1Q5scyifSPTmpyHfqzqbJ430cka7IGOziPz1ixbDQYTIBL90qwqtl6D/IlwRK0WPJ52V9T2HKeJKSfjnfmVP8dRrbeSAYJUBS0wgNE8gsNGfeNjblbhKLYSmbGoFWXh2lg0LC7O9k91BnKvfeP+r8qiiwbdoEZ/OTG6iyFU4tyJRiVkyt7jMmURJZRuS1daKbtX0YYELj8919bAvbhznC419ogou85XEWZ4Jd/kJLpAdfuaujAZM3M893hUarto9wN1lwVHrCo26o5bxzg3jgmwt4fkT16/XSk2RIkleh40MB9uLDOcDtLKgCAe5a2nOd1kk5gKEyek1niR54yF/bKbCwdZz8zVeznv/w0yDSb9cBOYguf+YiwFL4Wt548onDAnoH7vTRYzK2pWQ== trevor@trevorsullivan.net'"
# Perform initial update / upgrade
sudo apt update
sudo apt upgrade --yes
# Install httpie
sudo apt install httpie --yes
# Install man
sudo apt install man-db --yes
# Install ping
sudo apt install iputils-ping --yes
# Install make (required to build balena-cli)
sudo apt install make --yes
# Install Deluge torrent client
sudo apt install deluged deluge-console --yes
# Install g++ (required to build balena-cli)
sudo apt install g++ --yes
# Install hyper.is
http --download https://releases.hyper.is/download/deb
sudo dpkg --install hyper_2.1.0_amd64.deb
# Install Hyper dependencies
sudo apt-get --fix-broken install --yes
# Install Node Version Manager (nvm)
# https://github.com/creationix/nvm
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
# Install Node.js LTS
nvm install --lts
# Install Balena CLI
npm install --global balena-cli
# Install zsh
npm install --global balena-cli
# Install Vim Vundle plug-in manager
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
cat > ~/.vimrc << EOF
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
" The following are examples of different formats supported.
" Keep Plugin commands between vundle#begin/end.
" plugin on GitHub repo
Plugin 'tpope/vim-fugitive'
" plugin from http://vim-scripts.org/vim/scripts.html
" Plugin 'L9'
" Git plugin not hosted on GitHub
Plugin 'git://git.wincent.com/command-t.git'
" git repos on your local machine (i.e. when working on your own plugin)
" Plugin 'file:///home/gmarik/path/to/plugin'
" The sparkup vim script is in a subdirectory of this repo called vim.
" Pass the path to set the runtimepath properly.
" Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
" Install L9 and avoid a Naming conflict if you've already installed a
" different version somewhere else.
" Plugin 'ascenator/L9', {'name': 'newL9'}
" Dictionary plugin
Plugin 'reedes/vim-lexical'
" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
" To ignore plugin indent changes, instead use:
"filetype plugin on
"
" Brief help
" :PluginList - lists configured plugins
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line
EOF
# Install Vim plugins
vim +PluginInstall +qall
@stretch07
Copy link

Thank you very much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment