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.

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