Compare commits

...

138 Commits

Author SHA1 Message Date
JaKooLit 54b65e92b8 added qalculate-gtk 2024-10-08 23:52:28 +09:00
JaKooLit 84a413c615 added tip for searchable keybinds via rofi 2024-09-21 22:27:11 +09:00
JaKooLit cea9183d2d User will be ask if they want to set Thunar as default file manager if they decided to install it 2024-09-20 20:05:50 +09:00
JaKooLit 8eef96db51 small tweak 2024-09-20 18:55:13 +09:00
JaKooLit f99474f81f updated thunar and preset.sh 2024-09-20 18:51:13 +09:00
JaKooLit 10a1e9142d updaed preset.sh 2024-09-20 18:40:02 +09:00
JaKooLit b4bfd935d9 updated zsh.sh 2024-09-20 17:43:10 +09:00
JaKooLit 17b836ee2f Added fastfetch on tty. However, will be disabled if user decided to install pokemon colorscripts 2024-09-19 17:05:05 +09:00
JaKooLit 54bc0d1499 updated install.sh 2024-09-18 23:35:44 +09:00
JaKooLit 0e876533c2 ask user if thunar wants to be default. some formatting changes 2024-09-18 17:13:17 +09:00
JaKooLit f096714637 dotfiles will now be downloaded from main or master branch instead of from the releases version. 2024-09-18 14:32:20 +09:00
JaKooLit 38f24a43bb added dotfiles-main.sh to download from main instead of from releases 2024-09-18 01:21:47 +09:00
JaKooLit 0ed0894c38 switched over to non-bin yay or paru 2024-09-16 01:48:54 +09:00
JaKooLit c0b198d562 Final tweaks of color variants for output messages 2024-09-14 17:08:00 +09:00
JaKooLit 99cc2c481b Some changes on numbers on install scripts 2024-09-14 13:12:01 +09:00
JaKooLit b16dffda4d another update for uninstallation process 2024-09-14 11:40:36 +09:00
JaKooLit 04995241c4 updated uninstall functions 2024-09-14 11:32:32 +09:00
JaKooLit 44b58b3c65 just a bit tweak of final check script 2024-09-14 01:55:29 +09:00
JaKooLit eb033d3220 final tweak of install scripts 2024-09-14 01:29:54 +09:00
JaKooLit ba7dcc8523 updated Final-Check.sh 2024-09-14 01:28:27 +09:00
JaKooLit bbc3094e3d update Install scripts 2024-09-14 01:16:32 +09:00
JaKooLit 8ad8784443 updated - added final check of install packages 2024-09-14 00:48:15 +09:00
JaKooLit 477545ac2e just color tweak 2024-09-08 14:55:13 +09:00
Ja.KooLit 5f59d96640
Merge pull request #147 from JaKooLit/development
Development to Main
2024-09-08 11:55:22 +09:00
JaKooLit 4f7ff52523 Added final error checks on install-logs 2024-09-08 11:40:30 +09:00
JaKooLit 16f3c44ec8 Added error checks 2024-09-08 11:25:42 +09:00
Ja.KooLit fb2866eed1
Update install.sh 2024-09-08 11:08:51 +09:00
JaKooLit b47a5f7a9a added a final error check 2024-09-08 11:02:58 +09:00
Ja.KooLit 8a452057cf
Merge pull request #146 from JaKooLit/main
Main to development synchronization
2024-09-08 10:54:45 +09:00
JaKooLit 9241cbf2c6 added sof-firmware 2024-09-07 23:29:23 +09:00
JaKooLit 3318f33c31 adjusted to detect if pulseaudio is installed 2024-09-07 23:27:46 +09:00
Ja.KooLit 267eda6dc4
Merge pull request #143 from JaKooLit/main
Main to development
2024-09-05 17:07:30 +09:00
JaKooLit 48b57acbfd minor tweak 2024-09-03 23:45:14 +09:00
Ja.KooLit e25cbba2c6 install.sh - Edited to WARN if hyprland failed to install 2024-09-01 15:31:45 +09:00
JaKooLit 38cb01047c switched over to non-git wallust package 2024-08-29 22:04:21 +09:00
JaKooLit 6fe4514341 move pyprland and other hyprland related packages in hyprland.sh 2024-08-29 10:35:36 +09:00
Ja.KooLit 43ce92bb86
Merge pull request #139 from JaKooLit/development
Synchronize Main and Development Branches
2024-08-28 18:42:28 +09:00
Ja.KooLit 8a5705156e
Merge pull request #138 from JaKooLit/main
Main to Development
2024-08-28 18:41:35 +09:00
Ja.KooLit 3ed441614e Added final check if hyprland is installed and will give an error to user 2024-08-28 18:37:42 +09:00
Ja.KooLit 37f9b02292 updated install.sh to check if base-devel is install and Hyprland is installed and will exit and give an error message accordingly 2024-08-28 18:36:43 +09:00
Ja.KooLit f8a0c925c3
Merge pull request #136 from JaKooLit/main
Main to Development synchronization
2024-08-26 23:11:08 +09:00
JaKooLit d0605b5afe added nvidia_drm.fbdev=1 for grub 2024-08-26 23:09:29 +09:00
JaKooLit 39a97acf3b Set to uninstall rofi as conflicts with rofi-wayland 2024-08-26 20:32:19 +09:00
JaKooLit a177ed254f Set to uninstall rofi as conflicts with rofi-wayland 2024-08-26 20:31:40 +09:00
JaKooLit 73938d8343 added base devel to install first 2024-08-26 15:40:42 +09:00
Ja.KooLit f82fcf966c
Merge pull request #130 from JaKooLit/main
Main to Dev
2024-08-14 21:03:14 +09:00
Ja.KooLit f7bf5a4667
Update CHANGELOGS.md 2024-08-14 15:42:35 +09:00
Ja.KooLit 9ac06f2125
Update CHANGELOGS.md 2024-08-14 15:42:24 +09:00
Ja.KooLit acce625ac7
Update 00-base.sh 2024-08-14 15:41:36 +09:00
Ja.KooLit a09c819cb6
Add files via upload 2024-08-10 15:27:49 +00:00
Ja.KooLit c891da45d5
Merge pull request #129 from JaKooLit/main
Main to Development
2024-08-08 15:48:27 +00:00
Ja.KooLit 0b1be97f7b
Merge pull request #128 from JaKooLit/development
Development to main
2024-08-08 15:46:59 +00:00
Ja.KooLit 939444a27d
Merge pull request #127 from JaKooLit/JaKooLit-patch-1
Update CHANGELOGS.md
2024-08-08 15:43:52 +00:00
Ja.KooLit ae4bc4a855
Update CHANGELOGS.md 2024-08-08 15:43:31 +00:00
Ja.KooLit 7ebfa06c3b
Update install.sh
Increased to 1 sec delay for installing base
2024-08-08 15:41:48 +00:00
Ja.KooLit 6655cc12e6
Merge pull request #106 from JaKooLit/main
synchronize Main to Development
2024-07-11 11:45:16 +09:00
JaKooLit 3502766cd7 updated readme re rofi 2024-07-11 11:40:40 +09:00
Ja.KooLit 60c62bd122
Merge pull request #105 from JaKooLit/main
synchronize Main to Development
2024-07-11 11:14:51 +09:00
JaKooLit 611d8ba612 updated readme 2024-07-11 11:12:35 +09:00
Ja.KooLit 56d3cbb19b
Merge pull request #101 from JaKooLit/development
Development to Main
2024-07-07 22:49:50 +09:00
JaKooLit 69e938e33c move installation of eza on zsh.sh 2024-07-07 22:41:19 +09:00
Ja.KooLit b0f2e59cd1
Merge pull request #100 from ElectroPerf/main
feat: Use eza to display file/folder icons in terminal
2024-07-07 22:26:32 +09:00
Kunmun 227ef1d75d
feat: Use eza to display file/folder icons in terminal
Change-Id: I3807eef228a3799c652eea185384445de7c5c370
2024-07-07 17:42:34 +05:30
JaKooLit 165d8ff0bb added fbdev=1 on nvidia.sh 2024-06-25 22:00:36 +09:00
Ja.KooLit 0fdd31534f
Update README.md 2024-06-23 17:04:05 +08:00
Ja.KooLit 2ae238ace1
Merge pull request #93 from JaKooLit/main
Main to Development
2024-06-22 15:12:43 +09:00
JaKooLit 1f822e3d5f updated Discord Link - Readme 2024-06-22 15:08:32 +09:00
JaKooLit 322ddee8e7 updated discord link 2024-06-21 04:26:25 +09:00
Ja.KooLit 9615baf63e updated readme regarding nvidia 2024-06-11 04:41:07 +09:00
JaKooLit 5add49ac89 updated base-devel installation 2024-06-10 00:13:52 +09:00
JaKooLit 86943a51b3 added inxi for better diagnostic info 2024-06-09 10:36:32 +09:00
Ja.KooLit d24a9c4888 updated readme 2024-06-08 23:58:39 +09:00
Ja.KooLit 62e69cfd73 updated readme 2024-06-08 23:54:40 +09:00
JaKooLit 97992554b1 added keybinds link on readme 2024-06-05 13:25:15 +09:00
JaKooLit 6120faaea5 removed bookmarks from gtk-3.0 directory 2024-06-05 13:01:48 +09:00
Ja.KooLit f45f41d14a
Merge pull request #86 from JaKooLit/main
main to development
2024-06-04 03:04:45 +09:00
JaKooLit f214cf3c8d updated Thunar.sh to include gtk-3.0 config if not present 2024-06-01 18:56:32 +09:00
JaKooLit 55f5819ae9 updated issue templates 2024-05-30 03:22:56 +09:00
Ja.KooLit c15100db44
Merge pull request #85 from JaKooLit/main
Main to development
2024-05-27 05:21:38 +09:00
JaKooLit c429266320 Added fzf for zsh, clean up readme 2024-05-27 05:18:22 +09:00
JaKooLit 3b6c7c3c73 updated GTK theme install script to avoid confusion 2024-05-25 18:06:44 +09:00
Ja.KooLit 4c56e4fbcc
Update README.md 2024-05-25 17:35:26 +09:00
Ja.KooLit e3c10a7661
Merge pull request #83 from JaKooLit/development
Development to Main for v2.2.12 Hyprland-Dots release
2024-05-24 21:23:34 +09:00
Ja.KooLit 5fc5342a67
Merge branch 'main' into development 2024-05-24 21:23:24 +09:00
JaKooLit 216008382e added fastfetch, power-profiles-daemon (only to ROG users), see changelogs notes 2024-05-24 00:08:09 +09:00
Ja.KooLit 51f4bcfa26
Update CHANGELOGS.md
For development. Not yet ready
2024-05-23 17:14:36 +09:00
Ja.KooLit 6f2128a27a
Update 00-hypr-pkgs.sh
mistake.. should be in development first
2024-05-23 17:13:27 +09:00
Ja.KooLit 07824f1fab
Merge pull request #81 from JaKooLit/main
Main to Development for new features
2024-05-23 17:09:36 +09:00
Ja.KooLit 1d100b2ca9
Merge branch 'development' into main 2024-05-23 17:09:15 +09:00
JaKooLit 8b01d91625 added qalculate-gtk for Hyprland-Dots v2.2.12 2024-05-23 13:26:47 +09:00
JaKooLit bd162bffd3 changed the sddm theme destination to /etc/sddm.conf.d/10-theme.conf to theme.conf.user 2024-05-22 21:13:24 +09:00
JaKooLit bc4a9b54f7 updated packages 2024-05-22 20:40:12 +09:00
JaKooLit dc3dc39e12 updated readme regarding Hyprland Auto starting 2024-05-22 00:19:37 +09:00
JaKooLit 03ca2d6494 added file-roller in thunar 2024-05-21 21:44:23 +09:00
JaKooLit eb62120deb updated readme 2024-05-20 11:40:20 +09:00
JaKooLit 340019c627 updated readme 2024-05-20 11:30:09 +09:00
Ja.KooLit 7a111e0284
Merge pull request #80 from JaKooLit/main
Main to development
2024-05-19 14:46:09 +09:00
JaKooLit 6252e96186 updated behaviour of .zprofile as causing auto-login to Hyprland 2024-05-19 12:27:05 +09:00
JaKooLit 92f595b6e4 updated readme 2024-05-18 23:23:50 +09:00
JaKooLit 37f09a8e7e updated readme 2024-05-18 18:39:12 +09:00
JaKooLit ae859493b6 updated Readme 2024-05-18 00:53:25 +09:00
Ja.KooLit ae720c7299
Merge pull request #78 from JaKooLit/main
Main to development
2024-05-14 00:39:41 +09:00
JaKooLit 84e32d5ea3 remove pywal colors for .zshrc 2024-05-14 00:27:22 +09:00
Ja.KooLit b2195df659
Merge pull request #75 from JaKooLit/development
Releasing a new installer to work with Hyprland-Dots v2.2.11
2024-05-13 11:20:28 +09:00
Ja.KooLit c5837fd525
Merge pull request #74 from JaKooLit/main
Merging Main to Development, prior release of new installer for Hyprland-Dots v2.2.11
2024-05-13 11:14:22 +09:00
JaKooLit c3710b89aa edited install.sh to avoid confusion (hopefully) on use preset settings 2024-05-11 19:25:10 +09:00
JaKooLit 87dfa43733 updated readme to highlight pipewire 2024-05-11 11:37:24 +09:00
Ja.KooLit faa76f335f
Update README.md 2024-05-10 22:48:13 +09:00
Ja.KooLit dc800878a6
Update README.md 2024-05-10 22:47:10 +09:00
JaKooLit f7a20da6ea updated for wallust migration from pywal 2024-05-10 12:31:15 +09:00
Ja.KooLit fdafa3d472
Merge pull request #72 from JaKooLit/main
Tweaked Script including sddm.sh
2024-05-08 11:11:49 +09:00
JaKooLit 9abf9a459d Tweaked Script including sddm.sh 2024-05-08 11:10:17 +09:00
JaKooLit 8ed397017c added ags for the upcoming hyprland-dots v2.2.11 with ags overview 2024-05-07 23:12:10 +09:00
Ja.KooLit 88629e5e07
Merge pull request #71 from JaKooLit/main
main to dev
2024-05-07 02:10:53 +09:00
JaKooLit fdd442e74b updated arch. switched to cava as installation of cava-git keep the installation hang 2024-05-07 02:04:31 +09:00
Ja.KooLit f1758c4a67 switched to rofi-wayland extra repo 2024-05-05 07:10:41 +09:00
Ja.KooLit 85eac029b8
Merge pull request #69 from JaKooLit/main
main to development update
2024-05-05 00:42:36 +09:00
Ja.KooLit 28a183f820
Merge pull request #68 from JaKooLit/development
Development to Main
2024-05-05 00:41:32 +09:00
JaKooLit f57842bd36 Made a separate script for fonts installation for easy debugging purpose 2024-05-04 23:57:28 +09:00
Ja.KooLit 6247e2fa09 switched to cava-git version as cava have issues 2024-05-03 22:48:47 +09:00
JaKooLit a6b1defa6c added pyquery for new weather python script for waybar on Hyprland-Dots v2.2.10 2024-05-03 17:59:52 +09:00
JaKooLit d41ff66680 updated readme for some tips for nvidia-gpu users 2024-05-03 09:08:11 +09:00
JaKooLit 51bd4af82c Added pyprland (hyprland plugin) 2024-05-02 19:48:40 +09:00
Ja.KooLit 74ca2e4f90
Merge pull request #66 from JaKooLit/development
some error message grammar corrections
2024-05-02 00:04:17 +09:00
Ja.KooLit 0dec7b3ef2 some error message grammar corrections 2024-05-02 00:00:36 +09:00
Ja.KooLit 2c69ef4342
Merge pull request #65 from JaKooLit/main
synchronize main to development
2024-05-01 12:00:59 +09:00
Ja.KooLit aeeb8b50d8
Merge pull request #64 from JaKooLit/development
updated install.sh
2024-05-01 12:00:10 +09:00
JaKooLit 8e97290429 updated install.sh 2024-05-01 11:56:21 +09:00
Ja.KooLit 1c49abbe54
Merge pull request #63 from JaKooLit/development
updated readme to add stargazers
2024-04-30 23:50:12 +09:00
JaKooLit 8cf857efc7 updated readme 2024-04-30 23:48:49 +09:00
Ja.KooLit a265f12931
Merge pull request #62 from JaKooLit/development
Updated readme to download to user directory instead of somewhere else
2024-04-29 08:28:10 +09:00
Ja.KooLit 95cc453086
Merge pull request #61 from JaKooLit/main
main to development
2024-04-29 08:27:13 +09:00
JaKooLit fbf8545540 Updated readme 2024-04-29 07:51:12 +09:00
JaKooLit f1fd1d1170 updated readme 2024-04-26 09:39:59 +09:00
Ja.KooLit 2154eef613
Merge pull request #59 from JaKooLit/development
updated SDDM scripts. Regarding custom theme
2024-04-26 09:28:49 +09:00
JaKooLit 77192cd06e updated SDDM theme 2024-04-26 09:27:02 +09:00
Ja.KooLit c73c155a79
Merge pull request #58 from JaKooLit/development
Dropping swayidle and swaylock in favor of hypridle and hyprlock
2024-04-25 22:49:48 +09:00
JaKooLit 45612f287a Dropping swayidle and swaylock in favor of hypridle and hyprlock 2024-04-23 01:47:12 +09:00
31 changed files with 941 additions and 266 deletions

