#!/bin/sh # == MY ARCH SETUP INSTALLER == # #part1 # Restoring Terminal Defaults printf '\033c' echo "Welcome to Arch Linux installer script!" # Increasing pacman's download streams to 5 sed -i "s/^#ParallelDownloads = 5$/ParallelDownloads = 5/" /etc/pacman.conf # Printing out conneted drives and asking which drive to partition and how, then mounting them. lsblk echo "Enter the drive you want to install the OS on: " read drive 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: " read efipartition mkfs.fat -F32 $efipartition 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 genfstab -U -p /mnt >> /mnt/etc/fstab # Downloading the core system utilities pacstrap -i /mnt base # Generating the second part of the script from the current one and then chrooting into our live installion and executing the new script. sed '1,/^#part2$/d' `basename $0` > /mnt/arch_install2.sh chmod +x /mnt/arch_install2.sh arch-chroot /mnt ./arch_install2.sh exit #part2 # Restoring Terminal Defaults printf '\033c' # Downloading the kernel base developement and network packages and starting thier services pacman -S --noconfirm sed linux linux-headers linux-firmware base-devel networkmanager wpa_supplicant wireless_tools netctl dialog systemctl enable NetworkManager # Increasing pacman's download streams to 5 sed -i "s/^#ParallelDownloads = 5$/ParallelDownloads = 15/" /etc/pacman.conf # Enabling multilib support echo "[multilib]" >> /etc/pacman.conf echo "Include = /etc/pacman.d/mirrorlist" >> /etc/pacman.conf # Setting up locales keymap and language settings ln -sf /usr/share/zoneinfo/Asia/Kolkata /etc/localtime echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen locale-gen echo "LANG=en_US.UTF-8" > /etc/locale.conf echo "KEYMAP=us" > /etc/vconsole.conf # Setting up system name hosts bootloader and the users echo "Hostname: " read hostname echo $hostname > /etc/hostname echo "127.0.0.1 localhost" >> /etc/hosts echo "127.0.1.1 $hostname.localdomain $hostname" >> /etc/hosts mkinitcpio -P passwd pacman --noconfirm -Sy grub efibootmgr os-prober dosfstools mtools echo "Enter EFI partition: " read efipartition mkdir /boot/EFI mount $efipartition /boot/EFI grub-install --target=x86_64-efi --bootloader-id=grub_uefi --recheck cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo grub-mkconfig -o /boot/grub/grub.cfg echo "Enter Swap Size: " read swapsize mkswap -U clear --size $swapsize --file /swapfile swapon /swapfile echo "/swapfile none swap defaults 0 0" >> /etc/fstab echo "%wheel ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers echo "Enter Username: " read username useradd -m -g users -G wheel $username passwd $username ai3_path=/home/$username/arch_install3.sh sed '1,/^#part3$/d' arch_install2.sh > $ai3_path chown $username:users $ai3_path chmod +x $ai3_path # Installing various CPU and GPU drivers read -p "Are you in a virtual machince? [y/n]" answer if [[ $answer = y ]] ; then pacman -Sy virtualbox-guest-utils xf86-video-vmware exit fi read -p "Do you have AMD cpu or Intel CPU? [amd/intel]" answer if [[ $answer = amd ]] ; then pacman --noconfirm -Sy amd-ucode else pacman --noconfirm -Sy intel-ucode fi read -p "Do you have AMD gpu or Nvidia gpu? [amd/nvidia/intel]" answer if [[ $answer = nvidia ]] ; then pacman --noconfirm -Sy nvidia lib32-nvidia-utils nvidia-utils elif [[ $answer = amd ]] ; then pacman --noconfirm -Sy mesa lib32-mesa vulkan-radeon lib32-vulkan-radeon xf86-video-amdgpu else pacman --noconfirm -Sy mesa lib32-mesa vulkan-intel lib32-vulkan-intel xorg-server fi echo "Pre-Installation Finish Reboot now" exit #part3 # Setting up terminal defaults 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 systemctl enable bluetooth # Generating Dotfiles sed -n '14,27p;28q' ~/arch_install3.sh | cut -c2- > ~/.bash_profile ####################### #####BASHPROFILE####### ####################### ## ## ~/.bash_profile ## # #[[ -f ~/.bashrc ]] && . ~/.bashrc # #if [[ "$(tty)" = "/dev/tty1" ]]; then # pgrep hyprland || hyprland #elif [[ "$(tty)" = "/dev/tty2" ]]; then # pgrep dwm || startx #fi sed -n '33,81p;82q' ~/arch_install3.sh | cut -c2- > ~/.bashrc ####################### ########BASHRC######### ####################### ## ## ~/.bashrc ## # ## If not running interactively, don't do anything #[[ $- != *i* ]] && return #PS1='[\u@\h \W]\$ ' # ##Quality of life Changes #shopt -s autocd #set -o vi # # ##XDG #export XDG_DATA_HOME=$HOME/.local/share #export XDG_CONFIG_HOME=$HOME/.config #export XDG_STATE_HOME=$HOME/.local/state #export XDG_CACHE_HOME=$HOME/.cache # # ##ENVAR #export GNUPGHOME="$XDG_DATA_HOME"/gnupg #export LESSHISTFILE="$XDG_STATE_HOME"/lesshistory #export XAUTHORITY="$XDG_RUNTIME_DIR"/Xauthority #export CUDA_CACHE_PATH="$XDG_CACHE_HOME"/nv #export WINEPREFIX="$XDG_DATA_HOME"/wineprefixes/default #export XINITRC="$XDG_CONFIG_HOME"/X11/xinitrc #export PATH=~/.local/bin:~/.local/scripts:$PATH #export EDITOR=nvim #export TERMINAL=alacritty #export RANGER_LOAD_DEFAULT_RC=FALSE # # ##Shortcuts #alias l='ls -lAh --color=auto' #alias ls='ls --color=auto' #alias grep='grep --color=auto' #alias vim='nvim' #alias wget='wget --hsts-file="$XDG_DATA_HOME"/wget-hsts' # #if [[ -r /usr/share/bash-completion/bash_completion ]]; then # . /usr/share/bash-completion/bash_completion #fi # #eval "$(starship init bash)" mkdir -p ~/.config/git sed -n '89,93p;94q' ~/arch_install3.sh | cut -c2- > ~/.config/git/config ####################### ########GIT############ ####################### #[user] # email = harsh13virdi@gmail.com # name = Harsh Virdi #[protocol "file"] # allow = always mkdir -p ~/.config/hypr sed -n '103,104p;105q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprpaper.conf ####################### ###HYPRPAPER.CONF###### ####################### # # #preload = #wallpaper = # # sed -n '114,429p;430q' ~/arch_install3.sh | cut -c2- > ~/.config/hypr/hyprland.conf ####################### ###HYPRLAND.CONF####### ####################### ## This is an example Hyprland config file. ## Refer to the wiki for more information. ## https://wiki.hyprland.org/Configuring/ # ## Please note not all available settings / options are set here. ## For a full list, see the wiki # ## You can split this configuration into multiple files ## Create your files separately and then link them to this file like this: ## source = ~/.config/hypr/myColors.conf # # ################# #### MONITORS ### ################# # ## 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 # #################### #### MY PROGRAMS ### #################### # ## See https://wiki.hyprland.org/Configuring/Keywords/ # ## Set programs that you use #$terminal = alacritty #$fileManager = alacritty -e ranger #$menu = rofi -show run # # ################## #### AUTOSTART ### ################## # ## Autostart necessary processes (like notifications daemons, status bars, etc.) ## Or execute your favorite apps at launch like this: # #exec-once = waybar #exec-once = dunst #exec-once = hyprpolkitagent #exec-once = hyprpaper #exec-once = udiskie # ############################## #### ENVIRONMENT VARIABLES ### ############################## ## See https://wiki.hyprland.org/Configuring/Environment-variables/ ##env = LIBVA_DRIVER_NAME,nvidia ##env = __GLX_VENDOR_LIBRARY_NAME,nvidia #env = XDG_CURRENT_DESKTOP,Hyprland #env = XDG_SESSION_TYPE,wayland #env = XDG_SESSION_DESKTOP,Hyprland #env = XCURSOR_SIZE,24 #env = HYPRCURSOR_SIZE,24 #################### #### PERMISSIONS ### #################### # ## See https://wiki.hyprland.org/Configuring/Permissions/ ## Please note permission changes here require a Hyprland restart and are not applied on-the-fly ## for security reasons # ## ecosystem { ## enforce_permissions = 1 ## } # ## permission = /usr/(bin|local/bin)/grim, screencopy, allow ## permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow ## permission = /usr/(bin|local/bin)/hyprpm, plugin, allow # # ###################### #### LOOK AND FEEL ### ###################### # ## Refer to https://wiki.hyprland.org/Configuring/Variables/ # ## https://wiki.hyprland.org/Configuring/Variables/#general # #source = ~/.cache/wal/hyprland-looknfeel.conf # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ## https://wiki.hyprland.org/Configuring/Variables/#animations #animations { # enabled = yes, please :) # # # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more # # bezier = easeOutQuint,0.23,1,0.32,1 # bezier = easeInOutCubic,0.65,0.05,0.36,1 # bezier = linear,0,0,1,1 # bezier = almostLinear,0.5,0.5,0.75,1.0 # bezier = quick,0.15,0,0.1,1 # # animation = global, 1, 10, default # animation = border, 1, 5.39, easeOutQuint # animation = windows, 1, 4.79, easeOutQuint # animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% # animation = windowsOut, 1, 1.49, linear, popin 87% # animation = fadeIn, 1, 1.73, almostLinear # animation = fadeOut, 1, 1.46, almostLinear # animation = fade, 1, 3.03, quick # animation = layers, 1, 3.81, easeOutQuint # animation = layersIn, 1, 4, easeOutQuint, fade # animation = layersOut, 1, 1.5, linear, fade # animation = fadeLayersIn, 1, 1.79, almostLinear # animation = fadeLayersOut, 1, 1.39, almostLinear # animation = workspaces, 1, 1.94, almostLinear, fade # animation = workspacesIn, 1, 1.21, almostLinear, fade # animation = workspacesOut, 1, 1.94, almostLinear, fade #} # ## Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ ## "Smart gaps" / "No gaps when only" ## uncomment all if you wish to use that. ## workspace = w[tv1], gapsout:0, gapsin:0 ## workspace = f[1], gapsout:0, gapsin:0 ## windowrule = bordersize 0, floating:0, onworkspace:w[tv1] ## windowrule = rounding 0, floating:0, onworkspace:w[tv1] ## windowrule = bordersize 0, floating:0, onworkspace:f[1] ## windowrule = rounding 0, floating:0, onworkspace:f[1] # ## See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more #dwindle { # pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below # preserve_split = true # You probably want this #} # ## See https://wiki.hyprland.org/Configuring/Master-Layout/ for more #master { # new_status = master #} # ## https://wiki.hyprland.org/Configuring/Variables/#misc #misc { # force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers # disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :( #} # # ############## #### INPUT ### ############## # ## https://wiki.hyprland.org/Configuring/Variables/#input #input { # kb_layout = us # kb_variant = # kb_model = # kb_options = # kb_rules = # # follow_mouse = 1 # accel_profile = flat # # sensitivity = 0 # -1.0 - 1.0, 0 means no modification. # # touchpad { # natural_scroll = false # } #} # ## https://wiki.hyprland.org/Configuring/Variables/#gestures #gestures { # workspace_swipe = false #} # ## Example per-device config ## See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more #device { # name = epic-mouse-v1 # sensitivity = -0.5 #} # # #################### #### KEYBINDINGS ### #################### # ## See https://wiki.hyprland.org/Configuring/Keywords/ #$mainMod = SUPER # Sets "Windows" key as main modifier # ## Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more #bind = SUPERSHIFT, RETURN, exec, $terminal #bind = $mainMod, Q, killactive, #bind = SUPERSHIFT, Q, exit, #bind = $mainMod, E, exec, $fileManager #bind = $mainMod, V, togglefloating, #bind = $mainMod, R, exec, $menu #bind = Alt_L, F4, exec, kill -9 $(hyprctl activewindow | grep pid | tail -1 | awk '{print$2}') ## bind = $mainMod, J, togglesplit, # dwindle # ## Window manipulation #bind = $mainMod, j, cyclenext #bind = $mainMod, k, cyclenext, prev #bind = $mainMod, RETURN, swapnext #bind = $mainMod, h, splitratio, -0.1 #bind = $mainMod, l, splitratio, 0.1 #bind = $mainMod, m, fullscreen, 0 # ## Switch workspaces with mainMod + [0-9] #bind = $mainMod, 1, workspace, 1 #bind = $mainMod, 2, workspace, 2 #bind = $mainMod, 3, workspace, 3 #bind = $mainMod, 4, workspace, 4 #bind = $mainMod, 5, workspace, 5 #bind = $mainMod, 6, workspace, 6 #bind = $mainMod, 7, workspace, 7 #bind = $mainMod, 8, workspace, 8 #bind = $mainMod, 9, workspace, 9 #bind = $mainMod, 0, workspace, 10 # ## Move active window to a workspace with mainMod + SHIFT + [0-9] #bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1 #bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2 #bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3 #bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4 #bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5 #bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6 #bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7 #bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8 #bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9 #bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10 # ## Example special workspace (scratchpad) #bind = $mainMod, S, togglespecialworkspace, magic #bind = $mainMod SHIFT, S, movetoworkspace, special:magic # ## Scroll through existing workspaces with mainMod + scroll #bind = $mainMod, mouse_down, workspace, e+1 #bind = $mainMod, mouse_up, workspace, e-1 # ## Move/resize windows with mainMod + LMB/RMB and dragging #bindm = $mainMod, mouse:272, movewindow #bindm = $mainMod, mouse:273, resizewindow # ## Laptop multimedia keys for volume and LCD brightness #bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ #bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- #bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle #bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle #bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+ #bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%- # ## Requires playerctl #bindl = , XF86AudioNext, exec, playerctl next #bindl = , XF86AudioPause, exec, playerctl play-pause #bindl = , XF86AudioPlay, exec, playerctl play-pause #bindl = , XF86AudioPrev, exec, playerctl previous # ## Binds for ScriptExec #bind = $mainMod, F, exec, alacritty -e fuzzyopen # ############################### #### WINDOWS AND WORKSPACES ### ############################### # ## See https://wiki.hyprland.org/Configuring/Window-Rules/ for more ## 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 # ## Ignore maximize requests from apps. You'll probably like this. #windowrule = suppressevent maximize, class:.* # ## Fix some dragging issues with XWayland #windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 # mkdir -p ~/.cache/nvim/undodir mkdir -p ~/.config/nvim sed -n '438,489p;490q' ~/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=~/.cache/nvim/undodir #set undofile #set incsearch #set scrolloff=8 #set showmode #set showcmd #set nu rnu #set spell spelllang=en_us # #hi Normal guibg=NONE ctermbg=NONE # #"Word wrap #set textwidth=0 #set wrapmargin=0 #set wrap #set linebreak # # #let mapleader = " " # #set path+=** #set wildmenu # #" Clear status line when vimrc is reloaded. #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 # ####################### ########WAYBAR######### ####################### mkdir -p ~/.config/waybar sed -n '498,591p;592q' ~/arch_install3.sh | cut -c2- > ~/.config/waybar/config.jsonc #// -*- mode: jsonc -*- #{ # // "layer": "top", // Waybar at top layer # // "position": "bottom", // Waybar position (top|bottom|left|right) # "height": 30, // Waybar height (to be removed for auto height) # // "width": 1280, // Waybar width # "spacing": 4, // Gaps between modules (4px) # // Choose the order of the modules # "modules-left": [ # "hyprland/workspaces", # ], # "modules-center": [ # "hyprland/window" # ], # "modules-right": [ # "tray", # "pulseaudio", # "network", # "cpu", # "memory", # "battery", # "battery#bat2", # "clock", # "power-profiles-daemon" # ], # "tray": { # "spacing": 10, # }, # "clock": { # "tooltip-format": "{:%Y %B}\n{calendar}", # "format-alt": "{:%Y-%m-%d}" # }, # "cpu": { # "format": "{usage}% ", # "tooltip": false, # "on-click": "alacritty -e htop" # }, # "memory": { # "format": "{}% ", # "on-click": "alacritty -e htop -s PERCENT_MEM" # }, # "battery": { # "states": { # "warning": 30, # "critical": 15 # }, # "format": "{capacity}% {icon}", # "format-full": "{capacity}% {icon}", # "format-charging": "{capacity}% ", # "format-plugged": "{capacity}% ", # "format-alt": "{time} {icon}", # "format-icons": ["", "", "", "", ""] # }, # "battery#bat2": { # "bat": "BAT2" # }, # "power-profiles-daemon": { # "format": "{icon}", # "tooltip-format": "Power profile: {profile}\nDriver: {driver}", # "tooltip": true, # "format-icons": { # "default": "", # "performance": "", # "balanced": "", # "power-saver": "" # } # }, # "network": { # "format-wifi": "{essid} ({signalStrength}%) ", # "format-ethernet": "{ipaddr}/{cidr} ", # "tooltip-format": "{ifname} via {gwaddr} ", # "format-linked": "{ifname} (No IP) ", # "format-disconnected": "Disconnected ⚠", # "on-click": "alacritty -e nmtui" # }, # "pulseaudio": { # "format": "{volume}% {icon} {format_source}", # "format-bluetooth": "{volume}% {icon} {format_source}", # "format-bluetooth-muted": " {icon} {format_source}", # "format-muted": " {format_source}", # "format-source": "{volume}% ", # "format-source-muted": "", # "format-icons": { # "headphone": "", # "hands-free": "", # "headset": "", # "phone": "", # "portable": "", # "car": "", # "default": ["", "", ""] # }, # "on-click": "pavucontrol" # }, #} ####################### #####PYWALTEMPLATE##### ####################### mkdir -p ~/.config/wal/templates sed -n '602,646p;647q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/dmenu.rasi #/** # * ROFI Color theme # * User: Qball # * Copyright: Dave Davenport # */ # #* {{ # background-color: {color11}; # border-color: {color10}; # text-color: {color0}; # font: "Terminess Nerd Font 12"; #}} #window {{ # anchor: south; # location: south; # width: 100%; # padding: 2px; # children: [ horibox ]; #}} #horibox {{ # orientation: horizontal; # children: [ prompt, entry, listview ]; #}} #listview {{ # layout: horizontal; # lines: 100; #}} #entry {{ # expand: false; # width: 10em; # background-color: {color12}; # margin: 2px 2px; #}} #element {{ # padding: 0px 2px; # border: 2px; #}} #element selected {{ # background-color: {color10}; #}} # #element-text, element-icon {{ # background-color: inherit; # text-color: inherit; #}} sed -n '650,693p;694q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/hyprland-looknfeel.conf #general {{ # gaps_in = 3 # gaps_out = 3 # # border_size = 2 # # # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors # col.active_border = rgba({color9.strip}ff) # col.inactive_border = rgba({color10.strip}aa) # # # Set to true enable resizing windows by clicking and dragging on borders and gaps # resize_on_border = false # # # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on # allow_tearing = true # # layout = master #}} # ## https://wiki.hyprland.org/Configuring/Variables/#decoration #decoration {{ # rounding = 0 # rounding_power = 2 # # # Change transparency of focused and unfocused windows # active_opacity = 1.0 # inactive_opacity = 1.0 # # shadow {{ # enabled = true # range = 4 # render_power = 3 # color = rgba(1a1a1aee) # }} # # # https://wiki.hyprland.org/Configuring/Variables/#blur # blur {{ # enabled = true # size = 3 # passes = 1 # # vibrancy = 0.1696 # }} #}} sed -n '697,880p;881q' ~/arch_install3.sh | cut -c2- > ~/.config/wal/templates/waybar-style.css #* {{ # /* `otf-font-awesome` is required to be installed for icons */ # font-family: Terminess Nerd Font, FontAwesome, Roboto, Helvetica, Arial, sans-serif; # font-size: 13px; #}} # #window#waybar {{ # background-color: {color14.rgba}; # border-bottom: 3px solid {color9.rgba}; # border-top: 3px solid {color9.rgba}; # color: {color0}; # transition-property: background-color; # transition-duration: .5s; # box-shadow: inset 0 3px transparent; #}} # #window#waybar.hidden {{ # opacity: 0.2; #}} # #button {{ # /* Use box-shadow instead of border so the text isn't offset */ # /* Avoid rounded borders under each button name */ # border: none; # border-radius: 0; #}} # #/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ #button:hover {{ # background: inherit; # text-shadow: inherit; #}} # #/* you can set a style on hover for any module like this */ ##cpu:hover,#network:hover,#power-profiles-daemon:hover,#clock:hover,#memory:hover,#pulseaudio:hover {{ # background-color: {color12}; #}} # ##workspaces button {{ # padding: 0 5px; # margin: 3 0px; # background-color: {color11}; # color: {color0}; #}} # ##workspaces button:hover {{ # background: {color12.rgba}; #}} # ##workspaces button.active {{ # background-color: {color10}; #}} # ##workspaces button.urgent {{ # background-color: #eb4d4b; #}} # ##clock, ##battery, ##cpu, ##memory, ##network, ##pulseaudio, ##tray, ##power-profiles-daemon {{ # padding: 0 10px; # margin: 3 0px; # color: #ffffff; #}} # ##window, ##workspaces {{ # margin: 0 4px; #}} # #/* If workspaces is the leftmost module, omit left margin */ #.modules-left > widget:first-child > #workspaces {{ # margin-left: 0; #}} # #/* If workspaces is the rightmost module, omit right margin */ #.modules-right > widget:last-child > #workspaces {{ # margin-right: 0; #}} # ##clock {{ # background-color: {color11}; # color: {color0}; #}} # ##battery {{ # background-color: {color11}; # color: {color0}; #}} # ##battery.charging, #battery.plugged {{ # color: #ffffff; # background-color: #26A65B; #}} # #@keyframes blink {{ # to {{ # background-color: #ffffff; # color: #000000; # }} #}} # #/* Using steps() instead of linear as a timing function to limit cpu usage */ ##battery.critical:not(.charging) {{ # background-color: #f53c3c; # color: #ffffff; # animation-name: blink; # animation-duration: 0.5s; # animation-timing-function: steps(12); # animation-iteration-count: infinite; # animation-direction: alternate; #}} # ##power-profiles-daemon {{ # padding-right: 15px; #}} # ##power-profiles-daemon.performance {{ # background-color: #f53c3c; # color: #ffffff; #}} # ##power-profiles-daemon.balanced {{ # background-color: #2980b9; # color: #ffffff; #}} # ##power-profiles-daemon.power-saver {{ # background-color: #2ecc71; # color: #000000; #}} # #label:focus {{ # background-color: {color13}; # color: {color0}; #}} # ##cpu {{ # background-color: {color11}; # color: {color0}; #}} # ##memory {{ # background-color: {color11}; # color: {color0}; #}} # ##network {{ # background-color: {color11}; # color: {color0}; #}} # ##network.disconnected {{ # background-color: {color15}; # color: {color0}; #}} # ##pulseaudio {{ # background-color: {color11}; # color: {color0}; #}} # ##pulseaudio.muted {{ # background-color: {color15}; # color: {color0}; #}} # ##tray {{ # background-color: {color11}; #}} # ##tray > .passive {{ # -gtk-icon-effect: dim; #}} # ##tray > .needs-attention {{ # -gtk-icon-effect: highlight; # background-color: #eb4d4b; #}} ####################### #######SCRIPTS######### ####################### mkdir -p ~/.local/scripts sed -n '890,910p;911q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/mountlocalvol ##!/bin/sh # #lsblk # #echo "Enter the drive you want to mount:" #read drive #echo "Where do you want to mount the drive?" #read mountpath #sudo mkdir -p $mountpath #sudo chown $(id -u):$(id -g) $mountpath # ##finding UUID #UUID=$(lsblk -f | grep $drive | awk '{print $4}') #fs=$(lsblk -f | grep $drive | awk '{print $2}') # #echo " " | sudo tee -a /etc/fstab #echo "# /dev/$drive" | sudo tee -a /etc/fstab #echo "UUID=$UUID $mountpath $fs rw,relatime 0 0" | sudo tee -a /etc/fstab # #sudo systemctl daemon-reload #sudo mount -a sed -n '914,938p;939q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/mountsmbvol ##!/bin/sh # #sudo pacman -Syu cifs-utils # #echo "Enter the url/IP of your share:" #read ndrive #echo "Where do you want to mount the drive?" #read mountpath #sudo mkdir -p $mountpath #sudo chown $(id -u):$(id -g) $mountpath # ##Saving credentials #echo "Username:" #read user #echo "Password:" #read pass #echo "username=$user" | sudo tee /etc/.smbcred #echo "password=$pass" | sudo tee -a /etc/.smbcred # #echo " " | sudo tee -a /etc/fstab #echo "# Network Share" | sudo tee -a /etc/fstab #echo "$ndrive $mountpath cifs uid=$(id -u),gid=$(id -g),credentials=/etc/.smbcred,iocharset=utf8 0 0" | sudo tee -a /etc/fstab # #sudo systemctl daemon-reload #sudo mount -a sed -n '942,954p;955q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/disableipv6 ##!/bin/sh # #ip addr show # #echo "Enter your network device: " #read netdev # #echo "net.ipv6.conf.all.disable_ipv6 = 1" | sudo tee /etc/sysctl.d/40-ipv6.conf #echo "net.ipv6.conf.$netdev.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.d/40-ipv6.conf # #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" sed -n '958,960p;961q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/fuzzyopen ##! /bin/sh # #find ~/ | fzf | xargs -I{} xdg-open {} sed -n '964,973p;974q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/randomwp ##!/usr/bin/env bash # #WALLPAPER_DIR="$HOME/Pictures/Wallpapers/" #CURRENT_WALL=$(hyprctl hyprpaper listloaded) # ## Get a random wallpaper that is not the current one #WALLPAPER=$(find "$WALLPAPER_DIR" -type f ! -name "$(basename "$CURRENT_WALL")" | shuf -n 1) # ## Apply the selected wallpaper #hyprctl hyprpaper reload ,"$WALLPAPER" sed -n '977,987p;988q' ~/arch_install3.sh | cut -c2- > ~/.local/scripts/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 #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 ####################### #########ROFI########## ####################### mkdir -p ~/.config/rofi echo '@theme "dmenu.rasi"' > ~/.config/rofi/config.rasi ####################### ######ALACRITTY######## ####################### mkdir -p ~/.config/alacritty echo '[font]' > ~/.config/alacritty/alacritty.toml echo 'size = 12.0' >> ~/.config/alacritty/alacritty.toml echo '[font.normal]' >> ~/.config/alacritty/alacritty.toml echo 'family = "Terminess Nerd Font"' >> ~/.config/alacritty/alacritty.toml echo 'style = "Regular"' >> ~/.config/alacritty/alacritty.toml echo '[window]' >> ~/.config/alacritty/alacritty.toml echo 'opacity = 0.8' >> ~/.config/alacritty/alacritty.toml echo '[general]' >> ~/.config/alacritty/alacritty.toml echo 'import = ["~/.cache/wal/colors-alacritty.toml",]' >> ~/.config/alacritty/alacritty.toml ####################### ######FLAMESHOT######## ####################### mkdir -p ~/.config/flameshot echo '[General]' > ~/.config/flameshot/flameshot.ini echo 'contrastOpacity=188' >> ~/.config/flameshot/flameshot.ini echo 'useGrimAdapter=true' >> ~/.config/flameshot/flameshot.ini ####################### ########RANGER######### ####################### ranger --copy-config all sed -i "s/column_ratios 1,3,4/column_ratios 1,2,2/" ~/.config/ranger/rc.conf sed -i "s/preview_files true/preview_files false/" ~/.config/ranger/rc.conf sed -i "s/collapse_preview false/collapse_preview true/" ~/.config/ranger/rc.conf sed -i "s/draw_borders none/draw_borders both/" ~/.config/ranger/rc.conf sed -i "s/update_title false/update_title true/" ~/.config/ranger/rc.conf sed -i "s/tilde_in_titlebar false/tilde_intitlebar true/" ~/.config/ranger/rc.conf 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 # Making all of the generated scripts executable sudo chmod +x ~/.local/scripts/mountlocalvol sudo chmod +x ~/.local/scripts/mountsmbvol sudo chmod +x ~/.local/scripts/disableipv6 sudo chmod +x ~/.local/scripts/fuzzyopen sudo chmod +x ~/.local/scripts/randomwp sudo chmod +x ~/.local/scripts/updatetheme # Downloading wallpapers cd $HOME mkdir -p Pictures/Wallpapers cd Pictures/Wallpapers for (( w=1; w<934; w++ )); do curl -LOS "https://raw.githubusercontent.com/whoisYoges/lwalpapers/PicturesOnly/wallpapers/$(printf b-%0.3d.jpg "$w")"; done # Installing Yay cd $HOME git clone https://aur.archlinux.org/yay.git cd yay makepkg -si yay --version cd $HOME rm -r yay # Installing Aur Packages 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 = $wallpaper" > ~/.config/hypr/hyprpaper.conf echo "wallpaper = , $wallpaper" >> ~/.config/hypr/hyprpaper.conf cp ~/.cache/wal/dmenu.rasi ~/.config/rofi/dmenu.rasi cp ~/.cache/wal/waybar-style.css ~/.config/waybar/style.css exit