From 934089354e6910722a6ab870b93dd80be9687970 Mon Sep 17 00:00:00 2001 From: junikimm717 Date: Wed, 13 Apr 2022 14:18:18 -0400 Subject: [PATCH] arch linux --- user_debian.sh => user_arch.sh | 86 ++++++++++++---------------------- 1 file changed, 30 insertions(+), 56 deletions(-) rename user_debian.sh => user_arch.sh (50%) diff --git a/user_debian.sh b/user_arch.sh similarity index 50% rename from user_debian.sh rename to user_arch.sh index 948da50..3afd7bc 100755 --- a/user_debian.sh +++ b/user_arch.sh @@ -5,6 +5,22 @@ DIR="$(realpath "$(dirname "$0")")" # script must start at home directory cd "$HOME" || exit 1; +bootstrap_paru () { + mkdir -p "$HOME/repos" + cd "$HOME/repos" || exit 1 + git clone https://aur.archlinux.org/paru-bin.git + cd paru-bin || exit 1 + makepkg -si || exit 2 + cd "$HOME" || exit 1 +} + +paru_exists() { + if ! command -V paru; then + echo "Paru doesn't exist. Installing it" + bootstrap_paru + fi +} + usertest() { if test "$(id -u)" -eq 0; then echo "You cannot run this script as root."; @@ -16,21 +32,13 @@ usertest() { exit 1 fi - sudo apt install -y make curl - echo "Updating APT and adding PPA's" - curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash - - sudo apt update -y || exit 1 - sudo apt upgrade -y || exit 1 + sudo pacman -Syu + sudo pacman --noconfirm -S base-devel } dev() { echo "Developer tools..." - sudo apt install -y libfuse2 fuse - # install neovim through appimage (no snaps) - sudo curl https://github.com/neovim/neovim/releases/download/v0.6.1/nvim.appimage -LJo "/usr/local/bin/nvim" - sudo chmod +x "/usr/local/bin/nvim" - # install nodejs (coc in neovim) - sudo apt-get update -y && sudo apt-get install -y nodejs + sudo pacman --noconfirm -S neovim nodejs } @@ -56,42 +64,20 @@ sysinfo() { } shell() { - sudo apt install -y zsh tmux - curl -sS https://starship.rs/install.sh | sh + sudo pacman --noconfirm -S zsh tmux starship } browsers() { - sudo apt remove -y firefox - sudo snap remove firefox - # install brave - sudo apt install apt-transport-https -y - sudo curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg - echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main"|sudo tee /etc/apt/sources.list.d/brave-browser-release.list - sudo apt update -y - sudo apt install brave-browser -y + sudo pacman --noconfirm -S firefox } torbrowser() { - sudo apt install -y torbrowser-launcher -} - -popshell() { - mkdir -p "$HOME/repos" - sudo apt install git node-typescript make -y - git clone https://github.com/pop-os/shell.git "$HOME/repos/shell" + sudo pacman --noconfirm -S torbrowser-launcher } meetings() { - mkdir -p "$HOME/repos" - - # install skype - curl https://go.skype.com/skypeforlinux-64.deb -LJo "$HOME/repos/skypeforlinux.deb" - sudo apt install "$HOME/repos/skypeforlinux.deb" -y - - # install zoom - curl https://zoom.us/client/latest/zoom_amd64.deb -LJo "$HOME/repos/zoomus.deb" - sudo apt install "$HOME/repos/zoomus.deb" -y - + paru_exists + paru --noconfirm -S skypeforlinux-stable-bin zoom # install mt sudo curl -LJ https://github.com/junikimm717/mt/releases/download/33627ab/mt -o /usr/local/bin/mt sudo chmod +x /usr/local/bin/mt @@ -123,31 +109,19 @@ dotfiles() { cp "$DIR"/dotfiles/tmux.conf "$HOME/.tmux.conf" } -competitiveprogramming() { - echo "CP Compilers..." - sudo apt install clang clang-tools-extra - cd "$HOME" || exit 1; - git clone https://git.junickim.me/junikimm717/linuxcp "$HOME/cp" -} - graphical() { - sudo apt install -y xorg xclip cwm nitrogen dmenu kitty polybar picom - sudo apt install -y fonts-dejavu fonts-jetbrains-mono - # copy over the dotfiles - + sudo pacman --noconfirm -S xorg xorg xorg-server xorg-xinit xorg-fonts-misc \ + xclip nitrogen dmenu ttf-jetbrains-mono ttf-dejavu \ + picom polybar xclip mkdir -p "$HOME/wallpaper" } sound() { - sudo apt install -y pulseaudio pipewire pavucontrol - sudo touch /etc/pipewire/media-session.d/with-pulseaudio - sudo cp /usr/share/doc/pipewire/examples/systemd/user/pipewire-pulse.* /etc/systemd/user/ - systemctl --user daemon-reload - systemctl --user --now disable pulseaudio.service pulseaudio.socket - systemctl --user --now enable pipewire pipewire-pulse + sudo pacman --noconfirm -S pipewire-pulse + systemctl --user --now enable pipewire-pulse } -(usertest && dev && sysinfo && shell && plugins && dotfiles && graphical && sound && browsers && meetings) || exit 1 +(usertest && bootstrap_paru && dev && sysinfo && shell && plugins && dotfiles && graphical && sound && browsers && meetings) || exit 1 cat <