View File

@ -7,10 +7,17 @@ labels: "Something isn't working"
## Bug Report ## Bug Report
### Before submitting report
[Kindly review the log files in Install-Logs directory. Some apps may have not installed properly.]
### Description ### Description
[Provide a clear and concise description of the bug.] [Provide a clear and concise description of the bug.]
[If you have issue with installation, kindly attach the Install-Logs which was created by the install script]
### Steps to Reproduce ### Steps to Reproduce
1. [First Step] 1. [First Step]
@ -33,14 +40,14 @@ labels: "Something isn't working"
[Please add any other relevant information about the bug and remove the unnecessary lines.] [Please add any other relevant information about the bug and remove the unnecessary lines.]
e.g., ### show output of `inxi -CGIsSMnr` install package `inxi` if not exist
show output here
```
- Linux Distro: [e.g., ArchLinux, EndeavourOS, Arco, Manjaro]
- Linux Version, output of `uname -a`: ```
- Hyprland Version, output of `hyprctl version`:
- Installation Environment: [e.g., On The Main Hardware, On A Virtual Machine]
- Other info: [e.g., Display Resolution, Resolution, etc]
### Additional Information ### Additional Information
[Add any other information about the problem here. For example, you might include the error message, any recent changes that you made to the project, or any other relevant details.] [Add any other information about the problem here. For example, you might include the error message, any recent changes that you made to the project, or any other relevant details.]

View File

@ -7,6 +7,10 @@ labels: "custom"
## Custom Template ## Custom Template
### Before submitting report
[Kindly review the log files in Install-Logs directory. Some apps may have not installed properly.]
### Description ### Description
[Provide a clear and concise description of the issue or request.] [Provide a clear and concise description of the issue or request.]
@ -36,3 +40,10 @@ labels: "custom"
### Additional Information ### Additional Information
[Add any other information about the issue or request here. For example, you might include links to similar features in other projects, or screenshots or diagrams to help explain your idea.] [Add any other information about the issue or request here. For example, you might include links to similar features in other projects, or screenshots or diagrams to help explain your idea.]
### show output of `inxi -CGIsSMnr` install package `inxi` if not exist
show output here
```
```

View File

