Compare commits

...

18 Commits

Author SHA1 Message Date
95244d8b01 Fixed an issue where escape key was not behaving properly 2026-02-05 05:24:40 +05:30
341b84b133 Updated settings related to hyprland config to match the rules that were updated in 0.53.0-2 2026-02-05 05:19:59 +05:30
508f764e0b Updated settings related to hyprland config 2026-01-26 10:12:53 +05:30
d26f5bd30f Updated hyprland config
Closes #30
2026-01-09 19:19:28 +05:30
72fd6cfbaf Updated a few typos related to dotfile generation 2025-12-13 22:31:00 +05:30
0df8176d26 Updated dotfile formatting 2025-12-12 20:53:09 +05:30
e2b4e2c550 Updated to a better way of exporting dotfiles 2025-12-12 20:44:46 +05:30
ffcae275d5 Updated Readme File 2025-12-07 17:21:31 +05:30
b9917f1752 Setting up pywal for qutebrowser
Closes #25
2025-11-30 14:56:09 +05:30
ac3b9bc24e Added keyd to software install list and setup basic config file
Closes #27
2025-11-29 07:04:54 +05:30
5dded6733a Updated hyperland and neovim config 2025-11-16 11:22:19 +05:30
1e73d0f308 Updated script so that the OS installs on one continious drive, instead of partitioning it. 2025-10-17 21:18:21 +05:30
2f218fd838 Fixed outdated hyprland variables
Closes #21
2025-10-17 21:10:35 +05:30
d962f35bd3 Added rdesktop to install list for accessing Windows machines remotely 2025-10-17 20:49:17 +05:30
4d765788ea Added Wake on lan configuration option 2025-08-21 21:52:02 +05:30
ba52b74a45 Setup basic firewall rules and OpenSSH 2025-08-18 07:49:59 +05:30
4540af37d5 Added more Keybinds and Window rules to hyprland.conf 2025-08-18 07:26:23 +05:30
29d3475351 Added a application to install list for brightness control 2025-08-17 11:30:56 +05:30
2 changed files with 206 additions and 164 deletions

View File

@@ -1,3 +1,3 @@
# archinstallscript
A simple Bash script to automate installation of Arch Linux
A simple Bash script that sets up a customized Arch Linux environment.

362
setup Executable file → Normal file
View File

