-
Notifications
You must be signed in to change notification settings - Fork 950
Installation
First clone the repo and change the directory to the script path
pacman -Sy git
git clone --depth 1 https://github.com/prasanthrangan/hyprdots ~/Hyprdots
cd ~/Hyprdots/Scripts
Then make sure the user has write and execute permission to the clone directory
Caution
Do not execute the script with sudo or as root user
Now the install script can be executed in different modes,
- for default full hyprland installation with all configs
./install.sh
- for full or minimal hyprland installation + your favorite packages (ex.
custom_apps.lst
)
./install.sh custom_apps.lst # full install custom_hypr.lst + custom_app.lst with configs
./install.sh -i custom_apps.lst # minimal install custom_hypr.lst + custom_app.lst without configs
- each section can also be independently executed as,
./install.sh -i # minimal install hyprland without any configs
./install.sh -d # minimal install hyprland without any configs, but with (--noconfirm) install
./install.sh -r # just restores the config files
./install.sh -s # start and enable system services
./install.sh -drs # same as ./install.sh, but with (--noconfirm) install
The install script has sections : 1 2 3 4 5
./install.sh -ir # this section only runs when [i]nstall and [r]estore options are passed
-
detect grub
- backup existing config file
/etc/default/grub
and/boot/grub/grub.cfg
- add
nvidia_drm.modeset=1
to boot option, only for nvidia system - install grub theme based on user input,
-
1 for
retroboot
-
2 for
pochita
- * press any other key to skip grub theme
-
1 for
- backup existing config file
-
detect systemd-boot
- backup existing config files
/boot/loader/entries/*.conf
- add
nvidia_drm.modeset=1
to boot option, only for nvidia system
- backup existing config files
-
configure pacman
- backup existing config file
/etc/pacman.conf
- enable candy and parallel downloads
- add
xero_hypr
repo (yet to be implemented)
- backup existing config file
./install.sh -i
-
prepare a temp list of packages from main package list
custom_hypr.lst
-
if the user pass additional list (for ex.
custom_apps.lst
), then add it to the temp list -
install shell based on user input,
-
1 for
zsh
-
2 for
fish
-
1 for
-
if nvidia card is detected, add corresponding
nvidia-dkms
andnvidia-utils
to the temp list based on lookup -
install AUR helper based on user input,
-
1 for
yay
-
2 for
paru
-
1 for
-
install packages from the generated temp list
- use
pacman
to install package if its available in official arch repo - use AUR helper ( detect if its
yay
orparu
) to install packages if its available in AUR
- use
./install.sh -d
- exactly same as install, but with
--noconfirm
option - will skip user input and use default option(s) to install, but prompts sudo password when required
./install.sh -r
-
restore gtk themes, icons, cursors and fonts
- uncompress
*.tar.gz
files fromSource/arcs/
to the target location based on this restore_fnt control file - here
restore_fnt.lst
is a|
delimited control file where column,-
1 is compressed source
*.tar.gz
file located inSource/arcs/
- 2 is the target location to extract
-
1 is compressed source
- uncompress
-
restore config files
- restore the dot files based on this restore_cfg control file
- here
restore_cfg.lst
is a|
delimited control file where column,-
1 is overwrite flag [
Y
/N
], to overwrite the target from source if it already exist -
2 is backup flag [
Y
/N
], to copy the target file to backup directory - 3 is the target directory path
- 4 is the source file/directory name(s), space separated list
- 5 is the space separated package dependency list, to skip configs for packages that are not installed
-
1 is overwrite flag [
-
generate wallpaper cache
-
fix/update all the symlinks used
./install.sh -ir # this section only runs when [i]nstall and [r]estore options are passed
-
patch/skip additional themes from themepatcher list, based on user input
-
configure sddm
- install sddm theme based on user input,
-
1 for
candy
-
2 for
corners
-
1 for
- install sddm theme based on user input,
-
set dolphin as default file manager
-
configure shell
- detect shell installed,
zsh
orfish
- for zsh, install plugins based on restore_zsh list
- detect shell installed,
./install.sh -s
- enable and start system services based on system_ctl list