blob: 473191868227f59d80a83193de1d700d93cb54ca (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
#!/bin/bash
set -e
INSTALL='sudo pacman -S --noconfirm'
UPDATE='sudo pacman -Syu --noconfirm'
install_packages() {
$UPDATE
$INSTALL mpv feh redshift linux-firmware-qlogic pavucontrol picom nitrogen thunar gvfs lxappearance alsa-utils neovim yubico-pam starship fish man-db qt5ct breeze breeze-gtk redshift htop lsb-release libreoffice-fresh ly ufw scrot keepassxc ranger unzip gcr webkit2gtk gd dosfstools xorg-xkill openresolv wireguard-tools libdvdcss libdvdread dunst cryptsetup wget mpc mpd ncmpcpp xclip xdotool
echo "=============================="
echo "Programs are done installing"
echo "============================="
}
setup_ufw() {
sudo systemctl enable ufw
sudo systemctl start ufw
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
echo "=================="
echo "UFW setup is done"
echo "=================="
}
setup_ly() {
sudo systemctl enable ly
echo "=================="
echo "Done Ly setup!"
echo "=================="
}
setup_home_directory() {
mkdir -p ~/Documents/Passwords
mkdir -p ~/Documents/Study
mkdir -p ~/Documents/Projects
mkdir -p ~/Documents/Notes
mkdir -p ~/Documents/Books
mkdir -p ~/Downloads/
mkdir -p ~/Backups/
mkdir -p ~/Programming/
mkdir -p ~/Videos/Personal
mkdir -p ~/Music/
mkdir -p ~/Games/
touch ~/.bookmarks
echo "=================="
echo "Directories setup"
echo "=================="
}
copy_config_files() {
sudo mkdir -p /usr/share/xsessions
sudo cp ~/dotfiles/files/dwm.desktop /usr/share/xsessions/
sudo cp -r ~/dotfiles/files/pacman.conf /etc/pacman.conf
sudo cp -r ~/dotfiles/files/config/* ~/.config/
sudo cp ~/dotfiles/files/Ly/config.ini /etc/ly/config.ini
cd ~/dotfiles/files/config/suckless/dwm/
sudo make clean install
cd ../slstatus
sudo make clean install
cd ../dmenu
sudo make clean install
cd ../surf
sudo make clean install
cd ../st
sudo make clean install
cd ../scroll
sudo make clean install
# Ranger config
ranger --copy-config=all
rm -rf ~/.config/ranger/*
sudo cp -r ~/dotfiles/files/ranger/* ~/.config/ranger/
echo "=================="
echo "Configs loaded"
echo "=================="
}
fonts(){
cp -rf ~/dotfiles/files/fonts ~/.fonts
}
bashrc_additions(){
echo 'eval "$(dircolors ~/.config/dircolours)"' >> ~/.bashrc
echo 'alias tree='pstree'' >> ~/.bashrc
echo 'alias P="cd ~/Programming"' >> ~/.bashrc
echo 'alias C="cd ~/.config"' >> ~/.bashrc
echo 'alias vim='nvim'' >> ~/.bashrc
echo "printf '\033[?1h\033= >/dev/tty'" >> ~/.bashrc
}
fish(){
echo -e '\n# Start fish shell \nif [[ $(ps --no-header --pid=$PPID --format=comm) != "fish" && -z ${BASH_EXECUTION_STRING} && ${SHLVL} == 1 ]]; then\n shopt -q login_shell && LOGIN_OPTION="--login" || LOGIN_OPTION=""\n exec fish $LOGIN_OPTION\nfi' >> ~/.bashrc
}
setup_music() {
echo -e "\n# MPD daemon start (if no other user instance exists)\n[ ! -s ~/.config/mpd/pid ] && mpd" >> .bash_profile
systemctl --user start mpd.service
}
Blocked_Websites() {
sudo chmod 666 /etc/hosts
sudo echo "#Facebook" > /etc/hosts
sudo echo "127.0.0.1 facebook.com login.facebook.com secure.facebook.com latest.facebook.com inyour.facebook.com beta.facebook.com static.facebook.com touch.facebook.com developers.facebook.com newsroom.fb.com pixel.facebook.com apps.facebook.com graph.facebook.com m.facebook.com upload.facebook.com" > /etc/hosts
sudo chmod 644 /etc/hosts
}
Security() {
sudo sed -i '6 i auth optional pam_faildelay.so delay=4000000' /etc/pam.d/system-login
}
main() {
install_packages
setup_ufw
setup_home_directory
setup_ly
copy_config_files
fonts
bashrc_additions
fish
setup_music
Security
echo "=================================="
echo "Done installing, you may reboot."
echo "Thank you for installing!"
echo "=================================="
}
#This runs the script and gives the current user perms
main
sudo chown -R $(whoami):$(whoami) /home/$(whoami)
sh ~/dotfiles/yay.sh
|