@@ -19,9 +19,9 @@ cfdisk $drive
echo "Enter the partition for your root: "
read rootpartition
mkfs.ext4 $rootpartition
echo "Enter the partition for your home: "
read homepartition
mkfs.ext4 $homepartition
read -p "Did you also create efi partition? [y/n]" answer
if [[ $answer = y ]] ; then
echo "Enter EFI partition: "
@@ -30,7 +30,7 @@ if [[ $answer = y ]] ; then
fi
mount $rootpartition /mnt
mkdir /mnt/home
mount $homepartition /mnt/home
# Generating fstab file so the system can find our filesystem on reboot
mkdir /mnt/etc
@@ -136,17 +136,15 @@ exit
printf '\033c'
# Installing programs
sudo pacman -Syu --noconfirm hyprland polkit xdg-desktop-portal-hyprland xdg-desktop-portal-gtk hyprpaper hypridle hyprlock hyprpolkitagent waybar git sxiv bash-completion mpv ffmpeg fzf man flameshot neovim dunst curl htop lazygit pavucontrol plocate pipewire lib32-pipewire pipewire-audio pipewire-alsa wireplumber pipewire-pulse 7zip rsync openssh starship ttf-terminus-nerd reflector ranger qutebrowser xclip udiskie alacritty rofi bluez bluez-utils blueman otf-font-awesome perl-image-exiftool grim
sudo pacman -Syu --noconfirm hyprland polkit xdg-desktop-portal-hyprland xdg-desktop-portal-gtk hyprpaper hypridle hyprlock hyprpolkitagent waybar git sxiv bash-completion mpv ffmpeg fzf man flameshot neovim dunst curl htop lazygit pavucontrol plocate pipewire lib32-pipewire pipewire-audio pipewire-alsa wireplumber pipewire-pulse 7zip rsync openssh starship ttf-terminus-nerd reflector ranger qutebrowser xclip udiskie alacritty rofi bluez bluez-utils blueman otf-font-awesome perl-image-exiftool grim brightnessctl ufw rdesktop keyd
sudo systemctl enable bluetooth
sudo systemctl enable keyd
# Generating Dotfiles
sed -n '14,27p;28q' ~/arch_install3.sh | cut -c2- > ~/.bash_profile
sed -n '/^##BASHPROFILE#$/,/^#BASHPROFILEEND#$/p' ~/arch_install3.sh | cut -c2- > ~/.bash_profile
#######################
#####BASHPROFILE#######
#######################
##BASHPROFILE#
##
## ~/.bash_profile
##
@@ -154,19 +152,17 @@ sed -n '14,27p;28q' ~/arch_install3.sh | cut -c2- > ~/.bash_profile
#[[ -f ~/.bashrc ]] && . ~/.bashrc
#
#if [[ "$(tty)" = "/dev/tty1" ]]; then
# pgrep hyprland || hyprland
# pgrep hyprland || start-hyprland
#elif [[ "$(tty)" = "/dev/tty2" ]]; then
# pgrep dwm || startx
#fi
##BASHPROFILEEND#
sed -n '33,81p;82q' ~/arch_install3.sh | cut -c2- > ~/.bashrc
sed -n '/^##BASHRC#$/,/^##BASHRCEND#$/p' ~/arch_install3.sh | cut -c2- > ~/.bashrc
#######################
########BASHRC#########
#######################
##BASHRC#
##
## ~/.bashrc
##
@@ -212,36 +208,24 @@ sed -n '33,81p;82q' ~/arch_install3.sh | cut -c2- > ~/.bashrc
#fi
#
#eval "$(starship init bash)"
##BASHRCEND#
mkdir -p ~/.config/git
sed -n '89,93p;94q' ~/arch_install3.sh | cut -c2- > ~/.config/git/config
sed -n '/^##GIT#$/,/^##GITEND#$/p' ~/arch_install3.sh | cut -c2- > ~/.config/git/config
#######################
########GIT############
#######################
##GIT#
#[user]
# email = harsh13virdi@gmail.com
# name = Harsh Virdi
#[protocol "file"]
# allow = always
##GITEND#
mkdir -p ~/.config/hypr
sed -n '103,104p;105q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprpaper.conf
sed -n '/^###HYPRLANDCONF########$/,/^##HYPRLANDCONFEND######$/p' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.conf
#######################
###HYPRPAPER.CONF######
#######################
#
#
#preload =
#wallpaper =
#
#
sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.conf
#######################
###HYPRLAND.CONF#######
###HYPRLANDCONF########
#######################
## This is an example Hyprland config file.
@@ -262,8 +246,11 @@ sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.c
#
## See https://wiki.hyprland.org/Configuring/Monitors/
##monitor=DP-2, 2560x1080@99.94, 0x0, 1, bitdepth, 10, cm, hdr, sdrbrightness, 1.2, sdrsaturation, 0.98, vrr, 1
#
#monitor = , preferred, auto, 1
#monitor=DP-2, 2560x1080@99.94, 0x0, 1, vrr, 1
##monitor=HDMI-A-2, 1920x1080@120.00, 0x0, 1, bitdepth, 10, cm, hdr, sdrbrightness, 1.2, sdrsaturation, 0.98, vrr, 1
##monitor=HDMI-A-2, 1920x1080@120.00, 0x0, 1, vrr, 1
##monitor=DP-2, disable
#monitor=HDMI-A-2, disable
#
####################
#### MY PROGRAMS ###
@@ -294,13 +281,21 @@ sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.c
#### ENVIRONMENT VARIABLES ###
##############################
## See https://wiki.hyprland.org/Configuring/Environment-variables/
#
##Nvidia GPU
##env = LIBVA_DRIVER_NAME,nvidia
##env = __GLX_VENDOR_LIBRARY_NAME,nvidia
##Hyprland
#env = XDG_CURRENT_DESKTOP,Hyprland
#env = XDG_SESSION_TYPE,wayland
#env = XDG_SESSION_DESKTOP,Hyprland
#env = XCURSOR_SIZE,24
#env = HYPRCURSOR_SIZE,24
##QT
#env = QT_QPA_PLATFORMTHEME,qt5ct
####################
#### PERMISSIONS ###
####################
@@ -328,47 +323,6 @@ sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.c
#
#source = ~/.cache/wal/hyprland-looknfeel.conf
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
## https://wiki.hyprland.org/Configuring/Variables/#animations
#animations {
# enabled = yes, please :)
@@ -452,7 +406,7 @@ sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.c
#
## https://wiki.hyprland.org/Configuring/Variables/#gestures
#gestures {
# workspace_swipe = false
# workspace_swipe_touch = false
#}
#
## Example per-device config
@@ -540,6 +494,11 @@ sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.c
#
## Binds for ScriptExec
#bind = $mainMod, F, exec, alacritty -e fuzzyopen
#bind = $mainMod SHIFT, B, exec, blender
#bind = $mainMod SHIFT, S, exec, steam
#bind = $mainMod SHIFT, D, exec, discord
#bind = $mainMod SHIFT ALT_L, B, exec, qutebrowser
#bind = , Print, exec, flameshot screen -p ~/Pictures/
#
###############################
#### WINDOWS AND WORKSPACES ###
@@ -549,85 +508,98 @@ sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.c
## See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
#
## windowrules for pinning windows to specific workspaces
#windowrule = workspace 4 silent,title:Steam
#windowrule = workspace 8 silent,title:.*qutebrowser
#windowrule = workspace 6 silent,title:.*Discord
#windowrule = workspace 3 silent,title:.*Blender
#windowrule = workspace 4 silent, match:title .*Steam.*
#windowrule = workspace 8 silent,match:title .*qutebrowser
#windowrule = workspace 6 silent,match:title .*Discord
#windowrule = workspace 3 silent,match:title .*Blender
#windowrule = workspace 5 silent,match:title .*mpv
#
## Ignore maximize requests from apps. You'll probably like this.
#windowrule = suppressevent maximize, class:.*
#windowrule = suppress_event maximize, match:class .*
#
## Fix some dragging issues with XWayland
#windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
#windowrule = no_initial_focus on,match:class .*,match:title .*,match:xwayland 1,match:float 1,match:fullscreen 0,match:pin 0
#
#######################
##HYPRLANDCONFEND######
mkdir -p ~/.local/share/nvim/undodir
mkdir -p ~/.config/nvim
sed -n '438,489p;490q' ~/arch_install3.sh | cut -c2- > ~/.config/nvim/init.vim
sed -n '/^##INITVIM#$/,/^##INITVIMEND#$/p' ~/arch_install3.sh | cut -c2- > ~/.config/nvim/init.vim
#######################
######INIT.VIM#########
#######################
#syntax enable
#
#filetype plugin on
#set notermguicolors
#set nocompatible
#set noerrorbells
#set tabstop=4 softtabstop=4
#set shiftwidth=4
#set expandtab
#set smartindent
#set hidden
#set smartcase
#set noswapfile
#set nobackup
#set undodir=~/.local/share/nvim/undodir
#set undofile
#set incsearch
#set scrolloff=8
#set showmode
#set showcmd
#set nu rnu
#set spell spelllang=en_us
#
##INITVIM#
#hi Normal guibg=NONE ctermbg=NONE
#
#"Word wrap
#set textwidth=0
#set wrapmargin=0
#syntax enable
#filetype plugin on
#set nu rnu
#set cursorline
#set wrap
#set textwidth=0 wrapmargin=0
#set linebreak
#
#
#let mapleader = " "
#
#set scrolloff=8 sidescrolloff=8
#set tabstop=4 softtabstop=4 shiftwidth=4
#set expandtab smartindent autoindent
#set ignorecase smartcase incsearch
#set notermguicolors showmatch showmode showcmd
#set nobackup noswapfile undofile undodir=~/.local/share/nvim/undodir
#set nocompatible noerrorbells hidden
#set iskeyword+=-
#set path+=**
#set wildmenu
#
#" Clear status line when vimrc is reloaded.
#set clipboard+=unnamedplus
#set wildmenu spell spelllang=en_us
#set splitbelow splitright
#set showtabline=1 tabline=''
#let mapleader = " "
#nnoremap <leader>c :nohlsearch<CR>
#nnoremap Y y$
#nnoremap n nzzzv
#nnoremap N Nzzzv
#nnoremap <C-d> <C-d>zz
#nnoremap <C-u> <C-u>zz
#nnoremap <leader>bn :bnext<CR>
#nnoremap <leader>bp :bprevious<CR>
#nnoremap <C-h> <C-w>h
#nnoremap <C-j> <C-w>j
#nnoremap <C-k> <C-w>k
#nnoremap <C-l> <C-w>l
#nnoremap <leader>sv :vsplit<CR>
#nnoremap <leader>sh :split<CR>
#nnoremap <C-Up> :resize +2<CR>
#nnoremap <C-Down> :resize -2<CR>
#nnoremap <C-Left> :vertical resize -2<CR>
#nnoremap <C-Right> :vertical resize +2<CR>
#nnoremap <A-j> :m .+1<CR>==
#nnoremap <A-k> :m .-2<CR>==
#vnoremap <A-j> :m '>+1<CR>gv=gv
#vnoremap <A-k> :m '>-2<CR>gv=gv
#vnoremap < <gv
#vnoremap > >gv
#nnoremap <leader>e :Explore<CR>
#nnoremap <leader>ff :find
#nnoremap J mzJ`z
#nnoremap <leader>rc :e $MYVIMRC<CR>
#nnoremap <leader>rl :so $MYVIMRC<CR>
#nnoremap <leader>tn :tabnew<CR>
#nnoremap <leader>tx :tabclose<CR>
#nnoremap <leader>tm :tabmove<CR>
#nnoremap <leader>tr :tabmove +1<CR>
#nnoremap <leader>tl :tabmove -1<CR>
#set statusline=
#
#" Status line left side.
#set statusline+=\ %F\ %M\ %Y\ %R
#
#" Use a divider to separate the left side from the right side.
#set statusline+=%=
#
#" Status line right side.
#set statusline+=\ ascii:\ %b\ hex:\ 0x%B\ row:\ %l\ col:\ %c\ percent:\ %p%%
#
#" Show the status on the second to last line.
#set laststatus=2
#
##INITVIMEND#
mkdir -p ~/.config/waybar
sed -n '/#\/\/WAYBARCONFIG/,/#\/\/WAYBARCONFIGEND/p' ~/arch_install3.sh | cut -c2- > ~/.config/waybar/config.jsonc
#######################
########WAYBAR#########
#######################
mkdir -p ~/.config/waybar
sed -n '498,591p;592q' ~/arch_install3.sh | cut -c2- > ~/.config/waybar/config.jsonc
#//WAYBARCONFIG
#// -*- mode: jsonc -*-
#{
# // "layer": "top", // Waybar at top layer
@@ -722,6 +694,7 @@ sed -n '498,591p;592q' ~/arch_install3.sh | cut -c2- > ~/.config/waybar/config.j
# "on-click": "pavucontrol"
# },
#}
#//WAYBARCONFIGEND
#######################
@@ -729,9 +702,9 @@ sed -n '498,591p;592q' ~/arch_install3.sh | cut -c2- > ~/.config/waybar/config.j
#######################
mkdir -p ~/.config/wal/templates
sed -n '/#\/\/ROFICONFIG/,/#\/\/ROFICONFIGEND/p' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/dmenu.rasi
sed -n '602,646p;647q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/dmenu.rasi
#//ROFICONFIG
#/**
# * ROFI Color theme
# * User: Qball
@@ -777,9 +750,12 @@ sed -n '602,646p;647q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/d
# background-color: inherit;
# text-color: inherit;
#}}
#//ROFICONFIGEND
sed -n '650,693p;694q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/hyprland-looknfeel.conf
sed -n '/##HYPRLANDLOOKNFEEL/,/##HYPRLANDLOOKNFEELEND/p' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/hyprland-looknfeel.conf
##HYPRLANDLOOKNFEEL
#
#general {{
# gaps_in = 3
# gaps_out = 3
@@ -824,9 +800,11 @@ sed -n '650,693p;694q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/h
# vibrancy = 0.1696
# }}
#}}
##HYPRLANDLOOKNFEELEND
sed -n '697,880p;881q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/waybar-style.css
sed -n '/#\/\*WAYBARSTYLE\*\//,/#\/\*WAYBARSTYLEEND\*\//p' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/waybar-style.css
#/*WAYBARSTYLE*/
#* {{
# /* `otf-font-awesome` is required to be installed for icons */
# font-family: Terminess Nerd Font, FontAwesome, Roboto, Helvetica, Arial, sans-serif;
@@ -998,19 +976,7 @@ sed -n '697,880p;881q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/w
# background-color: #eb4d4b;
#}}
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#/*WAYBARSTYLEEND*/
#######################
#######SCRIPTS#########
@@ -1018,8 +984,9 @@ sed -n '697,880p;881q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/w
mkdir -p ~/.local/scripts
sed -n '890,910p;911q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/mountlocalvol
sed -n '/^#MOUNTLOCALVOLSCRIPT$/,/^#MOUNTLOCALVOLSCRIPTEND$/p' ~/arch_install3.sh | cut -c2- | sed '1d;$d' > ~/.local/scripts/mountlocalvol
#MOUNTLOCALVOLSCRIPT
##!/bin/sh
#
#lsblk
@@ -1041,9 +1008,11 @@ sed -n '890,910p;911q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/mountloc
#
#sudo systemctl daemon-reload
#sudo mount -a
#MOUNTLOCALVOLSCRIPTEND
sed -n '914,938p;939q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/mountsmbvol
sed -n '/^#MOUNTSMBVOLSCRIPT$/,/^#MOUNTSMBVOLSCRIPTEND$/p' ~/arch_install3.sh | cut -c2- | sed '1d;$d' > ~/.local/scripts/mountsmbvol
#MOUNTSMBVOLSCRIPT
##!/bin/sh
#
#sudo pacman -Syu cifs-utils
@@ -1069,9 +1038,11 @@ sed -n '914,938p;939q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/mountsmb
#
#sudo systemctl daemon-reload
#sudo mount -a
#MOUNTSMBVOLSCRIPTEND
sed -n '942,954p;955q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/disableipv6
sed -n '/^#DISABLEIPV6$/,/^#DISABLEIP6END$/p' ~/arch_install3.sh | cut -c2- | sed '1d;$d' > ~/.local/scripts/disableipv6
#DISABLEIPV6
##!/bin/sh
#
#ip addr show
@@ -1085,15 +1056,19 @@ sed -n '942,954p;955q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/disablei
#cat /etc/sysctl.d/40-ipv6.conf
#
#echo "Add -->sudo systemctl restart systemd-sysctl.service &<-- to your init script of liking to automatically unbind the ipv6 address assigned to your ethernet controller"
#DISABLEIP6END
sed -n '958,960p;961q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/fuzzyopen
sed -n '/^#FUZZYOPEN$/,/^#FUZZYOPENEND$/p' ~/arch_install3.sh | cut -c2- | sed '1d;$d' > ~/.local/scripts/fuzzyopen
#FUZZYOPEN
##! /bin/sh
#
#find ~/ | fzf | xargs -I{} xdg-open {}
#FUZZYOPENEND
sed -n '964,973p;974q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/randomwp
sed -n '/^#RANDOMWP$/,/^#RANDOMWPEND$/p' ~/arch_install3.sh | cut -c2- | sed '1d;$d' > ~/.local/scripts/randomwp
#RANDOMWP
##!/usr/bin/env bash
#
#WALLPAPER_DIR="$HOME/Pictures/Wallpapers/"
@@ -1104,20 +1079,28 @@ sed -n '964,973p;974q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/randomwp
#
## Apply the selected wallpaper
#hyprctl hyprpaper reload ,"$WALLPAPER"
#RANDOMWPEND
sed -n '977,987p;988q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/updatetheme
sed -n '/^#UPDATETHEME$/,/^#UPDATETHEMEEND$/p' ~/arch_install3.sh | cut -c2- | sed '1d;$d' > ~/.local/scripts/updatetheme
#UPDATETHEME
##!/bin/sh
#
#wallpaper=$(sxiv -frto ~/Pictures/Wallpapers/)
#wal --cols16 lighten -n --contrast 1.5 -i "$wallpaper"
#echo "preload = $wallpaper" > ~/.config/hypr/hyprpaper.conf
#echo "wallpaper = , $wallpaper" >> ~/.config/hypr/hyprpaper.conf
#echo "wallpaper {" > ~/.config/hypr/hyprpaper.conf
#echo " monitor =" >> ~/.config/hypr/hyprpaper.conf
#echo " path = $wallpaper" >> ~/.config/hypr/hyprpaper.conf
#echo " fit_mode = cover" >> ~/.config/hypr/hyprpaper.conf
#echo "}" >> ~/.config/hypr/hyprpaper.conf
#echo " " >> ~/.config/hypr/hyprpaper.conf
#echo "splash = 0" >> ~/.config/hypr/hyprpaper.conf
#hyprctl hyprpaper reload ,"$wallpaper"
#cp ~/.cache/wal/dmenu.rasi ~/.config/rofi/dmenu.rasi
#cp ~/.cache/wal/waybar-style.css ~/.config/waybar/style.css
#
#killall -SIGUSR2 waybar
#UPDATETHEMEEND
#######################
@@ -1160,6 +1143,19 @@ sed -i "s/tilde_in_titlebar false/tilde_in_titlebar true/" ~/.config/ranger/rc.c
sed -i "s/cd_tab_fuzzy false/cd_tab_fuzzy true/" ~/.config/ranger/rc.conf
sed -i "s/line_numbers false/line_numbers relative/" ~/.config/ranger/rc.conf
#######################
#########KEYD##########
#######################
echo '[id]' > /etc/keyd/default.conf
echo ' ' > /etc/keyd/default.conf
echo '*' > /etc/keyd/default.conf
echo ' ' > /etc/keyd/default.conf
echo '[main]' > /etc/keyd/default.conf
echo ' ' > /etc/keyd/default.conf
echo 'capslock = esc' > /etc/keyd/default.conf
echo ' ' > /etc/keyd/default.conf
echo 'esc = capslock' > /etc/keyd/default.conf
# Making all of the generated scripts executable
sudo chmod +x ~/.local/scripts/mountlocalvol
@@ -1169,6 +1165,35 @@ sudo chmod +x ~/.local/scripts/fuzzyopen
sudo chmod +x ~/.local/scripts/randomwp
sudo chmod +x ~/.local/scripts/updatetheme
# Configuring firewall and OpenSSH
sudo systemctl enable ufw
sudo ufw default deny
echo "Input the IP of your Network with proper CIDR notation:"
read cidr
sudo ufw allow from "$cidr"
sudo ufw limit ssh
sudo ufw enable
sudo systemctl enable sshd
# Configuring Wake on Lan
ip addr show
echo "Choose the device you want to use for wake on lan: "
read netdev
netdevMacadd=$(ip addr show "$netdev" | awk 'NR==2 {print$2}')
echo "[Match]" | sudo tee /etc/systemd/network/50-wired.link
echo "MACAddress=$netdevMacadd" | sudo tee -a /etc/systemd/network/50-wired.link
echo " " | sudo tee -a /etc/systemd/network/50-wired.link
echo "[Link]" | sudo tee -a /etc/systemd/network/50-wired.link
echo "NamePolicy=kernel database onboard slot path" | sudo tee -a /etc/systemd/network/50-wired.link
echo "MACAddressPolicy=persistent" | sudo tee -a /etc/systemd/network/50-wired.link
echo "WakeOnLan=magic" | sudo tee -a /etc/systemd/network/50-wired.link
cat /etc/systemd/network/50-wired.link
# Downloading wallpapers
cd $HOME
@@ -1193,10 +1218,27 @@ yay -Syu xpadneo-dkms python-pywal16
# Setting up Wallpaper for first use
wal --cols16 lighten -n --contrast 1.5 -i ~/Pictures/Wallpapers/b-257.jpg
echo "preload = ~/Pictures/Wallpapers/b-257.jpg" > ~/.config/hypr/hyprpaper.conf
echo "wallpaper = , ~/Pictures/Wallpapers/b-257.jpg" >> ~/.config/hypr/hyprpaper.conf
echo "wallpaper {" > ~/.config/hypr/hyprpaper.conf
echo " monitor =" >> ~/.config/hypr/hyprpaper.conf
echo " path = /home/$(whoami)/Pictures/Wallpapers/b-257.jpg" >> ~/.config/hypr/hyprpaper.conf
echo " fit_mode = cover" >> ~/.config/hypr/hyprpaper.conf
echo "}" >> ~/.config/hypr/hyprpaper.conf
echo " " >> ~/.config/hypr/hyprpaper.conf
echo "splash = 0" >> ~/.config/hypr/hyprpaper.conf
cp ~/.cache/wal/dmenu.rasi ~/.config/rofi/dmenu.rasi
cp ~/.cache/wal/waybar-style.css ~/.config/waybar/style.css
# Setting up pywal for qutebrowser
mkdir ~/.local/share/repositories -p
mkdir ~/.config/qutebrowser -p
cd ~/.local/share/repositories
git clone https://github.com/harsh13virdi/qutewal
cd qutewal
cp ./qutewal.py ~/.config/qutebrowser/
echo "config.load_autoconfig()" > ~/.config/qutebrowser/config.py
echo "config.source('qutewal.py')" >> ~/.config/qutebrowser/config.py
exit