#!/bin/sh # # Arch dots install # cd .. || exit CURDIR=$(pwd) echo "######################" echo "# dotfiles Installer #" echo "######################" echo "| Arch Linux |" echo "**********************" # Adding Root Files sudo cp -rf ROOT/doas/doas.conf /etc sudo cp -rf ROOT/issue/issue /etc sudo cp -rf ROOT/hosts/hosts /etc # Install Required Programs sudo pacman --needed -Syu stow opendoas pamixer zsh youtube-dl engrampa ncmpcpp xwallpaper newsboat vifm zathura maim texlive-most ffmpeg pcmanfm lxappearance ntp redshift numlockx htop xclip imagemagick transmission-gtk neovim mpv mpd mpc sxiv zathura-pdf-mupdf zathura-ps pandoc automake lzop zip curl make bc android-tools gimp kdenlive frei0r-plugins inkscape unzip unarchiver arandr shellcheck arc-gtk-theme ctags unoconv nodejs yarn p7zip gzip tar xz papirus-icon-theme valgrind doxygen gdb light pulsemixer pavucontrol xorg-server xorg-xinit go qt5ct ncurses gtk3 gst-plugins-base-libs hplip simple-scan system-config-printer gst-plugins-good grc gst-libav clang breeze net-tools ffmpegthumbnailer webkit2gtk torbrowser-launcher neofetch cmatrix asciiquarium keepassxc npm unclutter python python-pip pass # Computer Science Programs # bluej netbeans jdk11-openjdk java11-openjfx intellij-idea-community-edition valgrind doxygen gdb mysql-workbench octave android-studio android-sdk pycharm-community-edition unity ssms nodejs adobexd # Building Folder Structure mkdir -p ~/Documents/PDF ~/Documents/Markdown ~/Documents/Disks ~/Documents/Archives ~/Documents/VMs ~/Downloads ~/Games/WINEPREFIX ~/Pictures/Screenshots ~/Pictures/GIMP ~/Videos/Recordings ~/Code ~/.config/git ~/.config/wallpaper ~/Mount ~/.local/share/gnupg ~/.local/share/pass doas sh -c 'echo "export _JAVA_AWT_WM_NONREPARENTING=1" >>/etc/profile.d/jre.sh' chsh -s /bin/zsh # Deploy Dots stow --target="$HOME" fonts gtk misc mpd ncmpcpp newsboat neovim qt qutebrowser shell scripts suckless sxiv vifm X11 zathura zsh touch ~/.config/X11/Xauthority ~/.xprofile ~/.config/mpd/database ~/.config/mpd/log ~/.config/mpd/pid ~/.config/mpd/state ~/.config/mpd/sticker.sql cd ~/.local/src/suck && sh sucklessUpdate && cd "$CURDIR" || exit # Setting up Neovim ## Linking Neovim to Vim ln -s /usr/bin/nvim ~/.local/bin/vim ## Installing Neovim Plugin Manager (Vim Plug) curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim ## Installing Modules nvim -c PlugInstall cd ~/.config/nvim/plugged/vim-hexokinase && make hexokinase npm -g install clangd typescript typescript-language-server --prefix ~/.local/share/npm pip install --user 'python-lsp-server[all]' pywal ueberzug # Setup Git account printf "Do yo want to setup Git account? [Y/n]" && read -r GIT if [ "$GIT" != "N" ] && [ "$GIT" != "n" ]; then printf "Username: " && read -r USER printf "Email: " && read -r EMAIL git config --global user.name "$USER" git config --global user.email "$EMAIL" git config pull.rebase false mv ~/.gitconfig ~/.config/git/config git config --global pull.rebase false fi # Wallpapers cd ~/Pictures && git clone https://gitlab.com/rafa_99/wallpapers