summaryrefslogblamecommitdiffstats
path: root/provision_openbsd.ksh
blob: 5d595cdd66fae8bc8afca3242361180a0dd8a4b8 (plain) (tree)
1
2
3
4
5
6
7
8
9

          
                               



                                                                                     
                                           
 

                                                                                       
          
 







                        
  



                                                          



      
 


                               

  
 
                                         





                                              
                  
            
 



































                                                                                                        
                            
            

  


                                       

                                                
                                                       
                                           
                                  

                                                         
          

 
#!/bin/ksh

# Send in id_rsa.pub and id_rsa
# send in /etc/doas.conf and install and chown root:wheel /etc/doas.conf
# pkg_add git in guest
# send in openbsddotfiles/profile_vm_provisioning (or similar) and rename to .profile
# source .profile in guest
# send in THIS FILE AND EXECUTE IT ON THERE

# download ISO from https://cdn.openbsd.org/pub/OpenBSD/$(uname -r)/amd64/install71.iso

INC_CODE=0


usage()
{
  print "Usage: $0 [-c]"
  exit 2
}

while getopts 'ch' opt
do
  case $opt in
    c) INC_CODE=1; print "Will fetch code from github." ;;
    h) usage ;; 
    ?) usage ;; 
  esac
done



command -v vim > /dev/null 2>&1
if [ "$?" != 0 ]; then
  doas pkg-add vim
fi


doas pkg_add fzf the_silver_searcher zip 

if [ $INC_CODE -eq 1 ]; then
  ssh-add -v
  print -n "Creating necessary directories..."
  mkdir -p ~/code/python
  mkdir -p ~/.config/
  mkdir -p ~/.fzf/
  print "ok"

  print -n "Fetching dotfiles..."
  if [ ! -d ~/openbsddotfiles ]; then
    git clone git@github.com:yulqen/openbsddotfiles.git ~/openbsddotfiles 2>&1 > /dev/null
    print "ok"
  else
    print "dotfiles directory already exists."
  fi

  print -n "Fetching dbasik..."
  if [ ! -d ~/code/python/dbasik ]; then
    git clone git@github.com:yulqen/dbasik.git ~/code/python/dbasik  2>&1 > /dev/null
    print "ok"
  else
    print "dbasik directory already exists."
  fi

  print -n "Fetching datamaps..."
  if [ ! -d ~/code/python/datamaps ]; then
    git clone git@github.com:yulqen/datamaps.git ~/code/python/datamaps 2>&1 > /dev/null
    print "ok"
  else
    print "datamaps directory already exists."
  fi

  print -n "Fetching bcompiler-engine..."
  if [ ! -d ~/code/python/bcompiler-engine ]; then
    git clone git@github.com:yulqen/bcompiler-engine.git ~/code/python/bcompiler-engine 2>&1 > /dev/null
    print "ok"
  else
    print "bcompiler-engine directory already exists."
  fi

  print -n "Creating code-related symlinks..."
  ln -sf openbsddotfiles/pdbrc .pdbrc
  ln -sf openbsddotfiles/pdbrc.py .pdbrc.py
  ln -sf openbsddotfiles/flake8 /home/lemon/.config/.flake8
  ln -sf $(which fzf) ~/.fzf
  print "ok"
fi


print -n "Creating regular symlinks..."
cd ~
ln -sf openbsddotfiles/kshrc_vm_provision .kshrc
ln -sf openbsddotfiles/ksh_aliases .ksh_aliases
ln -sf openbsddotfiles/profile_vm_provisioning .profile
ln -sf openbsddotfiles/tmux.conf .tmux.conf
ln -shf openbsddotfiles/vim ~/.vim
ln -sf openbsddotfiles/gitconfig .gitconfig
ln -sf openbsddotfiles/gitignore_global .gitignore_global
print "ok"