@ -1,5 +1,91 @@
## Changelogs ## Changelogs
## 20 Sep 2024
- User will be ask if they want to set Thunar as default file manager if they decided to install it
## 19 Sep 2024
- Added fastfetch on tty. However, will be disabled if user decided to install pokemon colorscripts
## 18 Sep 2024
- dotfiles will now be downloaded from main or master branch instead of from the releases version.
## 14 Sep 2024
- remove the final error checks instead, introduced a final check of essential packages to ran Hyprland
## 08 Sep 2024
- Added final error checks on install-logs
## 07 Sep 2024
- added pulseaudio check
- added sof-firmware
## 29 Aug 2024
- switched over to non-git wallust package
- improved indentions on some install scripts
## 28 Aug 2024
- Added final check if hyprland is installed and will give an error to user
## 26 Aug 2024
- Set to uninstall rofi as conflicts with rofi-wayland
- added nvidia_drm.fbdev=1 for grub
## 14 Aug 2024
- added archlinux-keyring on base.sh
## 08 Aug 2024
- Increased to 1 sec delay for installing base-devel [commit](https://github.com/JaKooLit/Arch-Hyprland/commit/7ebfa06c3b186f9bec0bcf268fae401ba67dfc2a)
## 07 Jul 2024
- added eza (ls replacement for tty). Note only on .zshrc
## 25 Jun 2024
- added fbdev=1 for nvidia.sh on `/etc/modprobe.d/nvidia.conf`. see here `https://wiki.hyprland.org/Nvidia/#drm-kernel-mode-setting`
## 26 May 2024
- Added fzf for zsh (CTRL R to invoke FZF history)
## 23 May 2024
- added qalculate-gtk to work with rofi-calc. Default keybinds (SUPER ALT C)
- added power-profiles-daemon for ROG laptops. Note, I cant add to all since it conflicts with TLP, CPU-Auto-frequency etc.
- added fastfetch
## 22 May 2024
- nwg-look is now in extra repo so replaced with nwg-look from nwg-look-bin
- change the sddm theme destination to /etc/sddm.conf.d/10-theme.conf to theme.conf.user
## 19 May 2024
- Disabled the auto-login in .zprofile as it causes auto-login to Hyprland if any wayland was chosen. Can enabled if only using hyprland
## 10 May 2024
- added wallust-git and remove python-pywal for migration to wallust on Hyprland-Dots v2.2.11
## 08 May 2024
- Adjusted sddm.sh since it does not respect preset.sh
- install.sh have been rearranged so it quits if user choose not to proceed
## 07 May 2024
- Minor typo change on nvidia.sh
- switch back to cava since installing cava-git keep it hanging (see known-issue on readme)
## 05 May 2024
- switched to rofi-wayland Extra Repo
## 04 May 2024
- separated fonts installation script for easy debugging
## 03 May 2024
- added python3-pyquery for new weather-waybar python based on Hyprland-Dots
## 02 May 2024
- Added pyprland (hyprland plugin)
## 26 Apr 2024
- Updated sddm.sh for Qt6 variant
## 23 Apr 2024
- Dropping swayidle and swaylock in favor of hypridle and hyprlock
## 20 Apr 2024 ## 20 Apr 2024
- Change default Oh-my-zsh theme to xiong-chiamiov-plus - Change default Oh-my-zsh theme to xiong-chiamiov-plus

128
CODE_OF_CONDUCT.md Normal file
View File

@ -0,0 +1,128 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
mail[at]ml4w.com.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.

130
README.md
View File

@ -1,14 +1,51 @@
<div align="center"> <div align="center">
<br>
<a href="#-announcement-"><kbd><br>Read this First<br></kbd></a>&ensp;&ensp;
<a href="#-to-use-this-script"><kbd><br>How to use this script<br></kbd></a>&ensp;&ensp;
<a href="#gallery-and-videos"><kbd><br>Gallery<br></kbd></a>&ensp;&ensp;
</div><br>
<div align="center">
## 💌 ** JaKooLit's Arch Hyprland Install Script ** 💌 ## 💌 ** JaKooLit's Arch Hyprland Install Script ** 💌
![GitHub Repo stars](https://img.shields.io/github/stars/JaKooLit/Arch-Hyprland?style=for-the-badge&color=cba6f7) ![GitHub last commit](https://img.shields.io/github/last-commit/JaKooLit/Arch-Hyprland?style=for-the-badge&color=b4befe) ![GitHub repo size](https://img.shields.io/github/repo-size/JaKooLit/Arch-Hyprland?style=for-the-badge&color=cba6f7) ![GitHub Repo stars](https://img.shields.io/github/stars/JaKooLit/Arch-Hyprland?style=for-the-badge&color=cba6f7) ![GitHub last commit](https://img.shields.io/github/last-commit/JaKooLit/Arch-Hyprland?style=for-the-badge&color=b4befe) ![GitHub repo size](https://img.shields.io/github/repo-size/JaKooLit/Arch-Hyprland?style=for-the-badge&color=cba6f7) <a href="https://discord.gg/9JEgZsfhex"> <img src="https://img.shields.io/discord/1151869464405606400?style=for-the-badge&logo=discord&color=cba6f7&link=https%3A%2F%2Fdiscord.gg%9JEgZsfhex"> </a>
<br/> <br/>
</div> </div>
#### Hyprland-Dots-showcase <div align="center">
👇 KOOL's Hyprland-Dots related Links 👇
<br/>
</div>
<div align="center">
<br>
<a href="https://github.com/JaKooLit/Hyprland-Dots"><kbd><br>Hyprland-Dots repo<br></kbd></a>&ensp;&ensp;
<a href="https://www.youtube.com/playlist?list=PLDtGd5Fw5_GjXCznR0BzCJJDIQSZJRbxx"><kbd><br>Youtube<br></kbd></a>&ensp;&ensp;
<a href="https://github.com/JaKooLit/Hyprland-Dots/wiki"><kbd><br>Wiki<br></kbd></a>&ensp;&ensp;
<a href="https://github.com/JaKooLit/Hyprland-Dots/wiki/Keybinds"><kbd><br>Keybinds<br></kbd></a>&ensp;&ensp;
<a href="https://github.com/JaKooLit/Hyprland-Dots/wiki/FAQ"><kbd><br>FAQ<br></kbd></a>&ensp;&ensp;
<a href="https://discord.gg/9JEgZsfhex"><kbd><br>Discord<br></kbd></a>
</div><br>
<h3 align="center">
<img src="https://github.com/JaKooLit/Telegram-Animated-Emojis/blob/main/Activity/Sparkles.webp" alt="Sparkles" width="38" height="38" />
KooL Hyprland-Dotfiles Showcase
<img src="https://github.com/JaKooLit/Telegram-Animated-Emojis/blob/main/Activity/Sparkles.webp" alt="Sparkles" width="38" height="38" />
</h3>
<div align="center">
https://github.com/JaKooLit/Hyprland-Dots/assets/85185940/50d53755-0f11-45d6-9913-76039e84a2cd
</div>
### Gallery and Videos
<details>
<summary>
📷 Screenshots
</summary>
<p align="center"> <p align="center">
<img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-ScreenShots/Arch-v2/Arch-Default-Layout.png" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-Dots-Showcase/dark-theme.png" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-ScreenShots/Arch-v2/Arch-Default-Layout.png" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-Dots-Showcase/dark-theme.png" />
<img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-Dots-Showcase/Light-theme.png" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-ScreenShots/Arch-v2/Another-Screenshot.png"" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-Dots-Showcase/Light-theme.png" /> <img align="center" width="49%" src="https://raw.githubusercontent.com/JaKooLit/screenshots/main/Hyprland-ScreenShots/Arch-v2/Another-Screenshot.png"" />
@ -29,9 +66,10 @@
#### 📽️ youtube video showcase: [`Link`](https://youtu.be/W2UFwkgdwNo) #### 📽️ youtube video showcase: [`Link`](https://youtu.be/W2UFwkgdwNo)
</details>
### 🪧🪧🪧 ANNOUNCEMENT 🪧🪧🪧 ### 🪧🪧🪧 ANNOUNCEMENT 🪧🪧🪧
- This Repo does not contain Hyprland Dots or configs! Dotfiles can be checked here [`Hyprland-Dots`](https://github.com/JaKooLit/Hyprland-Dots) . During installation, if you opt to copy installation, it will be downloaded from that centralized repo. - This Repo does not contain Hyprland Dots or configs! Dotfiles can be checked here [`Hyprland-Dots`](https://github.com/JaKooLit/Hyprland-Dots) . During installation, if you opt to copy pre-configured dots, it will be downloaded from that centralized repo.
- Hyprland-Dots use are constantly evolving / improving. you can check CHANGELOGS here [`Hyprland-Dots-Changelogs`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Changelogs) - Hyprland-Dots use are constantly evolving / improving. you can check CHANGELOGS here [`Hyprland-Dots-Changelogs`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Changelogs)
- Since the Hyprland-Dots are evolving, some of the screenshots maybe old - Since the Hyprland-Dots are evolving, some of the screenshots maybe old
- the wallpaper offered to be downloaded towards the end is from this [`REPO`](https://github.com/JaKooLit/Wallpaper-Bank) - the wallpaper offered to be downloaded towards the end is from this [`REPO`](https://github.com/JaKooLit/Wallpaper-Bank)
@ -42,30 +80,40 @@
> [!NOTE] > [!NOTE]
> Main reason why I have not included an uninstallation script is simple. Some packages maybe already installed on your system by default. If I create an uninstall script with packages that I have set to install, you may end up a unrecoverable system. > Main reason why I have not included an uninstallation script is simple. Some packages maybe already installed on your system by default. If I create an uninstall script with packages that I have set to install, you may end up a unrecoverable system.
> [!WARNING]
> Download this script on a directory where you have write permissions. ie. HOME. Or any directory within your home directory. Else script will fail
#### 🆕 Prerequisites #### 🆕 Prerequisites
- This install script is intended for atleast Server type / Minimal Arch Linux installed. - This install script is intended for atleast Server type / Minimal Arch Linux installed.
#### 🔘 Pipewire and Pipewire audio > [!NOTE]
- This script will install pipewire and will also disable or will uninstall pulseaudio. If you dont want it, you can simply just delete pipewire.sh in install-scripts folder before installing. > 🔘 Pipewire and Pipewire audio
- This script will install pipewire and will also disable or will uninstall pulseaudio. If you dont want it, edit install.sh, about line 191 and comment the line `execute_script "pipewire.sh"` or you can simply just delete pipewire.sh in install-scripts directory before installing.
#### ✨ Costumize the packages to be installed #### ✨ Costumize the packages to be installed
- inside the install-scripts folder, you can edit 00-hypr-pkgs.sh. Care though as the Hyprland Dots may not work properly! - inside the install-scripts directory, you can edit 00-hypr-pkgs.sh. Care though as the Hyprland Dots may not work properly!
- default GTK theme if agreed to be installed is Tokyo night GTK themes (dark and light) + Tokyo night SE icons
#### 💫 SDDM and GTK Themes offered #### 💫 SDDM and GTK Themes offered
- If you opted to install SDDM theme, here's the [`LINK`](https://github.com/JaKooLit/simple-sddm) - If you opted to install SDDM theme, here's the [`LINK`](https://github.com/JaKooLit/simple-sddm-2)
- If you opted to install GTK Themes, Icons and Cursor offered are Tokyo Nights. [`LINK`](https://github.com/JaKooLit/GTK-themes-icons) & Bibata Cursor Modern Ice - If you opted to install GTK Themes, Icons, here's the [`LINK`](https://github.com/JaKooLit/GTK-themes-icons) & Bibata Cursor Modern Ice (assets directory)
#### 👀 NVidia GPU Owners. #### 👀 NVidia GPU Owners.
- By default, nvidia-dkms will be installed. and only supports GTX 900 and newer. If required to install older driver, edit the nvidia.sh in scripts-folder - By default, nvidia-dkms will be installed. and only supports GTX 900 and newer. If required to install older driver, edit the nvidia.sh in install-scripts directory
> [!IMPORTANT] > [!IMPORTANT]
> If you want to use nouveau driver, choose N when asked if you have nvidia gpu. This is because the nvidia installer part, it will blacklist nouveau. Hyprland will still be installed but it will skip blacklisting nouveau. > If you want to use nouveau driver, choose N when asked if you have nvidia gpu. This is because the nvidia installer part, it will blacklist nouveau. Hyprland will still be installed but it will skip blacklisting nouveau.
- After installation, check [`THIS`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Notes_to_remember#--for-nvidia-gpu-users)
#### ✨ to run ## ✨ to use this script
> clone this repo (latest commit only) to reduce file size download by using git. Change directory, make executable and run the script > clone this repo (latest commit only) to reduce file size download by using git. Change directory, make executable and run the script
>[!IMPORTANT]
> Make sure you have base-devel installed
- Without base-devel installed, script will fail
```bash ```bash
git clone --depth=1 https://github.com/JaKooLit/Arch-Hyprland.git git clone --depth=1 https://github.com/JaKooLit/Arch-Hyprland.git ~/Arch-Hyprland
cd Arch-Hyprland cd ~/Arch-Hyprland
chmod +x install.sh chmod +x install.sh
./install.sh ./install.sh
``` ```
@ -90,22 +138,31 @@ source ~/.zshrc
- SUPER H for HINT or click on the waybar HINT! Button - SUPER H for HINT or click on the waybar HINT! Button
- Head over to [FAQ](https://github.com/JaKooLit/Hyprland-Dots/wiki/FAQ) and [TIPS](https://github.com/JaKooLit/Hyprland-Dots/wiki/TIPS) - Head over to [FAQ](https://github.com/JaKooLit/Hyprland-Dots/wiki/FAQ) and [TIPS](https://github.com/JaKooLit/Hyprland-Dots/wiki/TIPS)
#### 🙋 Got a questions regarding the Hyprland Dots or configurations? 🙋 #### 🙋 Got a questions regarding the Hyprland Dots or configurations? 🙋
- Head over to wiki Link [`WIKI`](https://github.com/JaKooLit/Hyprland-Dots/wiki) - Head over to wiki Link [`WIKI`](https://github.com/JaKooLit/Hyprland-Dots/wiki)
#### ⌨ Keybinds
- Keybinds [`CLICK`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Keybinds)
> [!TIP]
> KooL's Dots v2.3.7 has a searchable keybind function via rofi. (SUPER SHIFT K) or right click the `HINTS` waybar button
#### 🙋 👋 Having issues or questions? #### 🙋 👋 Having issues or questions?
- for the install part, kindly open issue on this repo - for the install part, kindly open issue on this repo
- for the Pre-configured Hyprland dots / configuration, submit issue [`here`](https://github.com/JaKooLit/Hyprland-Dots/issues) - for the Pre-configured Hyprland dots / configuration, submit issue [`here`](https://github.com/JaKooLit/Hyprland-Dots/issues)
#### 🔧 Proper way to re-installing a particular script from install-scripts folder #### 🔧 Proper way to re-installing a particular script from install-scripts directory
- CD into Arch-Hyprland Folder and then ran the below command. - CD into Arch-Hyprland directory and then ran the below command.
- i.e. `./install-scripts/gtk-themes` - For reinstall GTK Themes. - i.e. `./install-scripts/gtk-themes.sh` - For reinstall GTK Themes or
- `./install-scripts/sddm.sh` - For reinstall sddm
> [!IMPORTANT]
> DO NOT cd into install-scripts directory as script will most likely to fail
#### 🛣️ Roadmap: #### 🛣️ Roadmap:
- ~~[ ] Install zsh and oh-my-zsh without necessary steps above~~ DONE - ~~[ ] Install zsh and oh-my-zsh without necessary steps above~~ DONE
- [ ] possibly adding gruvbox themes, cursors, icons - [ ] possibly adding gruvbox themes, cursors, icons
#### ⚠️ some known issues #### ❗ some known issues for nvidia
- reports from members of my discord, states that some users of nvidia are getting stuck on sddm login. credit to @Kenni Fix stated was - reports from members of my discord, states that some users of nvidia are getting stuck on sddm login. credit to @Kenni Fix stated was
``` ```
while in sddm press ctrl+alt+F2 or F3 while in sddm press ctrl+alt+F2 or F3
@ -115,17 +172,44 @@ log into your account
`ls -l /dev/dri/by-path` to check where the symlink points to `ls -l /dev/dri/by-path` to check where the symlink points to
) )
``` ```
- add "env = WLR_DRM_DEVICES,/dev/dri/cardX" to the ENVvariables config (.config/hypr/UserConfigs/ENVariables.conf) ; X being where the symlink of the gpu points to - add "env = WLR_DRM_DEVICES,/dev/dri/cardX" to the ENVvariables config `~/.config/hypr/UserConfigs/ENVariables.conf` ; X being where the symlink of the gpu points to
- more info from the hyprland wiki [`Hyprland Wiki Link`](https://wiki.hyprland.org/FAQ/#my-external-monitor-is-blank--doesnt-render--receives-no-signal-laptop) - more info from the hyprland wiki [`Hyprland Wiki Link`](https://wiki.hyprland.org/FAQ/#my-external-monitor-is-blank--doesnt-render--receives-no-signal-laptop)
- reports from a member of discord for Nvidia for additional env's
- remove # from the following env's on
```
env = GBM_BACKEND,nvidia-drm
env = WLR_RENDERER_ALLOW_SOFTWARE,1
```
#### ❗ other known issues
- [ ] If you are using this script on an Arch-Based distros like Arco linux, or cachy OS or EOS or Manjaro, make sure to install pipewire, pipewire-pulse & pipewire-audio first. Arco Linux, on some of their ISO's still shipped with pulseaudio as audio backend. You will experience getting "stuck" on installation.
- [ ] To install pipewire and its services , `sudo pacman -S pipewire wireplumber pipewire-audio pipewire-pulse` . When prompted, remove / replace pulseaudio. After that, you can ran `./install.sh`
- [ ] installing of cava-git on a newly installed Arch makes the install keep hanging. Switched back to cava. After booting and logged in, if cava dont work, replace it cava-git `yay -S cava-git` or `paru -S cava-git`
> [!NOTE]
> Auto start of Hyprland after login (no SDDM or GDM or any login managers)
- [ ] This was disabled a few days ago. (19 May 2024). This was because some users, after they used the Distro-Hyprland scripts with other DE (gnome-wayland or plasma-wayland), if they choose to login into gnome-wayland for example, Hyprland is starting.
- [ ] to avoid this, I disabled it. You can re-enable again by editing `~/.zprofile` . Remove all the # on the first lines
- [ ] ROFI issues (scaling, unexplained scaling etc). This is most likely to experience if you are installing on a system where rofi is currently installed. To fix it uninstall rofi and install rofi-wayland . `sudo pacman -Rns rofi` . Install rofi-wayland with `sudo pacman -S rofi-wayland`. Rofi-wayland is compatible with x11 so no need to worry.
#### 🫥 Improving performance for Older Nvidia Cards using driver 470 #### 🫥 Improving performance for Older Nvidia Cards using driver 470
- [`SEE HERE`](https://github.com/JaKooLit/Hyprland-Dots/discussions/123#discussion-6035205) - [`SEE HERE`](https://github.com/JaKooLit/Hyprland-Dots/discussions/123#discussion-6035205)
#### 📒 Final Notes #### 📒 Final Notes
- join my discord channel [`Discord`](https://discord.gg/V2SJ92vbEN) - join my discord channel [`Discord`](https://discord.com/invite/9JEgZsfhex)
- Feel free to copy, re-distribute, and use this script however you want. Would appreciate if you give me some loves by crediting my work :) - Feel free to copy, re-distribute, and use this script however you want. Would appreciate if you give me some loves by crediting my work :)
#### ⏩ Contributing
- As stated above, these script does not contain actual config files. These are only the installer of packages
- The development branch of this script is pulling the latest "stable" releases of the Hyprland-Dotfiles.
- If you want to contribute and/or test the Hyprland-Dotfiles (development branch), [`Hyprland-Dots-Development`](https://github.com/JaKooLit/Hyprland-Dots/tree/development)
#### 👍👍👍 Thanks and Credits! #### 👍👍👍 Thanks and Credits!
- [`Hyprland`](https://hyprland.org/) Of course to Hyprland and @vaxerski for this awesome Dynamic Tiling Manager. - [`Hyprland`](https://hyprland.org/) Of course to Hyprland and @vaxerski for this awesome Dynamic Tiling Manager.
@ -142,3 +226,7 @@ log into your account
#### 📹 Youtube videos (Click to view and watch the playlist) 📹 #### 📹 Youtube videos (Click to view and watch the playlist) 📹
[![Youtube Playlist Thumbnail](https://raw.githubusercontent.com/JaKooLit/screenshots/main/Youtube.png)](https://youtube.com/playlist?list=PLDtGd5Fw5_GjXCznR0BzCJJDIQSZJRbxx&si=iaNjLulFdsZ6AV-t) [![Youtube Playlist Thumbnail](https://raw.githubusercontent.com/JaKooLit/screenshots/main/Youtube.png)](https://youtube.com/playlist?list=PLDtGd5Fw5_GjXCznR0BzCJJDIQSZJRbxx&si=iaNjLulFdsZ6AV-t)
## 🥰🥰 💖💖 👍👍👍
[![Stargazers over time](https://starchart.cc/JaKooLit/Arch-Hyprland.svg?variant=adaptive)](https://starchart.cc/JaKooLit/Arch-Hyprland)

View File

@ -1,3 +1,3 @@
if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" -eq 1 ]; then #if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" -eq 1 ]; then
Hyprland # Hyprland
fi #fi

View File

@ -5,7 +5,7 @@ export ZSH="$HOME/.oh-my-zsh"
ZSH_THEME="xiong-chiamiov-plus" ZSH_THEME="xiong-chiamiov-plus"
plugins=( plugins=(
git git
archlinux archlinux
zsh-autosuggestions zsh-autosuggestions
@ -17,22 +17,22 @@ source $ZSH/oh-my-zsh.sh
# Check archlinux plugin commands here # Check archlinux plugin commands here
# https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/archlinux # https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/archlinux
# Display Pokemon-colorscripts # Display Pokemon-colorscripts
# Project page: https://gitlab.com/phoneybadger/pokemon-colorscripts#on-other-distros-and-macos # Project page: https://gitlab.com/phoneybadger/pokemon-colorscripts#on-other-distros-and-macos
#pokemon-colorscripts --no-title -s -r #pokemon-colorscripts --no-title -s -r
# fastfetch. Will be disabled if above colorscript was chosen to install
fastfetch -c $HOME/.config/fastfetch/config-compact.jsonc
### From this line is for pywal-colors # Set-up icons for files/folders in terminal
# Import colorscheme from 'wal' asynchronously alias ls='eza -a --icons'
# & # Run the process in the background. alias ll='eza -al --icons'
# ( ) # Hide shell job control messages. alias lt='eza -a --tree --level=1 --icons'
# Not supported in the "fish" shell.
#(cat ~/.cache/wal/sequences &)
# Alternative (blocks terminal for 0-3ms) # Set-up FZF key bindings (CTRL R for fuzzy history finder)
#cat ~/.cache/wal/sequences source <(fzf --zsh)
# To add support for TTYs this line can be optionally added.
#source ~/.cache/wal/colors-tty.sh
HISTFILE=~/.zsh_history
HISTSIZE=10000
SAVEHIST=10000
setopt appendhistory

124
assets/Thunar/accels.scm Normal file
View File

@ -0,0 +1,124 @@
; Thunar GtkAccelMap rc-file -*- scheme -*-
; this file is an automated accelerator map dump
;
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-type" "")
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-last-modified" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/cut" "<Primary>x")
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-size" "")
; (gtk_accel_path "<Actions>/ThunarWindow/file-menu" "")
; (gtk_accel_path "<Actions>/ThunarWindow/close-tab" "<Primary>w")
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size" "")
; (gtk_accel_path "<Actions>/ThunarWindow/new-window" "<Primary>n")
; (gtk_accel_path "<Actions>/ThunarWindow/clear-directory-specific-settings" "")
; (gtk_accel_path "<Actions>/ThunarWindow/close-window" "<Primary>q")
; (gtk_accel_path "<Actions>/ThunarWindow/open-parent" "<Alt>Up")
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-menu" "")
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size-in-bytes" "")
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab" "<Primary>Page_Up")
; (gtk_accel_path "<Actions>/ThunarBookmarks/3925ac2f7e4055558c447a20c2e047ad" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/open" "<Primary>o")
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-ascending" "")
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-split-view" "F3")
; (gtk_accel_path "<Actions>/ThunarActionManager/copy-2" "<Primary>Insert")
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete" "Delete")
; (gtk_accel_path "<Actions>/ThunarWindow/open-recent" "")
; (gtk_accel_path "<Actions>/ThunarWindow/view-configure-toolbar" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/forward" "<Alt>Right")
; (gtk_accel_path "<Actions>/ThunarActionManager/restore" "")
; (gtk_accel_path "<Actions>/ThunarBookmarks/9f0d843e4074095bf657b996746ec75c" "")
; (gtk_accel_path "<Actions>/ThunarWindow/open-location-alt" "<Alt>d")
; (gtk_accel_path "<Actions>/ThunarBookmarks/a16339451d60726d0755a887bd755af2" "")
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>KP_Subtract")
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
; (gtk_accel_path "<Actions>/ThunarBookmarks/44e0e66b3d753576f90ed75c87917822" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-descending" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-name" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/select-all-files" "<Primary>a")
; (gtk_accel_path "<Actions>/ThunarActionManager/execute" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/properties" "<Alt>Return")
; (gtk_accel_path "<Actions>/ThunarActionManager/cut-2" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-dtime" "")
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab" "<Primary>Page_Down")
; (gtk_accel_path "<Actions>/ThunarActionManager/paste-2" "<Shift>Insert")
; (gtk_accel_path "<Actions>/ThunarWindow/open-templates" "")
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-filetype" "")
; (gtk_accel_path "<Actions>/ThunarWindow/close-all-windows" "<Primary><Shift>w")
; (gtk_accel_path "<Actions>/ThunarStandardView/create-document" "")
; (gtk_accel_path "<Actions>/ThunarWindow/detach-tab" "")
; (gtk_accel_path "<Actions>/ThunarBookmarks/978d3e7a7225e42c977fe94183792d87" "")
; (gtk_accel_path "<Actions>/ThunarWindow/cancel-search" "Escape")
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt2" "<Primary>equal")
; (gtk_accel_path "<Actions>/ThunarShortcutsPane/sendto-shortcuts" "<Primary>d")
; (gtk_accel_path "<Actions>/ThunarActionManager/undo" "<Primary>z")
; (gtk_accel_path "<Actions>/ThunarStandardView/toggle-sort-order" "")
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt" "F5")
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-entry" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/paste" "<Primary>v")
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt1" "<Primary>KP_Add")
; (gtk_accel_path "<Actions>/ThunarWindow/view-menubar" "<Primary>m")
; (gtk_accel_path "<Actions>/ThunarStandardView/back" "<Alt>Left")
; (gtk_accel_path "<Actions>/ThunarWindow/open-desktop" "")
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-detailed-list" "<Primary>2")
; (gtk_accel_path "<Actions>/ThunarActionManager/restore-show" "")
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out" "<Primary>minus")
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-display-name" "")
; (gtk_accel_path "<Actions>/ThunarWindow/sendto-menu" "")
; (gtk_accel_path "<Actions>/ThunarWindow/go-menu" "")
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "")
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
; (gtk_accel_path "<Actions>/ThunarWindow/reload" "<Primary>r")
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-3" "<Shift>KP_Delete")
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-side-pane" "F9")
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
; (gtk_accel_path "<Actions>/ThunarBookmarks/a50db0a56a1e6c31df6bf18c55eb78cd" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/arrange-items-menu" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/unselect-all-files" "Escape")
; (gtk_accel_path "<Actions>/ThunarWindow/open-computer" "")
; (gtk_accel_path "<Actions>/ThunarWindow/bookmarks-menu" "")
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-image-preview" "")
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-icons" "<Primary>1")
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-2" "<Shift>Delete")
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in" "<Primary>plus")
; (gtk_accel_path "<Actions>/ThunarStandardView/rename" "F2")
; (gtk_accel_path "<Actions>/ThunarWindow/open-location" "<Primary>l")
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-compact-list" "<Primary>3")
; (gtk_accel_path "<Actions>/ThunarWindow/view-menu" "")
; (gtk_accel_path "<Actions>/ThunarWindow/search" "<Primary>f")
; (gtk_accel_path "<Actions>/ThunarWindow/new-tab" "<Primary>t")
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset" "<Primary>0")
; (gtk_accel_path "<Actions>/ThunarWindow/contents/help-menu" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-tab" "<Primary><Shift>p")
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-buttons" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/redo" "<Primary><Shift>z")
; (gtk_accel_path "<Actions>/ThunarWindow/open-trash" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-window" "<Primary><Shift>o")
; (gtk_accel_path "<Actions>/ThunarWindow/view-statusbar" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/open-location" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/duplicate" "")
; (gtk_accel_path "<Actions>/ThunarBookmarks/c76f07a72d3c8ef5d4bf8e84c8981221" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete-2" "KP_Delete")
; (gtk_accel_path "<Actions>/ThunarStandardView/create-folder" "<Primary><Shift>n")
; (gtk_accel_path "<Actions>/ThunarWindow/open-home" "<Alt>Home")
; (gtk_accel_path "<Actions>/ThunarWindow/show-hidden" "<Primary>h")
; (gtk_accel_path "<Actions>/ThunarStandardView/set-default-app" "")
; (gtk_accel_path "<Actions>/ThunarWindow/empty-trash" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt" "BackSpace")
; (gtk_accel_path "<Actions>/ThunarWindow/preferences" "")
; (gtk_accel_path "<Actions>/ThunarBookmarks/8ea92a0b35875a5a65ffafcf02698ce8" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/delete" "")
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-tree" "<Primary>e")
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-system" "")
; (gtk_accel_path "<Actions>/ThunarWindow/open-network" "")
; (gtk_accel_path "<Actions>/ThunarActionManager/sendto-desktop" "")
; (gtk_accel_path "<Actions>/ThunarStandardView/make-link" "")
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset-alt" "<Primary>KP_0")
; (gtk_accel_path "<Actions>/ThunarWindow/about" "")

View File

@ -0,0 +1,17 @@
[Settings]
gtk-theme-name=Andromeda-dark
gtk-icon-theme-name=Flat-Remix-Blue-Dark
gtk-font-name=Fira Code Semi-Bold 14
gtk-cursor-theme-name=Bibata-Modern-Ice
gtk-cursor-theme-size=24
gtk-toolbar-style=GTK_TOOLBAR_ICONS
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1
gtk-menu-images=1
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=0
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintslight
gtk-xft-rgba=rgb
gtk-application-prefer-dark-theme=1

View File

@ -1,5 +0,0 @@
[Desktop Entry]
Name=Hyprland
Comment=An intelligent dynamic tiling Wayland compositor
Exec=Hyprland
Type=Application

View File

@ -1,9 +1,10 @@
#!/bin/bash #!/bin/bash
# 💫 https://github.com/JaKooLit 💫 # # 💫 https://github.com/JaKooLit 💫 #
# base devel # # base devel + archlinux-keyring #
base=( base=(
base-devel base-devel
archlinux-keyring
) )
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ## ## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh" source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
@ -16,7 +17,7 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_base.log"
printf "\n%s - Installing base-devel \n" "${NOTE}" printf "\n%s - Installing base-devel \n" "${NOTE}"
for PKG1 in "${base[@]}"; do for PKG1 in "${base[@]}"; do
install_package_pacman "$PKG1" | tee -a "$LOG" sudo pacman -S --noconfirm "$PKG1" | tee -a "$LOG"
done done
clear clear

View File

@ -12,74 +12,69 @@ Extra=(
) )
hypr_package=( hypr_package=(
cliphist aylurs-gtk-shell
curl cliphist
grim curl
gvfs grim
gvfs-mtp gvfs
imagemagick gvfs-mtp
jq imagemagick
kitty inxi
kvantum jq
nano kitty
network-manager-applet kvantum
pamixer nano
pavucontrol network-manager-applet
pipewire-alsa pamixer
playerctl pavucontrol
polkit-gnome pipewire-alsa
python-requests playerctl
python-pywal polkit-gnome
qt5ct python-requests
qt6ct python-pyquery
qt6-svg qt5ct
rofi-lbonn-wayland-git qt6ct
slurp qt6-svg
swappy rofi-wayland
swayidle slurp
swaylock-effects-git swappy
swaync swaync
swww swww
waybar wallust
wget waybar
wl-clipboard wget
wlogout wl-clipboard
xdg-user-dirs wlogout
xdg-utils xdg-user-dirs
yad xdg-utils
yad
) )
# the following packages can be deleted. however, dotfiles may not work properly # the following packages can be deleted. however, dotfiles may not work properly
hypr_package_2=( hypr_package_2=(
brightnessctl brightnessctl
btop btop
cava cava
eog eog
gnome-system-monitor fastfetch
mousepad gnome-system-monitor
mpv mousepad
mpv-mpris mpv
nvtop mpv-mpris
nwg-look-bin nvtop
pacman-contrib nwg-look
vim pacman-contrib
yt-dlp qalculate-gtk
vim
yt-dlp
) )
fonts=( # List of packages to uninstall as it conflicts with swaync and rofi-wayland
adobe-source-code-pro-fonts
noto-fonts-emoji
otf-font-awesome
ttf-droid
ttf-fira-code
ttf-jetbrains-mono
ttf-jetbrains-mono-nerd
)
# List of packages to uninstall as it conflicts with swaync or causing swaync to not function properly
uninstall=( uninstall=(
dunst dunst
mako mako
rofi
wallust-git
) )
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ## ## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
@ -95,24 +90,31 @@ source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time # Set the name of the log file to include the current date and time
LOG="Install-Logs/install-$(date +%d-%H%M%S)_hypr-pkgs.log" LOG="Install-Logs/install-$(date +%d-%H%M%S)_hypr-pkgs.log"
# uninstalling conflicting packages
# Initialize a variable to track overall errors
overall_failed=0
printf "\n%s - Removing Mako, Dunst, and rofi as they conflict with swaync and rofi-wayland \n" "${NOTE}"
for PKG in "${uninstall[@]}"; do
uninstall_package "$PKG" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then
# Track if any uninstallation failed
overall_failed=1
fi
done
if [ $overall_failed -ne 0 ]; then
echo -e "${ERROR} Some packages failed to uninstall. Please check the log."
fi
# Installation of main components # Installation of main components
printf "\n%s - Installing hyprland packages.... \n" "${NOTE}" printf "\n%s - Installing hyprland packages.... \n" "${NOTE}"
for PKG1 in "${hypr_package[@]}" "${hypr_package_2[@]}" "${fonts[@]}" "${Extra[@]}"; do for PKG1 in "${hypr_package[@]}" "${hypr_package_2[@]}" "${Extra[@]}"; do
install_package "$PKG1" 2>&1 | tee -a "$LOG" install_package "$PKG1" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $PKG1 install had failed, please check the log" echo -e "\e[1A\e[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
exit 1
fi
done
# Checking if mako or dunst is installed
printf "\n%s - Checking if mako or dunst are installed and removing for swaync to work properly \n" "${NOTE}"
for PKG in "${uninstall[@]}"; do
uninstall_package "$PKG" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $PKG uninstallation had failed, please check the log"
exit 1 exit 1
fi fi
done done

View File

@ -0,0 +1,67 @@
#!/bin/bash
# 💫 https://github.com/JaKooLit 💫 #
# Final checking if packages are installed
# NOTE: These package check are only the essentials
packages=(
aylurs-gtk-shell
cliphist
kvantum
rofi-wayland
imagemagick
swaync
swww
wallust
waybar
wl-clipboard
wlogout
kitty
hypridle
hyprlock
hyprland
pyprland
)
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
# Change the working directory to the parent directory of the script
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
LOG="Install-Logs/00_CHECK-$(date +%d-%H%M%S)_installed.log"
printf "\n%s - Final Check if essential packages where installed \n" "${NOTE}"
# Initialize an empty array to hold missing packages
missing=()
# Loop through each package
for pkg in "${packages[@]}"; do
# Check if the package is installed
if ! pacman -Qi "$pkg" > /dev/null 2>&1; then
missing+=("$pkg")
fi
done
# Check if the missing array is empty or not
if [ ${#missing[@]} -eq 0 ]; then
echo "${OK} All essential packages are installed." | tee -a "$LOG"
else
# Message to user on missing packages
echo "${WARN} The following packages are missing and will be logged:"
# Log only the missing packages and inform the user
for pkg in "${missing[@]}"; do
echo "$pkg"
echo "$pkg" >> "$LOG" # Log the missing package to the file
done
# Add a timestamp when the missing packages were logged
echo "${NOTE} Missing packages logged at $(date)" >> "$LOG"
fi

View File

@ -8,7 +8,7 @@ set -e
OK="$(tput setaf 2)[OK]$(tput sgr0)" OK="$(tput setaf 2)[OK]$(tput sgr0)"
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)" ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)" NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
WARN="$(tput setaf 166)[WARN]$(tput sgr0)" WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)" CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166) ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3) YELLOW=$(tput setaf 3)
@ -65,18 +65,22 @@ install_package() {
# Function for uninstalling packages # Function for uninstalling packages
uninstall_package() { uninstall_package() {
local pkg="$1"
# Checking if package is installed # Checking if package is installed
if pacman -Qi "$1" &>> /dev/null ; then if pacman -Qi "$pkg" &>> /dev/null ; then
# Package is installed # Package is installed
echo -e "${NOTE} Uninstalling $1 ..." echo -e "${NOTE} Uninstalling $pkg ..."
sudo pacman -Rns --noconfirm "$1" 2>&1 | tee -a "$LOG" sudo pacman -R --noconfirm "$pkg" 2>&1 | tee -a "$LOG" | grep -v "error: target not found"
# Making sure package is uninstalled # Check if the package was uninstalled
if ! pacman -Qi "$1" &>> /dev/null ; then if ! pacman -Qi "$pkg" &>> /dev/null ; then
echo -e "\e[1A\e[K${OK} $1 was uninstalled." echo -e "\e[1A\e[K${OK} $pkg was uninstalled."
else else
# Something went wrong, exiting to review log echo -e "\e[1A\e[K${ERROR} $pkg failed to uninstall. Please check the log."
echo -e "\e[1A\e[K${ERROR} $1 failed to uninstall. Please check the log." return 1
exit 1
fi fi
else
echo -e "${NOTE} $pkg is not installed, skipping uninstallation."
fi fi
} return 0
}

View File

@ -22,7 +22,9 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_input.log"
while true; do while true; do
echo "${WARN} This script will add your user to the 'input' group." echo "${WARN} This script will add your user to the 'input' group."
echo "${NOTE} Please note that adding yourself to the 'input' group might be necessary for waybar keyboard-state functionality." echo "${NOTE} Please note that adding yourself to the 'input' group might be necessary for waybar keyboard-state functionality."
printf "\n%.0s" {1..1}
if [[ -z $input_group_choid ]]; then if [[ -z $input_group_choid ]]; then
read -p "${YELLOW}Do you want to proceed? (y/n): ${RESET}" input_group_choid read -p "${YELLOW}Do you want to proceed? (y/n): ${RESET}" input_group_choid
fi fi

View File

@ -3,9 +3,9 @@
# Bluetooth Stuff # # Bluetooth Stuff #
blue=( blue=(
bluez bluez
bluez-utils bluez-utils
blueman blueman
) )
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ## ## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
@ -25,7 +25,7 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_bluetooth.log"
printf "${NOTE} Installing Bluetooth Packages...\n" printf "${NOTE} Installing Bluetooth Packages...\n"
for BLUE in "${blue[@]}"; do for BLUE in "${blue[@]}"; do
install_package "$BLUE" 2>&1 | tee -a "$LOG" install_package "$BLUE" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $BLUE install had failed, please check the install.log"; exit 1; } [ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $BLUE Package installation failed, Please check the installation logs"; exit 1; }
done done
printf " Activating Bluetooth Services...\n" printf " Activating Bluetooth Services...\n"

View File

@ -0,0 +1,29 @@
#!/bin/bash
# 💫 https://github.com/JaKooLit 💫 #
# Hyprland-Dots to download from main #
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Check if Hyprland-Dots exists
printf "${NOTE} Downloading KooL's Hyprland Dots....\n"
if [ -d Hyprland-Dots ]; then
cd Hyprland-Dots
git stash
git pull
git stash apply
chmod +x copy.sh
./copy.sh
else
if git clone --depth 1 https://github.com/JaKooLit/Hyprland-Dots; then
cd Hyprland-Dots || exit 1
chmod +x copy.sh
./copy.sh
else
echo -e "$ERROR Can't download Hyprland-Dots"
fi
fi
clear

46
install-scripts/fonts.sh Executable file
View File

@ -0,0 +1,46 @@
#!/bin/bash
# 💫 https://github.com/JaKooLit 💫 #
# Fonts #
# These fonts are minimun required for pre-configured dots to work. You can add here as required
# WARNING! If you remove packages here, dotfiles may not work properly.
# and also, ensure that packages are present in AUR and official Arch Repo
fonts=(
adobe-source-code-pro-fonts
noto-fonts-emoji
otf-font-awesome
ttf-droid
ttf-fira-code
ttf-jetbrains-mono
ttf-jetbrains-mono-nerd
)
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
# Change the working directory to the parent directory of the script
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
LOG="Install-Logs/install-$(date +%d-%H%M%S)_fonts.log"
# Installation of main components
printf "\n%s - Installing necessary fonts.... \n" "${NOTE}"
for PKG1 in "${fonts[@]}"; do
install_package "$PKG1" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
exit 1
fi
done
clear

View File

@ -26,18 +26,18 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_themes.log"
for PKG1 in "${engine[@]}"; do for PKG1 in "${engine[@]}"; do
install_package "$PKG1" 2>&1 | tee -a "$LOG" install_package "$PKG1" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo -e "\033[1A\033[K${ERROR} - $PKG1 install had failed, please check the install.log" echo -e "\033[1A\033[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
exit 1 exit 1
fi fi
done done
# Check if the directory exists and delete it if present # Check if the directory exists and delete it if present
if [ -d "GTK-themes-icons" ]; then if [ -d "GTK-themes-icons" ]; then
echo "$NOTE Tokyo Theme GTK themes and Icons folder exist..deleting..." 2>&1 | tee -a "$LOG" echo "$NOTE GTK themes and Icons folder exist..deleting..." 2>&1 | tee -a "$LOG"
rm -rf "GTK-themes-icons" 2>&1 | tee -a "$LOG" rm -rf "GTK-themes-icons" 2>&1 | tee -a "$LOG"
fi fi
echo "$NOTE Cloning Tokyo Theme GTK themes and Icons repository..." 2>&1 | tee -a "$LOG" echo "$NOTE Cloning GTK themes and Icons repository..." 2>&1 | tee -a "$LOG"
if git clone https://github.com/JaKooLit/GTK-themes-icons.git ; then if git clone https://github.com/JaKooLit/GTK-themes-icons.git ; then
cd GTK-themes-icons cd GTK-themes-icons
chmod +x auto-extract.sh chmod +x auto-extract.sh
@ -45,7 +45,7 @@ if git clone https://github.com/JaKooLit/GTK-themes-icons.git ; then
cd .. cd ..
echo "$OK Extracted GTK Themes & Icons to ~/.icons & ~/.themes folders" 2>&1 | tee -a "$LOG" echo "$OK Extracted GTK Themes & Icons to ~/.icons & ~/.themes folders" 2>&1 | tee -a "$LOG"
else else
echo "$ERROR Download failed for Tokyo Theme GTK themes and Icons.." 2>&1 | tee -a "$LOG" echo "$ERROR Download failed for GTK themes and Icons.." 2>&1 | tee -a "$LOG"
fi fi
tar -xf "assets/Bibata-Modern-Ice.tar.xz" -C ~/.icons 2>&1 | tee -a "$LOG" tar -xf "assets/Bibata-Modern-Ice.tar.xz" -C ~/.icons 2>&1 | tee -a "$LOG"

View File

@ -3,8 +3,13 @@
# Main Hyprland Package # # Main Hyprland Package #
hypr=( hypr=(
hyprland hyprcursor
hyprcursor hyprutils
aquamarine
hypridle
hyprlock
hyprland
pyprland
) )
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ## ## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
@ -34,7 +39,7 @@ fi
printf "${NOTE} Installing Hyprland .......\n" printf "${NOTE} Installing Hyprland .......\n"
for HYPR in "${hypr[@]}"; do for HYPR in "${hypr[@]}"; do
install_package "$HYPR" 2>&1 | tee -a "$LOG" install_package "$HYPR" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $HYPR install had failed, please check the install.log"; exit 1; } [ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $HYPR Package installation failed, Please check the installation logs"; exit 1; }
done done
clear clear

View File

@ -13,11 +13,6 @@ nvidia_pkg=(
libva-nvidia-driver-git libva-nvidia-driver-git
) )
hypr=(
hyprland
hyprcursor
)
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ## ## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located # Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@ -35,19 +30,12 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_nvidia.log"
# nvidia stuff # nvidia stuff
printf "${YELLOW} Checking for other hyprland packages and remove if any..${RESET}\n" printf "${YELLOW} Checking for other hyprland packages and remove if any..${RESET}\n"
if pacman -Qs hyprland > /dev/null; then if pacman -Qs hyprland > /dev/null; then
printf "${YELLOW} Hyprland detected. uninstalling to install Hyprland-git...${RESET}\n" printf "${YELLOW} Hyprland detected. uninstalling to install Hyprland from official repo...${RESET}\n"
for hyprnvi in hyprland-git hyprland-nvidia hyprland-nvidia-git hyprland-nvidia-hidpi-git; do for hyprnvi in hyprland-git hyprland-nvidia hyprland-nvidia-git hyprland-nvidia-hidpi-git; do
sudo pacman -R --noconfirm "$hyprnvi" 2>/dev/null | tee -a "$LOG" || true sudo pacman -R --noconfirm "$hyprnvi" 2>/dev/null | tee -a "$LOG" || true
done done
fi fi
# Hyprland
printf "${NOTE} Installing Hyprland......\n"
for HYPR in "${hypr[@]}"; do
install_package "$HYPR" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $HYPR install had failed, please check the install.log"; exit 1; }
done
# Install additional Nvidia packages # Install additional Nvidia packages
printf "${YELLOW} Installing addition Nvidia packages...\n" printf "${YELLOW} Installing addition Nvidia packages...\n"
for krnl in $(cat /usr/lib/modules/*/pkgbase); do for krnl in $(cat /usr/lib/modules/*/pkgbase); do
@ -75,23 +63,32 @@ if [ -f "$NVEA" ]; then
else else
printf "\n" printf "\n"
printf "${YELLOW} Adding options to $NVEA..." printf "${YELLOW} Adding options to $NVEA..."
sudo echo -e "options nvidia-drm modeset=1" | sudo tee -a /etc/modprobe.d/nvidia.conf 2>&1 | tee -a "$LOG" sudo echo -e "options nvidia_drm modeset=1 fbdev=1" | sudo tee -a /etc/modprobe.d/nvidia.conf 2>&1 | tee -a "$LOG"
printf "\n" printf "\n"
fi fi
# additional for GRUB users # Additional for GRUB users
# Check if /etc/default/grub exists # Check if /etc/default/grub exists
if [ -f /etc/default/grub ]; then if [ -f /etc/default/grub ]; then
# Check if nvidia_drm.modeset=1 is already present # Check if nvidia-drm.modeset=1 is present
if ! sudo grep -q "nvidia-drm.modeset=1" /etc/default/grub; then if ! sudo grep -q "nvidia-drm.modeset=1" /etc/default/grub; then
# Add nvidia_drm.modeset=1 to GRUB_CMDLINE_LINUX_DEFAULT # Add nvidia-drm.modeset=1 to GRUB_CMDLINE_LINUX_DEFAULT
sudo sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT=".*\)"/\1 nvidia-drm.modeset=1"/' /etc/default/grub sudo sed -i -e 's/\(GRUB_CMDLINE_LINUX_DEFAULT=".*\)"/\1 nvidia-drm.modeset=1"/' /etc/default/grub
# Regenerate GRUB configuration
sudo grub-mkconfig -o /boot/grub/grub.cfg
echo "nvidia-drm.modeset=1 added to /etc/default/grub" 2>&1 | tee -a "$LOG" echo "nvidia-drm.modeset=1 added to /etc/default/grub" 2>&1 | tee -a "$LOG"
else
echo "nvidia-drm.modeset=1 is already present in /etc/default/grub" 2>&1 | tee -a "$LOG"
fi fi
# Check if nvidia_drm.fbdev=1 is present
if ! sudo grep -q "nvidia_drm.fbdev=1" /etc/default/grub; then
# Add nvidia_drm.fbdev=1 to GRUB_CMDLINE_LINUX_DEFAULT
sudo sed -i -e 's/\(GRUB_CMDLINE_LINUX_DEFAULT=".*\)"/\1 nvidia_drm.fbdev=1"/' /etc/default/grub
echo "nvidia_drm.fbdev=1 added to /etc/default/grub" 2>&1 | tee -a "$LOG"
fi
# Regenerate GRUB configuration if any changes were made
if sudo grep -q "nvidia-drm.modeset=1" /etc/default/grub || sudo grep -q "nvidia_drm.fbdev=1" /etc/default/grub; then
sudo grub-mkconfig -o /boot/grub/grub.cfg
fi
else else
echo "/etc/default/grub does not exist" echo "/etc/default/grub does not exist"
fi fi

View File

@ -12,7 +12,7 @@ LOG="install-$(date +%d-%H%M%S)_paru.log"
OK="$(tput setaf 2)[OK]$(tput sgr0)" OK="$(tput setaf 2)[OK]$(tput sgr0)"
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)" ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)" NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
WARN="$(tput setaf 166)[WARN]$(tput sgr0)" WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)" CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166) ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3) YELLOW=$(tput setaf 3)
@ -24,9 +24,9 @@ if [ ! -d Install-Logs ]; then
mkdir Install-Logs mkdir Install-Logs
fi fi
# checking if paru-bin exist and removing if it is # checking if paru exist and removing if it is
if [ -d paru-bin ]; then if [ -d paru ]; then
rm -rf paru-bin 2>&1 | tee -a "$LOG" rm -rf paru 2>&1 | tee -a "$LOG"
fi fi
# Check for AUR helper and install if not found # Check for AUR helper and install if not found
@ -37,8 +37,8 @@ if [ -n "$ISAUR" ]; then
else else
printf "\n%s - AUR helper was NOT located\n" "$WARN" printf "\n%s - AUR helper was NOT located\n" "$WARN"
printf "\n%s - Installing paru from AUR\n" "${NOTE}" printf "\n%s - Installing paru from AUR\n" "${NOTE}"
git clone https://aur.archlinux.org/paru-bin.git || { printf "%s - Failed to clone paru from AUR\n" "${ERROR}"; exit 1; } git clone https://aur.archlinux.org/paru.git || { printf "%s - Failed to clone paru from AUR\n" "${ERROR}"; exit 1; }
cd paru-bin || { printf "%s - Failed to enter paru-bin directory\n" "${ERROR}"; exit 1; } cd paru || { printf "%s - Failed to enter paru directory\n" "${ERROR}"; exit 1; }
makepkg -si --noconfirm 2>&1 | tee -a "$LOG" || { printf "%s - Failed to install paru from AUR\n" "${ERROR}"; exit 1; } makepkg -si --noconfirm 2>&1 | tee -a "$LOG" || { printf "%s - Failed to install paru from AUR\n" "${ERROR}"; exit 1; }
# moving install logs in to Install-Logs folder # moving install logs in to Install-Logs folder

View File

@ -8,6 +8,7 @@ pipewire=(
pipewire-audio pipewire-audio
pipewire-alsa pipewire-alsa
pipewire-pulse pipewire-pulse
sof-firmware
) )
############## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ############## ############## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##############
@ -26,12 +27,6 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_pipewire.log"
ISAUR=$(command -v yay || command -v paru) ISAUR=$(command -v yay || command -v paru)
# Removal of pulseaudio
printf "${YELLOW}Removing pulseaudio stuff...${RESET}\n"
for pulseaudio in pulseaudio pulseaudio-alsa pulseaudio-bluetooth; do
sudo pacman -R --noconfirm "$pulseaudio" 2>/dev/null | tee -a "$LOG" || true
done
# Disabling pulseaudio to avoid conflicts # Disabling pulseaudio to avoid conflicts
systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>/dev/null && tee -a "$LOG" systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>/dev/null && tee -a "$LOG"
@ -39,7 +34,7 @@ systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>/dev/null
printf "${NOTE} Installing Pipewire Packages...\n" printf "${NOTE} Installing Pipewire Packages...\n"
for PIPEWIRE in "${pipewire[@]}"; do for PIPEWIRE in "${pipewire[@]}"; do
install_package "$PIPEWIRE" 2>&1 | tee -a "$LOG" install_package "$PIPEWIRE" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $PIPEWIRE install had failed. Please check the install.log"; exit 1; } [ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $PIPEWIRE Package installation failed, Please check the installation logs"; exit 1; }
done done
printf "Activating Pipewire Services...\n" printf "Activating Pipewire Services...\n"

View File

@ -18,16 +18,19 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_rog.log"
### Install software for Asus ROG laptops ### ### Install software for Asus ROG laptops ###
printf " Installing ASUS ROG packages...\n" printf " Installing ASUS ROG packages...\n"
for ASUS in asusctl supergfxctl rog-control-center; do for ASUS in power-profiles-daemon asusctl supergfxctl rog-control-center; do
install_package "$ASUS" 2>&1 | tee -a "$LOG" install_package "$ASUS" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $ASUS install had failed, please check the install.log" echo -e "\e[1A\e[K${ERROR} - $ASUS Package installation failed, Please check the installation logs"
exit 1 exit 1
fi fi
done done
printf " Activating ROG services...\n" printf " Activating ROG services...\n"
sudo systemctl enable --now supergfxd 2>&1 | tee -a "$LOG" sudo systemctl enable supergfxd 2>&1 | tee -a "$LOG"
printf " enabling power-profiles-daemon...\n"
sudo systemctl enable power-profiles-daemon 2>&1 | tee -a "$LOG"
clear clear

View File

@ -6,9 +6,9 @@ if [[ $USE_PRESET = [Yy] ]]; then
fi fi
sddm=( sddm=(
qt5-graphicaleffects qt6-5compat
qt5-quickcontrols2 qt6-declarative
qt5-svg qt6-svg
sddm sddm
) )
@ -31,7 +31,7 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_sddm.log"
printf "${NOTE} Installing sddm and dependencies........\n" printf "${NOTE} Installing sddm and dependencies........\n"
for package in "${sddm[@]}"; do for package in "${sddm[@]}"; do
install_package "$package" 2>&1 | tee -a "$LOG" install_package "$package" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $package install has failed, please check the install.log"; exit 1; } [ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $package Package installation failed, Please check the installation logs"; exit 1; }
done done
# Check if other login managers installed and disabling its service before enabling sddm # Check if other login managers installed and disabling its service before enabling sddm
@ -52,7 +52,8 @@ sddm_conf_dir=/etc/sddm.conf.d
wayland_sessions_dir=/usr/share/wayland-sessions wayland_sessions_dir=/usr/share/wayland-sessions
[ ! -d "$wayland_sessions_dir" ] && { printf "$CAT - $wayland_sessions_dir not found, creating...\n"; sudo mkdir "$wayland_sessions_dir" 2>&1 | tee -a "$LOG"; } [ ! -d "$wayland_sessions_dir" ] && { printf "$CAT - $wayland_sessions_dir not found, creating...\n"; sudo mkdir "$wayland_sessions_dir" 2>&1 | tee -a "$LOG"; }
sudo cp assets/hyprland.desktop "$wayland_sessions_dir/" 2>&1 | tee -a "$LOG"
printf "\n%.0s" {1..2}
# SDDM-themes # SDDM-themes
valid_input=false valid_input=false
@ -63,20 +64,20 @@ while [ "$valid_input" != true ]; do
if [[ $install_sddm_theme =~ ^[Yy]$ ]]; then if [[ $install_sddm_theme =~ ^[Yy]$ ]]; then
printf "\n%s - Installing Simple SDDM Theme\n" "${NOTE}" printf "\n%s - Installing Simple SDDM Theme\n" "${NOTE}"
# Check if /usr/share/sddm/themes/simple-sddm exists and remove if it does # Check if /usr/share/sddm/themes/simple-sddm-2 exists and remove if it does
if [ -d "/usr/share/sddm/themes/simple-sddm" ]; then if [ -d "/usr/share/sddm/themes/simple-sddm-2" ]; then
sudo rm -rf "/usr/share/sddm/themes/simple-sddm" sudo rm -rf "/usr/share/sddm/themes/simple-sddm-2"
echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm' directory." 2>&1 | tee -a "$LOG" echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm-2' directory." 2>&1 | tee -a "$LOG"
fi fi
# Check if simple-sddm directory exists in the current directory and remove if it does # Check if simple-sddm-2 directory exists in the current directory and remove if it does
if [ -d "simple-sddm" ]; then if [ -d "simple-sddm-2" ]; then
rm -rf "simple-sddm" rm -rf "simple-sddm-2"
echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm' directory from the current location." 2>&1 | tee -a "$LOG" echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm-2' directory from the current location." 2>&1 | tee -a "$LOG"
fi fi
if git clone https://github.com/JaKooLit/simple-sddm.git; then if git clone --depth 1 https://github.com/JaKooLit/simple-sddm-2.git; then
while [ ! -d "simple-sddm" ]; do while [ ! -d "simple-sddm-2" ]; do
sleep 1 sleep 1
done done
@ -85,8 +86,8 @@ while [ "$valid_input" != true ]; do
echo -e "\e[1A\e[K${OK} - Directory '/usr/share/sddm/themes' created." 2>&1 | tee -a "$LOG" echo -e "\e[1A\e[K${OK} - Directory '/usr/share/sddm/themes' created." 2>&1 | tee -a "$LOG"
fi fi
sudo mv simple-sddm /usr/share/sddm/themes/ sudo mv simple-sddm-2 /usr/share/sddm/themes/
echo -e "[Theme]\nCurrent=simple-sddm" | sudo tee "$sddm_conf_dir/10-theme.conf" &>> "$LOG" echo -e "[Theme]\nCurrent=simple-sddm-2" | sudo tee "$sddm_conf_dir/theme.conf.user" &>> "$LOG"
else else
echo -e "\e[1A\e[K${ERROR} - Failed to clone the theme repository. Please check your internet connection" | tee -a "$LOG" >&2 echo -e "\e[1A\e[K${ERROR} - Failed to clone the theme repository. Please check your internet connection" | tee -a "$LOG" >&2
fi fi

View File

@ -2,12 +2,17 @@
# 💫 https://github.com/JaKooLit 💫 # # 💫 https://github.com/JaKooLit 💫 #
# Thunar # # Thunar #
if [[ $USE_PRESET = [Yy] ]]; then
source ./preset.sh
fi
thunar=( thunar=(
thunar thunar
thunar-volman thunar-volman
tumbler tumbler
ffmpegthumbnailer ffmpegthumbnailer
thunar-archive-plugin file-roller
thunar-archive-plugin
) )
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ## ## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
@ -28,11 +33,27 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_thunar.log"
printf "${NOTE} Installing Thunar Packages...\n" printf "${NOTE} Installing Thunar Packages...\n"
for THUNAR in "${thunar[@]}"; do for THUNAR in "${thunar[@]}"; do
install_package "$THUNAR" 2>&1 | tee -a "$LOG" install_package "$THUNAR" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $THUNAR install had failed, please check the install.log"; exit 1; } [ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $THUNAR Package installation failed, Please check the installation logs"; exit 1; }
done done
printf "\n%.0s" {1..2}
# Ask the user if they want to use Thunar as the default file manager
read -p "${CAT} Do you want to set Thunar as the default file manager? (y/n): " thunar_default
if [[ "$thunar_default" == [Yy] ]]; then
# Setting Thunar as the default file manager
xdg-mime default thunar.desktop inode/directory
xdg-mime default thunar.desktop application/x-wayland-gnome-saved-search
echo "${OK} Thunar has been set as the default file manager." 2>&1 | tee -a "$LOG"
else
echo "${NOTE} you choose not to set Thunar as default file manager." 2>&1 | tee -a "$LOG"
fi
printf "\n"
# Check for existing configs and copy if does not exist # Check for existing configs and copy if does not exist
for DIR1 in Thunar xfce4; do for DIR1 in gtk-3.0 Thunar xfce4; do
DIRPATH=~/.config/$DIR1 DIRPATH=~/.config/$DIR1
if [ -d "$DIRPATH" ]; then if [ -d "$DIRPATH" ]; then
echo -e "${NOTE} Config for $DIR1 found, no need to copy." 2>&1 | tee -a "$LOG" echo -e "${NOTE} Config for $DIR1 found, no need to copy." 2>&1 | tee -a "$LOG"

View File

@ -6,8 +6,8 @@ if [[ $USE_PRESET = [Yy] ]]; then
fi fi
xdg=( xdg=(
xdg-desktop-portal-hyprland xdg-desktop-portal-hyprland
xdg-desktop-portal-gtk xdg-desktop-portal-gtk
) )
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ## ## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
@ -28,18 +28,17 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_xdph.log"
for xdgs in "${xdg[@]}"; do for xdgs in "${xdg[@]}"; do
install_package "$xdgs" 2>&1 | tee -a "$LOG" install_package "$xdgs" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $xdph install had failed, please check the install.log" echo -e "\e[1A\e[K${ERROR} - $xdph Package installation failed, Please check the installation logs"
exit 1 exit 1
fi fi
done done
printf "\n"
printf "${NOTE} Checking for other XDG-Desktop-Portal-Implementations....\n" printf "${NOTE} Checking for other XDG-Desktop-Portal-Implementations....\n"
sleep 1 sleep 1
printf "\n" printf "\n"
printf "${NOTE} XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! I can't remove it... sorry...\n" printf "${NOTE} XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! I can't remove it... sorry...\n"
while true; do while true; do
printf "\n%.0s" {1..2}
if [[ -z $XDPH1 ]]; then if [[ -z $XDPH1 ]]; then
read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1 read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1
fi fi

View File

@ -12,7 +12,7 @@ LOG="install-$(date +%d-%H%M%S)_yay.log"
OK="$(tput setaf 2)[OK]$(tput sgr0)" OK="$(tput setaf 2)[OK]$(tput sgr0)"
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)" ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)" NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
WARN="$(tput setaf 166)[WARN]$(tput sgr0)" WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)" CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166) ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3) YELLOW=$(tput setaf 3)
@ -23,9 +23,9 @@ if [ ! -d Install-Logs ]; then
mkdir Install-Logs mkdir Install-Logs
fi fi
# Check Existing yay-bin # Check Existing yay
if [ -d yay-bin ]; then if [ -d yay ]; then
rm -rf yay-bin 2>&1 | tee -a "$LOG" rm -rf yay 2>&1 | tee -a "$LOG"
fi fi
# Check for AUR helper and install if not found # Check for AUR helper and install if not found
@ -35,8 +35,8 @@ if [ -n "$ISAUR" ]; then
else else
printf "\n%s - AUR helper was NOT located\n" "$WARN" printf "\n%s - AUR helper was NOT located\n" "$WARN"
printf "\n%s - Installing yay from AUR\n" "${NOTE}" printf "\n%s - Installing yay from AUR\n" "${NOTE}"
git clone https://aur.archlinux.org/yay-bin.git || { printf "%s - Failed to clone yay from AUR\n" "${ERROR}"; exit 1; } git clone https://aur.archlinux.org/yay.git || { printf "%s - Failed to clone yay from AUR\n" "${ERROR}"; exit 1; }
cd yay-bin || { printf "%s - Failed to enter yay-bin directory\n" "${ERROR}"; exit 1; } cd yay || { printf "%s - Failed to enter yay directory\n" "${ERROR}"; exit 1; }
makepkg -si --noconfirm 2>&1 | tee -a "$LOG" || { printf "%s - Failed to install yay from AUR\n" "${ERROR}"; exit 1; } makepkg -si --noconfirm 2>&1 | tee -a "$LOG" || { printf "%s - Failed to install yay from AUR\n" "${ERROR}"; exit 1; }
# moving install logs in to Install-Logs folder # moving install logs in to Install-Logs folder

View File

@ -6,8 +6,10 @@ if [[ $USE_PRESET = [Yy] ]]; then
fi fi
zsh=( zsh=(
zsh eza
zsh-completions zsh
zsh-completions
fzf
) )
@ -32,7 +34,11 @@ while true; do
case "$pokemon_choice" in case "$pokemon_choice" in
[Yy]*) [Yy]*)
zsh+=('pokemon-colorscripts-git') zsh+=('pokemon-colorscripts-git')
sed -i '/#pokemon-colorscripts --no-title -s -r/s/^#//' assets/.zshrc sed -i '/#pokemon-colorscripts --no-title -s -r/s/^#//' assets/.zshrc >> "$LOG" 2>&1
# commenting out fastfetch since pokemon was chosen to install
sed -i '/^fastfetch -c $HOME\/.config\/fastfetch\/config-compact.jsonc/s/^/#/' assets/.zshrc >> "$LOG" 2>&1
break break
;; ;;
[Nn]*) [Nn]*)
@ -50,7 +56,7 @@ printf "${NOTE} Installing core zsh packages...${RESET}\n"
for ZSH in "${zsh[@]}"; do for ZSH in "${zsh[@]}"; do
install_package "$ZSH" 2>&1 | tee -a "$LOG" install_package "$ZSH" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $ZSH install had failed, please check the install.log" echo -e "\e[1A\e[K${ERROR} - $ZSH Package installation failed, Please check the installation logs"
fi fi
done done

View File

@ -1,14 +1,48 @@
#!/bin/bash #!/bin/bash
# https://github.com/JaKooLit # https://github.com/JaKooLit
# Set some colors for output messages
OK="$(tput setaf 2)[OK]$(tput sgr0)"
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3)
RESET=$(tput sgr0)
# Check if running as root. If root, script will exit # Check if running as root. If root, script will exit
if [[ $EUID -eq 0 ]]; then if [[ $EUID -eq 0 ]]; then
echo "This script should not be executed as root! Exiting......." echo "$ERROR This script should not be executed as root! Exiting......."
exit 1 exit 1
fi fi
clear clear
# Check if PulseAudio package is installed
if pacman -Qq | grep -qw '^pulseaudio$'; then
echo "$ERROR PulseAudio is detected as installed. Uninstall it first or edit install.sh on line 211 (execute_script 'pipewire.sh')."
exit 1
fi
# Check if base-devel is installed
if pacman -Q base-devel &> /dev/null; then
echo "base-devel is already installed."
else
echo "$NOTE Install base-devel.........."
if sudo pacman -S --noconfirm --needed base-devel; then
echo "$OK base-devel has been installed successfully."
else
echo "$ERROR base-devel not found nor cannot be installed."
echo "$ACTION Please install base-devel manually before running this script... Exiting"
exit 1
fi
fi
clear
printf "\n%.0s" {1..3} printf "\n%.0s" {1..3}
echo " | _. |/ _ _ | o _|_ " echo " | _. |/ _ _ | o _|_ "
echo " \_| (_| o |\ (_) (_) |_ | |_ " echo " \_| (_| o |\ (_) (_) |_ | |_ "
@ -27,39 +61,25 @@ echo
read -p "$(tput setaf 6)Would you like to proceed? (y/n): $(tput sgr0)" proceed read -p "$(tput setaf 6)Would you like to proceed? (y/n): $(tput sgr0)" proceed
printf "\n%.0s" {1..2} printf "\n%.0s" {1..2}
echo "$(tput bold)$(tput setaf 7)Choose Y to use preset ONLY once you reviewed, updated or updated the preset.sh $(tput sgr0)"
echo "$(tput bold)$(tput setaf 7)If you are not sure what to do, choose N in the "Use Preset Settings" question $(tput sgr0)"
printf "\n%.0s" {1..1}
read -p "$(tput setaf 6)Would you like to Use Preset Settings? (y/n): $(tput sgr0)" use_preset
printf "\n%.0s" {1..3}
if [ "$proceed" != "y" ]; then if [ "$proceed" != "y" ]; then
echo "Installation aborted." echo "Installation aborted."
printf "\n%.0s" {1..2}
exit 1 exit 1
fi fi
# Create Directory for Install Logs printf "\n%.0s" {1..2}
if [ ! -d Install-Logs ]; then
mkdir Install-Logs echo "$(tput bold)$(tput setaf 166)ATTENTION: Choosing Y on use preset question will install also nvidia stuff! $(tput sgr0)"
fi echo "$(tput bold)$(tput setaf 3)CTRL C to cancel and edit the file preset.sh $(tput sgr0)"
echo "$(tput bold)$(tput setaf 7)If you are not sure what to do, answer N in here $(tput sgr0)"
read -p "$(tput setaf 6)Would you like to Use Preset Settings (See note above)? (y/n): $(tput sgr0)" use_preset
# Use of Preset Settings # Use of Preset Settings
if [[ $use_preset = [Yy] ]]; then if [[ $use_preset = [Yy] ]]; then
source ./preset.sh source ./preset.sh
fi fi
# Set some colors for output messages
OK="$(tput setaf 2)[OK]$(tput sgr0)"
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3)
RESET=$(tput sgr0)
# Function to colorize prompts # Function to colorize prompts
colorize_prompt() { colorize_prompt() {
local color="$1" local color="$1"
@ -82,6 +102,11 @@ LOG="install-$(date +%d-%H%M%S).log"
# xdph="" # xdph=""
# zsh="" # zsh=""
# Create Directory for Install Logs
if [ ! -d Install-Logs ]; then
mkdir Install-Logs
fi
# Define the directory where your scripts are located # Define the directory where your scripts are located
script_directory=install-scripts script_directory=install-scripts
@ -170,11 +195,12 @@ printf "\n"
# Ensuring all in the scripts folder are made executable # Ensuring all in the scripts folder are made executable
chmod +x install-scripts/* chmod +x install-scripts/*
sleep 0.5 sleep 1
# Ensuring base-devel is installed # Ensuring base-devel is installed
execute_script "00-base.sh" execute_script "00-base.sh"
sleep 0.5 sleep 1
execute_script "pacman.sh" execute_script "pacman.sh"
sleep 1
# Execute AUR helper script based on user choice # Execute AUR helper script based on user choice
if [ "$aur_helper" == "paru" ]; then if [ "$aur_helper" == "paru" ]; then
execute_script "paru.sh" execute_script "paru.sh"
@ -183,19 +209,21 @@ elif [ "$aur_helper" == "yay" ]; then
fi fi
# Install hyprland packages # Install hyprland packages
execute_script "00-hypr-pkgs.sh" execute_script "01-hypr-pkgs.sh"
# Install pipewire and pipewire-audio # Install pipewire and pipewire-audio
execute_script "pipewire.sh" execute_script "pipewire.sh"
# Install necessary fonts
execute_script "fonts.sh"
# Install hyprland
execute_script "hyprland.sh"
if [ "$nvidia" == "Y" ]; then if [ "$nvidia" == "Y" ]; then
execute_script "nvidia.sh" execute_script "nvidia.sh"
fi fi
if [ "$nvidia" == "N" ]; then
execute_script "hyprland.sh"
fi
if [ "$gtk_themes" == "Y" ]; then if [ "$gtk_themes" == "Y" ]; then
execute_script "gtk_themes.sh" execute_script "gtk_themes.sh"
fi fi
@ -227,26 +255,38 @@ if [ "$rog" == "Y" ]; then
fi fi
if [ "$dots" == "Y" ]; then if [ "$dots" == "Y" ]; then
execute_script "dotfiles.sh" execute_script "dotfiles-main.sh"
fi fi
clear
printf "\n${OK} Yey! Installation Completed.\n" # final check essential packages if it is installed
printf "\n" execute_script "02-Final-Check.sh"
sleep 2
printf "\n${NOTE} You can start Hyprland by typing Hyprland (IF SDDM is not installed) (note the capital H!).\n"
printf "\n"
printf "\n${NOTE} It is highly recommended to reboot your system.\n\n"
read -rp "${CAT} Would you like to reboot now? (y/n): " HYP printf "\n%.0s" {1..1}
if [[ "$HYP" =~ ^[Yy]$ ]]; then # Check if hyprland or hyprland-git is installed
if [[ "$nvidia" == "Y" ]]; then if pacman -Q hyprland &> /dev/null || pacman -Q hyprland-git &> /dev/null; then
echo "${NOTE} NVIDIA GPU detected. Rebooting the system..." printf "\n${OK} Hyprland is installed. However, some essential packages may not be installed Please see above!"
printf "\n${CAT} Ignore this message if it states 'All essential packages are installed.'\n"
sleep 2
printf "\n${NOTE} You can start Hyprland by typing 'Hyprland' (IF SDDM is not installed) (note the capital H!).\n"
printf "\n${NOTE} However, it is highly recommended to reboot your system.\n\n"
# Prompt user to reboot
read -rp "${CAT} Would you like to reboot now? (y/n): " HYP
# Check if the user answered 'y' or 'Y'
if [[ "$HYP" =~ ^[Yy]$ ]]; then
if [[ "$nvidia" == "Y" ]]; then
echo "${NOTE} NVIDIA GPU detected. Rebooting the system..."
fi
systemctl reboot systemctl reboot
else fi
systemctl reboot else
fi # Print error message if neither package is installed
printf "\n${WARN} Hyprland failed to install. Please check 00_CHECK-time_installed.log and other files Install-Logs/ directory...\n\n"
exit 1
fi fi

View File

@ -32,11 +32,12 @@ dots="Y"
### These are the sub-questions of the above choices ### These are the sub-questions of the above choices
### Would you like to blacklist nouveau? (y/n) ### Would you like to blacklist nouveau? (y/n)
blacklist_nouveau="Y" blacklist_nouveau="Y"
# Ask the user if they want to use Thunar as the default file manager
# Do you want to set Thunar as the default file manager? (y/n): "
thunar_default="Y"
### XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! Script cant remove nor disable it. ### XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! Script cant remove nor disable it.
### Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) ### Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n)
XDPH1="Y" XDPH1="Y"
### SDDM is already installed. Would you like to manually install sddm-git to remove it? This requires manual intervention. (y/n)
manual_install_sddm="N"
### OPTIONAL - Would you like to install SDDM themes? (y/n) ### OPTIONAL - Would you like to install SDDM themes? (y/n)
install_sddm_theme="Y" install_sddm_theme="Y"
### " This script will add your user to the 'input' group." ### " This script will add your user to the 'input' group."