myconfig

my config files
git clone https://a3nm.net/git/myconfig/
Log | Files | Refs | README

install.sh (2884B)


      1 #!/bin/bash
      2 
      3 # http://stackoverflow.com/a/4785518
      4 command -v curl >/dev/null 2>&1 || { echo "I require curl but it's not installed. Aborting." >&2; exit 1; }
      5 command -v git >/dev/null 2>&1 || { echo "I require git but it's not installed. Aborting." >&2; exit 1; }
      6 
      7 touch ~/-@ # http://unix.stackexchange.com/a/77868
      8 
      9 mkdir -p ~/.config
     10 
     11 mkdir -p ~/logs
     12 mkdir -p ~/logs/rofi
     13 mkdir -p ~/temp/{vim,mutt,lock}
     14 mkdir -p ~/temp/vim/{temp,backup}
     15 
     16 mkdir -p ~/useful/papers
     17 
     18 mkdir -p ~/apps
     19 cd ~/apps
     20 git clone 'https://github.com/clvv/fasd'
     21 ln -s ~/apps/fasd/fasd ~/bin
     22 git clone 'https://github.com/kragen/xcompose'
     23 ln -s ~/apps/xcompose/dotXCompose ~/.XCompose
     24 
     25 # not needed anymore I think, just use the stock one
     26 # git clone https://git.zx2c4.com/password-store
     27 # sudo make install
     28 
     29 # do this by hand, because depending on hg sucks
     30 # hg clone 'https://bitbucket.org/sterlingcamden/urlpicker/'
     31 # sudo mkdir -p '/usr/lib/urxvt/perl'
     32 # sudo cp urlpicker/url-picker /usr/lib/urxvt/perl
     33 # sudo chmod -R og+rx /usr/lib/urxvt
     34 
     35 cd ~/config
     36 mkdir -p ~/.elinks
     37 mkdir -p ~/Mail_inbox
     38 mkdir -p ~/Mail_inbox/draft_tmp/{cur,new,tmp}
     39 mkdir -p ~/.i3
     40 mkdir -p ~/.w3m
     41 ls ~/config/ |
     42   grep -vE "(README|TODO|elinks|mutt|vim|zsh|subversion|i3|weechat|lbdb|w3m|rofi)" |
     43   while read l; do ln -s ~/config/$l ~/.$l; done
     44 mkdir -p ~/.mutt
     45 for a in ~/config/mutt/*; do ln -s $a ~/.mutt/; done
     46 ln -s ~/config/elinks ~/.elinks/elinks.conf
     47 ln -s ~/config/w3m ~/.w3m/config
     48 
     49 mkdir -p ~/.config/rofi
     50 ln -s ~/config/rofi ~/.config/rofi/config.rasi
     51 
     52 for app in vim zsh
     53 do
     54   mkdir -p ~/.$app
     55   for a in ~/config/$app/*
     56   do
     57     ln -s $a ~/.$app/
     58   done
     59 done
     60 ln -s ~/.vim/vimrc ~/.vimrc
     61 ln -s ~/.zsh/zshrc ~/.zshrc
     62 touch ~/.zsh/ps1
     63 
     64 ln -s ~/config/gtk/gtkrc-2.0 ~/.gtkrc-2.0
     65 
     66 mkdir -p ~/.gnupg
     67 ln -s ~/config/gnupg/gpg-agent.conf ~/.gnupg/gpg-agent.conf
     68 ln -s ~/config/gnupg/gpg.conf ~/.gnupg/gpg.conf
     69 
     70 ln -s ~/config/i3/config ~/.i3/config
     71 ln -s ~/config/sway ~/.config/sway
     72 ln -s ~/config/mpv ~/.config/mpv
     73 ln -s ~/config/latexmk ~/.latexmkrc
     74 ln -s ~/config/abcde ~/.abcde.conf
     75 ln -s ~/config/reportbugrc ~/.reportbugrc
     76 ln -s ~/config/xpdf ~/.xpdfrc
     77 touch ~/.hushlogin
     78 ln -s ~/config/i3/status ~/.i3status.conf
     79 ln -s ~/config/lbdb ~/.lbdbrc
     80 mkdir -p ~/.vim/autoload ~/.vim/bundle
     81 curl -LSso ~/.vim/autoload/pathogen.vim 'https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim'
     82 cd ~/.vim/bundle
     83 git clone 'https://github.com/vim-scripts/vimwiki'
     84 git clone 'https://github.com/ervandew/supertab'
     85 touch ~/.vim/perso
     86 mkdir -p ~/scratch
     87 mkdir -p ~/.subversion
     88 for a in config servers
     89 do
     90 ln -s ~/config/subversion/$a ~/.subversion/$a
     91 done
     92 chmod -R 700 ~/.gnupg
     93 mkdir -p ~/.config
     94 
     95 mkdir -p ~/.local/share/applications/
     96 ln -s ~/config/mimeapps.list ~/.config
     97 ln -s ~/config/mimeapps.list ~/.local/share/applications/defaults.list
     98 ln -s ~/config/firefox/sandboxed_browser.desktop ~/.local/share/applications/
     99