Add convenience scripts
This commit is contained in:
parent
5f8bb74c48
commit
7c7bf53a8c
18
bin/bin/add_swap.sh
Executable file
18
bin/bin/add_swap.sh
Executable file
@ -0,0 +1,18 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Author Ibrahim Mkusa
|
||||||
|
# About Creates or installs temporary swap space for machine
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
read -rp "Do you want to add or remove swapspace[add/remove]" response
|
||||||
|
if [[ "$response" == "add" ]]; then
|
||||||
|
sudo mkdir -p /var/cache/swap
|
||||||
|
sudo dd if=/dev/zero of=/var/cache/swap/swap0 bs=64M count=64
|
||||||
|
sudo chmod 0600 /var/cache/swap/swap0
|
||||||
|
sudo mkswap /var/cache/swap/swap0
|
||||||
|
sudo swapon /var/cache/swap/swap0
|
||||||
|
sudo swapon -s
|
||||||
|
elif [[ "$response" == "remove" ]]; then
|
||||||
|
sudo swapoff /var/cache/swap/swap0
|
||||||
|
sudo rm -rf /var/cache/swap/swap0
|
||||||
|
fi
|
44
bin/bin/air.sh
Executable file
44
bin/bin/air.sh
Executable file
@ -0,0 +1,44 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Author: Ibrahim Mkusa
|
||||||
|
# About: Higher interface to aircrack tools
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
usage () {
|
||||||
|
echo "(survey) air.sh [interface] [function]"
|
||||||
|
echo "(watch) air.sh [interface] [function] [bssid] [channel] [output_file]"
|
||||||
|
echo "(deauth) air.sh [interface] [function] [count] [bssid] [client]"
|
||||||
|
echo "(fakeauth) air.sh [interface] [function] [delay] [bmac] [hmac]"
|
||||||
|
echo "(arpreplay) air.sh [interface] [function] [bmac] [hmac]"
|
||||||
|
echo "(chopchop) air.sh [interface] [function] [bmac] [hmac] "
|
||||||
|
echo "(crack) air.sh [capfile] [wordlist]"
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ "$2" == "survey" ]];then
|
||||||
|
# Listen to everything
|
||||||
|
sudo airodump-ng "$1" --band abg
|
||||||
|
elif [[ "$2" == "watch" ]];then
|
||||||
|
# channel might be redundant if card locked to channel
|
||||||
|
echo "Watching $3 on channel $4 writing to $5"
|
||||||
|
sudo airodump-ng "$1" --bssid "$3" -c "$4" -w "$5"
|
||||||
|
elif [[ "$2" == "deauth" ]];then
|
||||||
|
if [[ $# -eq 4 ]];then
|
||||||
|
sudo aireplay-ng "$1" --deauth "$3" -a "$4"
|
||||||
|
else
|
||||||
|
sudo aireplay-ng "$1" --deauth "$3" -a "$4" -c "$5"
|
||||||
|
fi
|
||||||
|
elif [[ "$2" == "fakeauth" ]];then
|
||||||
|
echo "Don't proceed until authentication is successful"
|
||||||
|
sudo aireplay-ng "$1" -1 "$3" -b "$4" -h "$5"
|
||||||
|
elif [[ "$2" == "arpreplay" ]]; then
|
||||||
|
echo "Capturing arp replays and reinjecting"
|
||||||
|
sudo aireplay-ng "$1" -3 -b "$3" -h "$4"
|
||||||
|
elif [[ "$2" == "chopchop" ]];then
|
||||||
|
sudo aireplay-ng "$1" -4 -b "$3" -h"$4"
|
||||||
|
echo "Done .. use xor file to make arp replay"
|
||||||
|
echo "Follow directions here https://www.aircrack-ng.org/doku.php?id=korek_chopchop"
|
||||||
|
elif [[ "$2" == "crack" ]];then
|
||||||
|
sudo aircrack-ng "$1" -w "$2"
|
||||||
|
else
|
||||||
|
usage
|
||||||
|
fi
|
170
bin/bin/install_debian.sh
Executable file
170
bin/bin/install_debian.sh
Executable file
@ -0,0 +1,170 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Author: Ibrahim Mkusa
|
||||||
|
# About: uhhhhh installs a bunch of stuff i use(used) on a desktop
|
||||||
|
|
||||||
|
set -e
|
||||||
|
cd ~ && echo "Changed directory $(whoami)'s home"
|
||||||
|
|
||||||
|
# Asks whether user is on an ubuntu or fedora distribution
|
||||||
|
read -rp "Are you on [ubuntu/fedora]" distro
|
||||||
|
if [[ "$distro" == "ubuntu" ]]; then
|
||||||
|
manager="apt"
|
||||||
|
vim="vim-nox"
|
||||||
|
# install build essential libs
|
||||||
|
sudo apt install -y build-essential cmake python3-dev
|
||||||
|
elif [[ "$distro" == "fedora" ]]; then
|
||||||
|
manager="dnf"
|
||||||
|
vim="vim-enhanced"
|
||||||
|
sudo dnf install -y make automake gcc gcc-c++ kernel-devel \
|
||||||
|
cmake python3-devel
|
||||||
|
else
|
||||||
|
echo "No distro-specified. Exiting.. "
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# install core programs for use in both gnome or i3
|
||||||
|
sudo $manager install -y gparted git $vim keepassxc curl \
|
||||||
|
default-jdk default-jre maven perl \
|
||||||
|
emacs stterm vlc qbittorrent udiskie \
|
||||||
|
cmake xchm python3 \
|
||||||
|
doxygen gnome-tweaks ack zsh\
|
||||||
|
lxappearance i3-wm i3lock feh \
|
||||||
|
unclutter redshift-gtk shellcheck stow ranger \
|
||||||
|
scrot alsa-utils automake bash-completion bc bzip2 cppcheck pylint \
|
||||||
|
dconf-editor mplayer smplayer cmus weechat-curses \
|
||||||
|
mpd mpc ncmpcpp\
|
||||||
|
mutt notmuch-mutt arandr neomutt\
|
||||||
|
pavucontrol atool \
|
||||||
|
virt-manager lynx ufw x2goclient mosh \
|
||||||
|
htop conky-all compton \
|
||||||
|
silversearcher-ag golang \
|
||||||
|
zathura zathura-cb zathura-djvu zathura-ps \
|
||||||
|
ncdu \
|
||||||
|
caca-utils highlight w3m poppler-utils mediainfo \
|
||||||
|
xbacklight tmux \
|
||||||
|
volumeicon-alsa tree blueman \
|
||||||
|
direnv gimp clang clang-tidy \
|
||||||
|
glances uuid neofetch \
|
||||||
|
nodejs npm \
|
||||||
|
octave gedit-plugins calibre \
|
||||||
|
ruby-full ruby-dev zlib1g-dev multitail cowsay \
|
||||||
|
texstudio brightnessctl plocate postgresql texlive-latex-extra git-all\
|
||||||
|
asciinema texlive-fonts-extra latexmk\
|
||||||
|
texlive-lang-german znc \
|
||||||
|
ecryptfs-utils rbenv python3-pip fd-find \
|
||||||
|
vagrant rofi \
|
||||||
|
libcdk5-dev libcdk5nc6 libcdk5-doc ripgrep \
|
||||||
|
gnome-terminal polybar yacc \
|
||||||
|
powertop gnome-browser-connector
|
||||||
|
|
||||||
|
#haskell-platform
|
||||||
|
|
||||||
|
# snap stuff
|
||||||
|
# sudo snap install --beta nvim --classic
|
||||||
|
|
||||||
|
# better served by a case statement
|
||||||
|
if [[ "$distro" == "ubuntu" ]]; then
|
||||||
|
sudo $manager install -y python3-dev exuberant-ctags \
|
||||||
|
libclang-dev libboost-dev python3-venv libboost-all-dev \
|
||||||
|
libnode-dev texlive-fonts-recommended
|
||||||
|
elif [[ "$distro" == "fedora" ]]; then
|
||||||
|
sudo $manager install -y texlive-collection-fontsrecommended.noarch
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
system="$(sudo dmidecode --string chassis-type)"
|
||||||
|
case $system in
|
||||||
|
Notebook | Laptop)
|
||||||
|
sudo $manager install -y tlp tlp-rdw
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
pia_url="https://installers.privateinternetaccess.com/download/pia-linux-3.3.1-06924.run"
|
||||||
|
read -rp "Install private internet access[yes/no]" response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
wget --show-progress $pia_url
|
||||||
|
chmod u+x "pia-linux-3.3.1-06924.run"
|
||||||
|
./pia-linux-3.3.1-06924.run
|
||||||
|
rm -f pia-linux-3.3.1-06924.run
|
||||||
|
fi
|
||||||
|
|
||||||
|
read -rp "Install openssh server?[yes/no]" response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo $manager install -y openssh-server mosh ddclient
|
||||||
|
sudo ufw allow 22 # allow ssh port 22
|
||||||
|
sudo ufw allow 60000:61000/udp # allow mosh ports
|
||||||
|
sudo ufw allow 60000/udp # allow only 60000
|
||||||
|
|
||||||
|
# enable ufw
|
||||||
|
sudo systemctl start ufw && sudo systemctl enable ufw
|
||||||
|
sudo ufw enable
|
||||||
|
fi
|
||||||
|
|
||||||
|
read -p "Install Kernel dev tools?[yes/no]" response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo $manager install -y vim libncurses5-dev gcc make git exuberant-ctags \
|
||||||
|
libssl-dev bison flex libelf-dev bc dwarves zstd git-email
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
read -p "Install GTK+ tools?[yes/no]" response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo $manager install -y libgtk-4-1 libgtk-4-dev gtk-4-examples
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
cd ~
|
||||||
|
git clone https://github.com/jimeh/tmuxifier.git ~/.tmuxifier || true
|
||||||
|
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm || true
|
||||||
|
# prefix + capital I to install tmux plugins
|
||||||
|
|
||||||
|
# change shell
|
||||||
|
chsh -s /usr/bin/zsh
|
||||||
|
|
||||||
|
#sudo npm install -g typescript
|
||||||
|
#sudo snap install core; sudo snap refresh core
|
||||||
|
#read -p "Do you want to install certbot[yes/no]" response
|
||||||
|
#[[ "$response" == yes ]] && sudo snap install certbot
|
||||||
|
#sudo certbot renew --dry-run
|
||||||
|
# stow files
|
||||||
|
#rm -rf ~/.bashrc ~/.bash_profile
|
||||||
|
cd ~/dotfiles
|
||||||
|
stow bash bin docs git i3 ranger shellenv ssh tmux vim\
|
||||||
|
zsh || true
|
||||||
|
# install fonts
|
||||||
|
cd fonts/powerline
|
||||||
|
chmod u+x install.sh # if not already
|
||||||
|
./install.sh
|
||||||
|
cd ~
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#setup node version manager to track|install uptodate versions of node
|
||||||
|
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
|
||||||
|
|
||||||
|
# setup poetry python version manager
|
||||||
|
curl -sSL https://install.python-poetry.org | python3 -
|
||||||
|
|
||||||
|
# vim "best darn editor in the world""
|
||||||
|
vim +PlugInstall +qall
|
||||||
|
|
||||||
|
read -rp "Install steam[yes/no]" response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo $manager install -y steam
|
||||||
|
fi
|
||||||
|
|
||||||
|
# install pentest tools
|
||||||
|
read -rp "Install pentest tools[yes/no]" response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo $manager install -y nmap arp-scan steghide binwalk hcxtools \
|
||||||
|
hashcat
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#source "$HOME/.bashrc"
|
||||||
|
echo -n "Install anaconda version 2.7, and a 3.5 env"
|
||||||
|
echo -n "packages rasterio tqdm opencv keras tensorflow fiona"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
echo -n "gem install jekyll bundler"
|
11
bin/bin/install_rhel.sh
Executable file
11
bin/bin/install_rhel.sh
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
sudo dnf install -y syncthing git-core vim-enhanced keepassxc stow container-tools
|
||||||
|
|
||||||
|
sudo dnf group install "Virtualization Host"
|
||||||
|
|
||||||
|
# setup syncthing
|
||||||
|
sudo systemctl start syncthing@$USER
|
||||||
|
sudo systemctl enable syncthing@$USER
|
18
bin/bin/install_terraform.sh
Executable file
18
bin/bin/install_terraform.sh
Executable file
@ -0,0 +1,18 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# instructions taken from terraform.io
|
||||||
|
|
||||||
|
sudo apt-get update && sudo apt-get install -y gnupg software-properties-common
|
||||||
|
|
||||||
|
wget -O- https://apt.releases.hashicorp.com/gpg | \
|
||||||
|
gpg --dearmor | \
|
||||||
|
sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg > /dev/null
|
||||||
|
|
||||||
|
gpg --no-default-keyring \
|
||||||
|
--keyring /usr/share/keyrings/hashicorp-archive-keyring.gpg \
|
||||||
|
--fingerprint
|
||||||
|
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] \
|
||||||
|
https://apt.releases.hashicorp.com $(lsb_release -cs) main" | \
|
||||||
|
sudo tee /etc/apt/sources.list.d/hashicorp.list
|
||||||
|
sudo apt update
|
||||||
|
sudo apt-get install terraform
|
||||||
|
terraform -install-autocomplete
|
13
bin/bin/install_yaourt.sh
Executable file
13
bin/bin/install_yaourt.sh
Executable file
@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
set -e #subshell, so it doesn't mess with my current shell
|
||||||
|
|
||||||
|
cd ~
|
||||||
|
git clone https://aur.archlinux.org/package-query.git
|
||||||
|
cd package-query
|
||||||
|
makepkg -si
|
||||||
|
cd ..
|
||||||
|
git clone https://aur.archlinux.org/yaourt.git
|
||||||
|
cd yaourt
|
||||||
|
makepkg -si
|
||||||
|
cd ..
|
10
bin/bin/jumpbox.sh
Executable file
10
bin/bin/jumpbox.sh
Executable file
@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# add the following to a lingering users crontab
|
||||||
|
# Creates reverse ssh connection on public server
|
||||||
|
# Makes services running on server available locally (TheLounge)
|
||||||
|
# Kinda redundant nowadays due to tails, openvpn. You never know tho
|
||||||
|
# PS: the usernames and hosts don't actually exist :)
|
||||||
|
ssh -fN -R "3022:localhost:22" kijana@kwendasalama.org
|
||||||
|
ssh -fN -R "4022:localhost:22" mzee@kwendasalama.org
|
||||||
|
ssh -L "127.0.0.1:9000:127.0.0.1:9000" kijana@kwendasalama.org
|
||||||
|
echo "reverse ports created $(date)" >> error.log
|
33
bin/bin/monitor.sh
Executable file
33
bin/bin/monitor.sh
Executable file
@ -0,0 +1,33 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Author: Ibrahim Mkusa
|
||||||
|
# About: Places card into monitor mode and changes mac addresses
|
||||||
|
set -e
|
||||||
|
|
||||||
|
usage () {
|
||||||
|
echo "monitor.sh [card] [up/down] [channel]"
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ "$2" == "up" ]];then
|
||||||
|
# kill all interfering processes
|
||||||
|
sudo airmon-ng check kill
|
||||||
|
# start card in monitor mode optionally locked to channel
|
||||||
|
sudo airmon-ng start "$1" "$3"
|
||||||
|
# change mac address
|
||||||
|
sudo ifconfig "$1mon" down
|
||||||
|
sudo macchanger -A "$1mon"
|
||||||
|
sudo ifconfig "$1mon" up
|
||||||
|
iwconfig
|
||||||
|
sudo macchanger --show "$1mon"
|
||||||
|
|
||||||
|
elif [[ "$2" == "down" ]];then
|
||||||
|
sudo airmon-ng stop "$1"
|
||||||
|
sudo systemctl restart NetworkManager.service || true
|
||||||
|
sudo systemctl restart wpa_supplicant.service || true
|
||||||
|
nmcli networking on || true
|
||||||
|
iwconfig
|
||||||
|
else
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
204
bin/bin/setup_archlinux.sh
Executable file
204
bin/bin/setup_archlinux.sh
Executable file
@ -0,0 +1,204 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Author: Ibrahim Mkusa
|
||||||
|
# About: setup archlinux
|
||||||
|
set -e
|
||||||
|
|
||||||
|
chmod u+x ~/dotfiles/bin/bin/install_yaourt.sh
|
||||||
|
~/dotfiles/bin/bin/install_yaourt.sh
|
||||||
|
|
||||||
|
sudo yaourt -S --needed --noconfirm gvim emacs geany atom\
|
||||||
|
libreoffice-fresh\
|
||||||
|
the_silver_searcher ripgrep \
|
||||||
|
mpv mpd cmus ncmpcpp vlc pianobar rhythmbox audacity mplayer smplayer\
|
||||||
|
zsh fish\
|
||||||
|
ranger tree rsync lftp udiskie ncdu os-prober veracrypt\
|
||||||
|
zathura zathura-cb zathura-djvu zathura-pdf-poppler zathura-ps\
|
||||||
|
calibre vimpager freemind labyrinth xournal\
|
||||||
|
firefox youtube-dl wireshark-gtk wget curl nmap httpie thefuck\
|
||||||
|
elinks links lynx w3m\
|
||||||
|
gcc go go-tools lua ruby ruby-docs valgrind gdb make cmake\
|
||||||
|
htop glances polkit unclutter conky conky-manager cronie\
|
||||||
|
pavucontrol\
|
||||||
|
screenfetch dmidecode hwdetect hwinfo\
|
||||||
|
python python2 python2-requests python-pip python2-pip\
|
||||||
|
git tig\
|
||||||
|
weechat irssi hexchat bitlbee pidgin newsbeuter\
|
||||||
|
asciidoc markdown pandoc python-sphinx\
|
||||||
|
tmux
|
||||||
|
qbittorrent rtorrent transmission-gtk transmission-cli\
|
||||||
|
aria2\
|
||||||
|
zip unzip\
|
||||||
|
tlp tlp-rdw\
|
||||||
|
xchm \
|
||||||
|
keepassx2\
|
||||||
|
ack\
|
||||||
|
imagemagick gimp inkscape\
|
||||||
|
autocutsel\
|
||||||
|
ctags \
|
||||||
|
shellcheck\
|
||||||
|
rxvt-unicode\
|
||||||
|
mutt notmuch notmuch-vim notmuch-mutt thunderbird\
|
||||||
|
xclip\
|
||||||
|
hamster-time-tracker task units arduino\
|
||||||
|
scrot\
|
||||||
|
alsa-utils\
|
||||||
|
bash-completion\
|
||||||
|
racket\
|
||||||
|
xorg-server xorg-apps xorg-xinit xorg-xclock\
|
||||||
|
xorg-xbacklight arandr\
|
||||||
|
xf86-video-intel\
|
||||||
|
rofi feh sxiv dmenu compton dunst volumeicon ntfs-3g redshift xautolock\
|
||||||
|
xmonad xmonad-contrib xmobar xterm stalonetray xcompmgr\
|
||||||
|
recordmydesktop gtk-recordmydesktop\
|
||||||
|
docker\
|
||||||
|
networkmanager network-manager-applet networkmanager-openvpn\
|
||||||
|
gnome gnome-extra gthumb nautilus-open-terminal gedit-plugins\
|
||||||
|
gparted lxappearance numix-gtk-theme arc-gtk-theme arc-icon-theme\
|
||||||
|
ghc cabal-install haskell-haddock-api haskell-haddock-library happy alex\
|
||||||
|
alsa-utils pulseaudio xf86-input-synaptics\
|
||||||
|
texlive-core texlive-fontsextra texlive-latexextra texstudio steam\
|
||||||
|
adobe-source-code-pro-fonts adobe-source-sans-pro-fonts\
|
||||||
|
adobe-source-serif-pro-fonts\
|
||||||
|
virtualbox linux-lts-headers virtualbox-guest-iso\
|
||||||
|
lxde virt-manager direnv boost rust octave doxygen x2goclient
|
||||||
|
|
||||||
|
# setup ssh
|
||||||
|
echo -n "Install openssh server?[yes/no]"
|
||||||
|
read response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
yaourt -S openssh ddclient sshfs mosh fail2ban ufw x2goserver
|
||||||
|
# server setup
|
||||||
|
sudo systemctl enable sshd.service
|
||||||
|
sudo systemctl enable ddclient.service
|
||||||
|
# server stuff
|
||||||
|
sudo ufw allow 22 # allow ssh port 22
|
||||||
|
sudo ufw allow 60000:61000/udp # allow mosh ports
|
||||||
|
sudo ufw allow 60000/udp # allow only 60000
|
||||||
|
# start x2go
|
||||||
|
x2godbadmin --createdb
|
||||||
|
sudo systemctl enable x2goserver.service
|
||||||
|
fi
|
||||||
|
|
||||||
|
# virtualbox virtualbox-ext-pack
|
||||||
|
|
||||||
|
cd ~
|
||||||
|
git clone https://github.com/jimeh/tmuxifier.git ~/.tmuxifier || true
|
||||||
|
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm || true
|
||||||
|
|
||||||
|
# stow files
|
||||||
|
rm -rf ~/.bashrc
|
||||||
|
cd ~/dotfiles
|
||||||
|
stow bash bin docs git i3 newsbeuter ranger shellenv ssh tmux vim\
|
||||||
|
zsh
|
||||||
|
cd -
|
||||||
|
|
||||||
|
vim
|
||||||
|
|
||||||
|
|
||||||
|
echo -n "Install i3-gaps[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
yaourt -S i3-gaps polybar
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "Install xfce stuff[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
yaourt -S xfce4 xfce4-goodies
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "Install nodejs[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
yaourt -S nodejs npm
|
||||||
|
yaourt -S nvm
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "Install cuda[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
# /opt/cuda/{bin, samples, doc}
|
||||||
|
yaourt -S --noconfirm nvidia-lts nvidia-settings cuda cudnn freeglut
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "Install Google chrome[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
yaourt -S --noconfirm google-chrome
|
||||||
|
fi
|
||||||
|
|
||||||
|
yaourt -S --needed dropbox
|
||||||
|
|
||||||
|
## install the stable lts kernel
|
||||||
|
yaourt -S linux-lts
|
||||||
|
# remove the standard linux kernel
|
||||||
|
yaourt -R linux
|
||||||
|
# should be populated with the -lts kernel
|
||||||
|
ls -lsha /boot
|
||||||
|
# back up old grub.cfg
|
||||||
|
sudo os-prober
|
||||||
|
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak
|
||||||
|
# generate new grub.cfg
|
||||||
|
sudo grub-mkconfig -o /boot/grub/grub.cfg
|
||||||
|
|
||||||
|
sudo systemctl enable gdm.service
|
||||||
|
sudo systemctl enable cronie.service
|
||||||
|
chmod u+x ~/dotfiles/bin/bin/setup_networkmanager.sh
|
||||||
|
~/dotfiles/bin/bin/setup_networkmanager.sh
|
||||||
|
#./pia-nm.sh
|
||||||
|
|
||||||
|
echo -n "Setup tlp /etc/default/tlp"
|
||||||
|
echo -n "continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Change gterminal's [1]menubar [2]fonts [3]colorscheme [4]settings"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
source ~/.bashrc
|
||||||
|
echo -n "Setup gtk-chtheme, gnome-tweak-tool, lxapperance, and qtconfig"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Install shell extensions from box/internet/gnomeshellextensions list"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Setup ddclient only if on server"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Log into dropbox, firefox sync, chrome sync, reddit, steam"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Set desktop background"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Portforward ssh 22, and for mosh udp 60000-60001"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Install anaconda version 2.7, and a 3.5 env"
|
||||||
|
echo -n "packages rasterio tqdm opencv keras tensorflow fiona"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
chsh -s /usr/bin/zsh
|
||||||
|
# pip stuff
|
||||||
|
|
||||||
|
# after enabling multilib
|
||||||
|
sudo vim /etc/pacman.conf
|
||||||
|
yaourt -Syu
|
||||||
|
|
||||||
|
echo -n "Install steam[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
yaourt -S steam
|
||||||
|
fi
|
||||||
|
# Nvidia drivers are pain. I only buy amdgpus
|
||||||
|
#yaourt -Syu && yaourt -S steam lib32-nvidia-utils
|
||||||
|
#yaourt -S --needed wine winetricks mono lib32-alsa-lib lib32-alsa-plugins lib32-libxml2\
|
||||||
|
#lib32-mpg123 lib32-lcms2 lib32-giflib lib32-libpng lib32-gnutls\
|
||||||
|
#lib32-libpulse
|
138
bin/bin/setup_fedora_28.sh
Executable file
138
bin/bin/setup_fedora_28.sh
Executable file
@ -0,0 +1,138 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Author: Ibrahim Mkusa
|
||||||
|
# About: setup fedora 28
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
read -p 'Rpmfusion installed?[y/n]' response
|
||||||
|
if [[ "$response" == "n" ]]; then
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
sudo dnf upgrade -y
|
||||||
|
|
||||||
|
# install core programs
|
||||||
|
# python python3 zip unzip
|
||||||
|
sudo dnf install -y gcc gcc-c++ gparted git vim-enhanced keepassx \
|
||||||
|
haskell-platform java-1.8.0-openjdk-devel maven perl-core\
|
||||||
|
rust cargo rustfmt kernel-devel\
|
||||||
|
emacs rxvt-unicode-256color vlc qbittorrent udiskie \
|
||||||
|
cmake xchm python-devel python3-devel\
|
||||||
|
doxygen gnome-tweaks ack ctags zsh\
|
||||||
|
lxappearance i3 i3lock feh \
|
||||||
|
unclutter redshift-gtk polkit curl ShellCheck stow xclip ranger \
|
||||||
|
scrot alsa-utils automake bash-completion bc bzip2 cppcheck pylint\
|
||||||
|
dconf-editor mplayer smplayer cmus cava weechat \
|
||||||
|
mpd mpc ncmpcpp\
|
||||||
|
mutt notmuch-mutt arandr \
|
||||||
|
pavucontrol atool\
|
||||||
|
virt-manager lynx ufw ddclient x2goclient mosh\
|
||||||
|
htop conky compton \
|
||||||
|
golang the_silver_searcher\
|
||||||
|
zathura zathura-plugins-all \
|
||||||
|
ncdu gnome-shell-extension-pomodoro chrome-gnome-shell\
|
||||||
|
caca-utils highlight atool w3m poppler-utils mediainfo\
|
||||||
|
xbacklight tmux task\
|
||||||
|
volumeicon tree blueman\
|
||||||
|
direnv gimp clang clang-devel boost-devel\
|
||||||
|
glances uuid screenfetch \
|
||||||
|
nodejs npm nautilus-dropbox haskell-platform\
|
||||||
|
texstudio octave gedit-plugins calibre\
|
||||||
|
ruby ruby-devel multitail cowsay kodi fzf
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
echo -n "Install i3-gaps[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo dnf copr enable gregw/i3desktop -y
|
||||||
|
sudo dnf install -y i3-gaps rofi polybar
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
echo -n "Install tlp stuff[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo dnf install -y tlp tlp-rdw
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "Install pia[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
chmod u+x ~/dotfiles/bin/bin/pia-nm.sh
|
||||||
|
~/dotfiles/bin/bin/pia-nm.sh
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "Install openssh server?[yes/no]"
|
||||||
|
read response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo dnf install -y openssh-server mosh
|
||||||
|
sudo ufw allow 22 # allow ssh port 22
|
||||||
|
sudo ufw allow 60000:61000/udp # allow mosh ports
|
||||||
|
sudo ufw allow 60000/udp # allow only 60000
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
cd ~
|
||||||
|
git clone https://github.com/jimeh/tmuxifier.git ~/.tmuxifier || true
|
||||||
|
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm || true
|
||||||
|
|
||||||
|
# change shell
|
||||||
|
chsh -s /usr/bin/zsh
|
||||||
|
|
||||||
|
#sudo npm install -g typescript
|
||||||
|
|
||||||
|
# stow files
|
||||||
|
rm -rf ~/.bashrc ~/.bash_profile
|
||||||
|
cd ~/dotfiles
|
||||||
|
stow bash bin docs git i3 ranger shellenv ssh tmux vim\
|
||||||
|
zsh
|
||||||
|
cd -
|
||||||
|
|
||||||
|
vim +PlugInstall +qall
|
||||||
|
|
||||||
|
echo -n "Install steam[yes/no]?"
|
||||||
|
read -r response
|
||||||
|
if [[ "$response" == "yes" ]]; then
|
||||||
|
sudo dnf install -y steam
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "Setup tlp /etc/default/tlp"
|
||||||
|
echo -n "continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Change gterminal's [1]menubar [2]fonts [3]colorscheme [4]settings scrollbar"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
source ~/.bashrc
|
||||||
|
echo -n "Setup gtk-chtheme, gnome-tweak-tool, lxapperance, and qtconfig"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Install shell extensions caffeine, dashtodock, pomodoro "
|
||||||
|
echo -n "openweather, refreshwificonns, removDrivMenu, soundinoutchoo "
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Setup ddclient only if on server"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Log into dropbox, firefox sync, chrome sync, reddit, steam"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Set desktop background"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Portforward ssh 22, and for mosh udp 60000-60001"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
||||||
|
|
||||||
|
echo -n "Install anaconda version 2.7, and a 3.5 env"
|
||||||
|
echo -n "packages rasterio tqdm opencv keras tensorflow fiona"
|
||||||
|
echo -n "Continue?[yes]"
|
||||||
|
read response
|
@ -50,7 +50,6 @@ elif [[ wipe = "$1" ]]; then
|
|||||||
|
|
||||||
elif [[ "$1" = "help" ]]; then
|
elif [[ "$1" = "help" ]]; then
|
||||||
usage
|
usage
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user