Another copy of my dotfiles. Because I don't completely trust GitHub.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

202 lines
5.4 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. #!/bin/bash
  2. username=$(whoami)
  3. # Install packages
  4. echo "Running update"
  5. sudo pacman --noconfirm -Syu
  6. sudo pacman --noconfirm --needed -S $(cat ~/.dotfiles/arch-setup/nonAUR.txt)
  7. yay -S --noconfirm --needed $(cat ~/.dotfiles/arch-setup/AUR.txt)
  8. # Initial cleanup
  9. echo "Backing up your previous dotfiles to ~/.dotfiles_backup"
  10. mkdir -p ~/.local/share
  11. mkdir -p ~/.dotfiles_backup
  12. mkdir -p ~/.config
  13. mkdir -p ~/.dotfiles_backup/.config
  14. rsync --remove-source-files -avzh --ignore-errors \
  15. ~/.completions \
  16. ~/.aliases \
  17. ~/.cmds \
  18. ~/.zshrc \
  19. ~/.Xresources \
  20. ~/.xmodmap \
  21. ~/.xinitrc \
  22. ~/.tmux.conf \
  23. ~/.surf \
  24. ~/.scripts \
  25. ~/.keyboard \
  26. ~/.fzf.zsh \
  27. ~/.themes \
  28. ~/.vim \
  29. ~/.vimrc \
  30. ~/.dotfiles_backup 2> /dev/null > /dev/null
  31. rsync --remove-source-files -avzh --ignore-errors \
  32. ~/.config/htop \
  33. ~/.config/.profile \
  34. ~/.config/.nvim \
  35. ~/.config/systemd \
  36. ~/.config/termite \
  37. ~/.config/zathura \
  38. ~/.config/dunst \
  39. ~/.config/gtk-4.0 \
  40. ~/.config/gtk-3.0 \
  41. ~/.config/gtk-2.0 \
  42. ~/.config/antibody \
  43. ~/.config/suckless \
  44. ~/.config/neofetch \
  45. ~/.dotfiles_backup/.config 2> /dev/null > /dev/null
  46. rm -rf \
  47. ~/.completions \
  48. ~/.aliases \
  49. ~/.cmds \
  50. ~/.zshrc \
  51. ~/.Xresources \
  52. ~/.xmodmap \
  53. ~/.xinitrc \
  54. ~/.tmux.conf \
  55. ~/.surf \
  56. ~/.scripts \
  57. ~/.keyboard \
  58. ~/.fzf.zsh \
  59. ~/.themes \
  60. ~/.vim \
  61. ~/.vimrc \
  62. ~/.config/htop \
  63. ~/.config/.profile \
  64. ~/.config/systemd \
  65. ~/.config/termite \
  66. ~/.config/zathura \
  67. ~/.config/neofetch \
  68. ~/.config/dunst \
  69. ~/.config/gtk-4.0 \
  70. ~/.config/gtk-3.0 \
  71. ~/.config/gtk-2.0 \
  72. ~/.config/antibody \
  73. ~/.config/suckless
  74. # Vim
  75. ln -s ~/.dotfiles/vim/vimrc ~/.vimrc
  76. ln -s ~/.dotfiles/vim/vim ~/.vim
  77. ln -s ~/.dotfiles/vim/nvim ~/.config/nvim
  78. # GTK
  79. ln -s ~/.dotfiles/gtk/themes ~/.themes
  80. ln -s ~/.dotfiles/gtk/gtk-2.0 ~/.config/gtk-2.0
  81. ln -s ~/.dotfiles/gtk/gtk-3.0 ~/.config/gtk-3.0
  82. ln -s ~/.dotfiles/gtk/gtk-4.0 ~/.config/gtk-4.0
  83. ~/.dotfiles/gtk/Tela-icon-theme/install.sh
  84. # Miscellaneous
  85. ln -s ~/.dotfiles/misc/dunst ~/.config/dunst
  86. ln -s ~/.dotfiles/misc/zathura ~/.config/zathura
  87. ln -s ~/.dotfiles/misc/termite/ ~/.config/termite
  88. ln -s ~/.dotfiles/misc/systemd ~/.config/systemd
  89. ln -s ~/.dotfiles/misc/ranger ~/.config/ranger
  90. ln -s ~/.dotfiles/misc/neofetch ~/.config/neofetch
  91. ln -s ~/.dotfiles/misc/profile ~/.config/.profile
  92. ln -s ~/.dotfiles/misc/htop ~/.config/htop
  93. ln -s ~/.dotfiles/misc/.fzf.zsh ~/.fzf.zsh
  94. ln -s ~/.dotfiles/misc/keyboard ~/.keyboard
  95. ln -s ~/.dotfiles/misc/mimeapps.list ~/.config/mimeapps.list
  96. ln -s ~/.dotfiles/misc/wakatime.cfg ~/.wakatime.cfg
  97. ln -s ~/.dotfiles/misc/BetterDiscord ~/.config/BetterDiscord
  98. ln -s ~/.dotfiles/misc/nextcloud ~/.nextcloud
  99. mkdir -p ~/.config/spotifyd
  100. ln -s ~/.dotfiles/misc/spotifyd.conf ~/.config/spotifyd/spotifyd.conf
  101. ln -s ~/.dotfiles/fonts ~/.fonts
  102. fc-cache
  103. # Applications
  104. for d in ~/.dotfiles/applications/* ; do
  105. ln -s $d ~/.local/share/applications/
  106. done
  107. # Scripts
  108. ln -s ~/.dotfiles/scripts ~/.scripts
  109. # Suckless
  110. ln -s ~/.dotfiles/suckless ~/.config/suckless
  111. ln -s ~/.dotfiles/suckless/dot_surf ~/.surf
  112. yay --noconfirm -S xsel clipnotify
  113. yay --noconfirm -S ttf-symbola
  114. (cd ~/.dotfiles/suckless; ~/.dotfiles/suckless/build.sh)
  115. # Tmux
  116. ln -s ~/.dotfiles/tmux/tmux.conf ~/.tmux.conf
  117. # Xorg
  118. ln -s ~/.dotfiles/xorg/xinitrc ~/.xinitrc
  119. ln -s ~/.dotfiles/xorg/xmodmap ~/.xmodmap
  120. ln -s ~/.dotfiles/xorg/Xresources ~/.Xresources
  121. # Zsh
  122. ln -s ~/.dotfiles/zsh/antibody ~/.config/antibody
  123. ln -s ~/.dotfiles/zsh/zshrc ~/.zshrc
  124. ln -s ~/.dotfiles/zsh/secret ~/.zsh_secret
  125. ln -s ~/.dotfiles/zsh/cmds ~/.cmds
  126. ln -s ~/.dotfiles/zsh/aliases ~/.aliases
  127. ln -s ~/.dotfiles/zsh/completions ~/.completions
  128. ln -s ~/.dotfiles/zsh/profile ~/.profile
  129. # Mail
  130. ln -s ~/.dotfiles/mail/mutt ~/.config/mutt
  131. ln -s ~/.dotfiles/mail/msmtp ~/.config/msmtp
  132. ln -s ~/.dotfiles/mail/mbsyncrc ~/.mbsyncrc
  133. if [ ! -f "/var/spool/cron$username" ]; then
  134. sudo touch "/var/spool/cron/$username"
  135. sudo chown yigit:yigit "/var/spool/cron/$username"
  136. sudo chmod 755 "/var/spool/cron/$username"
  137. fi
  138. echo "*/8 * * * * /home/$username/.scripts/mailsync" >> /var/spool/cron/yigit
  139. echo "*/15 * * * * /home/$username/.scripts/nextcloud-sync" >> /var/spool/cron/yigit
  140. # Root
  141. sudo cp ~/.dotfiles/root/dwm.desktop /usr/share/xsessions
  142. sudo cp ~/.dotfiles/root/nancyj.flf /usr/share/figlet/fonts
  143. # Config
  144. cp ~/.dotfiles/config.env.def ~/.config.env
  145. # Firefox
  146. firefox-developer-edition -CreateProfile "yeet"
  147. cp -r ~/.dotfiles/firefox/flyingfox/* ~/.mozilla/firefox/*.yeet
  148. cp -r ~/.dotfiles/firefox/extensions ~/.mozilla/firefox/*.yeet
  149. cp ~/.dotfiles/firefox/extensions.json ~/.mozilla/firefox/*.yeet
  150. ~/.dotfiles/arch-setup/fetch_keys.sh # Fetch keys (For personal use, this is not for you)
  151. # Install vim and tmux plugins
  152. mkdir -p ~/.tmux/plugins
  153. vim -c ':PlugInstall'
  154. betterlockscreen -u ~/.dotfiles/backgrounds/lock.jpg
  155. # Install mconnect
  156. git clone https://github.com/theFr1nge/mconnect.git /tmp/mconnect
  157. prev=$(pwd)
  158. cd /tmp/mconnect
  159. mkdir -p build
  160. cd build
  161. meson ..
  162. ninja
  163. sudo ninja install
  164. cd $prev
  165. mkdir -p ~/Downloads/mconnect
  166. sudo git clone https://github.com/theFr1nge/bitwarden-dmenu.git /usr/share/bwdmenu
  167. cd /usr/share/bwdmenu
  168. sudo npm install
  169. sudo npm i -g
  170. cd $prev
  171. # Install simcrop
  172. sudo pacman --needed --noconfirm -S opencv
  173. git clone https://github.com/theFr1nge/simcrop.git /tmp/simcrop
  174. cd /tmp/simcrop
  175. sudo make install
  176. cd $prev
  177. if [ ! "$username" = "yigit" ]; then
  178. find /home/$username/.dotfiles -type f | xargs sed -i "s/\/home\/yigit/\/home\/$username/g"
  179. fi