Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
221 lines (200 sloc) 7.23 KB

iimacs (people macros)

Ensure github keys are working

Ensure you can login to github.com

configure git

generate a public_private keypair

ssh-key-gen

Dependencies

Ubuntu 19.10 (or similar)

emacs 26.X

sudo apt install -y emacs #>26.0

kubectl / google-cloud-sdk

https://kubernetes.io/docs/tasks/tools/install-kubectl/

ubuntu

echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" \
    | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg \
    | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
sudo apt update
sudo apt install -y kubectl google-cloud-sdk

osx

curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl"
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl

golang 1.13

https://golang.org/dl/

sudo add-apt-repository --yes ppa:longsleep/golang-backports
sudo apt update
sudo apt install -y golang golang-1.13

kind 0.5.1

sudo curl -Lo /usr/local/bin/kind \
     https://github.com/kubernetes-sigs/kind/releases/download/v0.5.1/kind-$(uname)-amd64
sudo chmod +x /usr/local/bin/kind

tmate 2.3.1

curl -L \
 https://github.com/tmate-io/tmate/releases/download/2.3.1/tmate-2.3.1-static-linux-amd64.tar.gz \
 | sudo tar xvfzC - /usr/local/bin --strip-components 1

ripgrep 0.10.0

sudo apt install -y ripgrep

xterm

sudo apt install -y xterm xtermcontrol

docker

sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt-get install \
     apt-transport-https \
     ca-certificates \
     curl \
     gnupg-agent \
     software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
     "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   disco \
   stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
#export DOCKER_VERSION=5:19.03.3~3-0~ubuntu-disco
#sudo apt-get install docker-ce=$DOCKER_VERISON docker-ce-cli=$DOCKER_VERSION containerd.io

OS Specific

OSX

Installing emacs via brew and putting it in your path

Source: [2019-11-16 Sat], macos - Update emacs that comes with OS X - Ask Different

Apple controls when / if they update emacs so most people just install a newer version of the tool and change their PATH variable so the new version is found first and runs by default.

If you like the sound of that, I recommend installing Homebrew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Then install emacs by using d12frosted brew tap:

brew tap d12frosted/emacs-plus
brew install emacs-plus
#brew install emacs --with-cocoa --with-gnutls --with-librsvg --with-imagemagick@6 --with-mailutils
#--HEAD

Add a link so that it’ll work as emacs in the Terminal:

ln -s /usr/local/Cellar/emacs/26.3/Emacs.app /Applications

This will install the ‘stable’ version. As of this writing, that’s 24.5:

» brew info emacs-plus
emacs-plus: stable 26.3 (bottled), devel 25.0-dev, HEAD
GNU Emacs text editor
https://www.gnu.org/software/emacs/

This is significantly newer (24.5.1) than the version that came with El Capitan (22.1.1):

» emacs --version
GNU Emacs 22.1.1

If we run this, the new version will be in the path first.

sudo ln -sf /usr/local/Cellar/emacs/26.3/bin/* /usr/local/bin/

Get your terminal + emacs working

clone down iimacs .emacs.d into your system

cd ~/ # do as your own user
# mv ~/.emacs.d ~/.emacs.d.before-ii
git clone --recursive https://github.com/iimacs/.emacs.d ~/.iimacs.d

populate the cache

curl https://storage.googleapis.com/apisnoop/dev/iitoolbox-spacemacs-0.6.tgz \
    | tar xzfC - ~/.iimacs.d

ensure when you login, emacs can find .iimacs.d and tooling

This is done for all users, but has no impact unless ~/.iimacs.d exists

cat <<EOF | sudo tee /etc/profile.d/99-iimacs.sh
# Ensures the iitooling is avaliable and loaded by emacs
export IIMACS=~/.iimacs.d
export PATH=${IIMACS}/bin:${PATH}
export EMACSLOADPATH=${IIMACS}:
EOF

ensure when you login, emacs can find .iimacs.d and tooling

This is done for all users, but has no impact unless ~/.iimacs.d exists

sudo adduser $USER docker

xterm font size and OS Code settings

cp .emacs.d/.xterm-xdefaults ~/.Xdefaults
# edit the above to your preferences ^^^
# In particular the DPI is set to 180 for hidpi, 90 is good for older screens
xrdb ~/.Xdefaults

tmate settings (including ESC timout)

cat <<EOF >> ~/.tmate.conf
set -s escape-time 0
set-option -g set-clipboard on
set-option -g mouse on
set-option -g history-limit 50000
EOF

docker group

We need to login/logout in order for this to work OR use newgrp

sudo adduser $USER docker

Possibly use ~/.emacs.d/.spacemacs-hh

You can have your own config, but I do a lot of work to keep mine happy. It’s not a bad starting spot.

cp ~/.emacs.d/.spacemacs-hh ~/.emacs.d/.spacemacs-$USER

Usage

iimacs ~/path/to/orgfile

run xterm

#!/bin/bash
#/usr/local/bin/apisnoop.sh
xterm -T $USER@sharing.io -e \
    ssh -tA $USER@sharing.io bash -l \
    '~/ii/org/start_osc52_session.sh'  '~/ii/apisnoop/' &
#/usr/local/bin/conformance-testing.sh
#!/bin/bash
xterm -T hh@sharing.io/conformance-testing -e \
      ssh -tA $USER@sharing.io bash -l \
      '~/ii/org/start_osc52_session.sh'  '~/ii/conformance-testing/' &
You can’t perform that action at this time.