diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml
new file mode 100644
index 0000000..91106f3
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug.yml
@@ -0,0 +1,83 @@
+name: Bug Report
+description: Something is not working right
+title: "[Bug]: "
+labels: ["bug"]
+assignees:
+ - JaKooLit
+
+body:
+ - type: checkboxes
+ attributes:
+ label: Already reported ? *
+ description: Before opening a new bug report, please take a moment to search through the current open and closed issues to check if it already exists.
+ options:
+ - label: I have searched the existing open and closed issues.
+ required: true
+
+ - type: dropdown
+ id: type
+ attributes:
+ label: Regression?
+ description: |
+ Regression means that something used to work but no longer does.
+ options:
+ - "Yes"
+ - "No"
+ - "Not sure"
+ validations:
+ required: true
+
+ - type: textarea
+ id: ver
+ attributes:
+ label: System Info and Version
+ description: |
+ Paste the output of `inxi --full` here.
+ install inxi if command not found.
+ value: "
+ System/Version info
+
+
+ ```
+
+
+
+ ```
+
+
+ "
+ validations:
+ required: true
+
+ - type: textarea
+ id: dots
+ attributes:
+ label: KooL's Dots version
+ description: |
+ Paste the output of `find ~/.config/hypr/ -type f -name 'v*' -exec basename {} \;`
+ This is just KooL's Hyprland Dots version.
+ validations:
+ required: true
+
+ - type: textarea
+ id: desc
+ attributes:
+ label: Description
+ description: "What went wrong? What exactly happened?"
+ validations:
+ required: true
+
+ - type: textarea
+ id: repro
+ attributes:
+ label: How to reproduce
+ description: "How can someone else reproduce the issue?"
+ validations:
+ required: true
+
+ - type: textarea
+ id: logs
+ attributes:
+ label: install logs, images or videos
+ description: |
+ Anything that can help. Please always ATTACH and not paste them.
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
deleted file mode 100644
index 7167670..0000000
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ /dev/null
@@ -1,53 +0,0 @@
----
-name: Bug report
-about: Create a report to help us improve
-title: "[Bug]: Short description of the issue"
-labels: "Something isn't working"
----
-
-## Bug Report
-
-### Before submitting report
-
-[Kindly review the log files in Install-Logs directory. Some apps may have not installed properly.]
-
-### Description
-
-[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
-
-1. [First Step]
-2. [Second Step]
-3. [and so on...]
-
-### Expected Behavior
-
-[What did you expect to happen?]
-
-### Actual Behavior
-
-[What actually happened?]
-
-### Screenshots
-
-[If applicable, add screenshots to help explain your problem.]
-
-### Environment
-
-[Please add any other relevant information about the bug and remove the unnecessary lines.]
-
-### show output of `inxi -CGIsSMnr` install package `inxi` if not exist
-show output here
-```
-
-
-```
-
-### 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.]
-
diff --git a/.github/ISSUE_TEMPLATE/custom.md b/.github/ISSUE_TEMPLATE/custom.md
deleted file mode 100644
index 22af1dc..0000000
--- a/.github/ISSUE_TEMPLATE/custom.md
+++ /dev/null
@@ -1,49 +0,0 @@
----
-name: Custom template
-about: Use this template to submit a custom issue
-title: "[Custom]: Short description of the issue"
-labels: "custom"
----
-
-## Custom Template
-
-### Before submitting report
-
-[Kindly review the log files in Install-Logs directory. Some apps may have not installed properly.]
-
-### Description
-
-[Provide a clear and concise description of the issue or request.]
-
-### Steps to Reproduce (if applicable)
-
-1. [First Step]
-2. [Second Step]
-3. [and so on...]
-
-### Expected Behavior
-
-[What did you expect to happen?]
-
-### Actual Behavior
-
-[What actually happened?]
-
-### Screenshots (if applicable)
-
-[If applicable, add screenshots to help explain your problem.]
-
-### Proposed Solution (if applicable)
-
-[If you have a specific solution in mind, describe it here. If not, you can skip this section.]
-
-### 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.]
-
-### show output of `inxi -CGIsSMnr` install package `inxi` if not exist
-show output here
-```
-
-
-```
\ No newline at end of file
diff --git a/.github/ISSUE_TEMPLATE/documentation-update.yml b/.github/ISSUE_TEMPLATE/documentation-update.yml
new file mode 100644
index 0000000..3e3e8c2
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/documentation-update.yml
@@ -0,0 +1,30 @@
+name: Documentation update
+description: Propose a change to the project documentation wiki
+title: "[Documentation update]: "
+labels: ["documentation_update"]
+assignees:
+ - JaKooLit
+
+body:
+ - type: textarea
+ id: desc
+ attributes:
+ label: Description
+ description: "Provide a clear and concise description of the documentation update"
+ validations:
+ required: true
+
+ - type: textarea
+ id: repro
+ attributes:
+ label: Proposed Solution
+ description: "Provide a clear and concise description of the updated documentation that you'd like to see added"
+ validations:
+ required: true
+
+ - type: textarea
+ id: logs
+ attributes:
+ label: install links, images or videos
+ description: |
+ Add any other information about the documentation update here. For example, you might include links to similar documentation in other projects, or screenshots or diagrams to help explain your idea
diff --git a/.github/ISSUE_TEMPLATE/documentation_update.md b/.github/ISSUE_TEMPLATE/documentation_update.md
deleted file mode 100644
index b75d92f..0000000
--- a/.github/ISSUE_TEMPLATE/documentation_update.md
+++ /dev/null
@@ -1,24 +0,0 @@
----
-name: Documentation update
-about: Propose a change to the project documentation
-title: "[Docs]: Short description of the change"
-labels: "documentation update"
----
-
-## Documentation Update
-
-### Description
-
-[Provide a clear and concise description of the documentation update you'd like to see made.]
-
-### Current Documentation
-
-[Provide a link to the current documentation or describe where it can be found.]
-
-### Proposed Documentation
-
-[Provide a clear and concise description of the updated documentation that you'd like to see added.]
-
-### Additional Information
-
-[Add any other information about the documentation update here. For example, you might include links to similar documentation in other projects, or screenshots or diagrams to help explain your idea.]
diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml
new file mode 100644
index 0000000..6143d17
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature.yml
@@ -0,0 +1,38 @@
+name: Feature Request
+description: I'd like to propose some changes and enhancements
+title: "[Enhancement]: "
+labels: ["enhancement"]
+assignees:
+ - JaKooLit
+
+body:
+ - type: checkboxes
+ attributes:
+ label: Already reported ? *
+ description: Before opening a new feature request, please take a moment to search through the current open and closed issues / request to check if it already exists.
+ options:
+ - label: I have searched the existing open and closed request.
+ required: true
+
+ - type: textarea
+ id: desc
+ attributes:
+ label: Description
+ description: "Describe your idea?"
+ validations:
+ required: true
+
+ - type: textarea
+ id: repro
+ attributes:
+ label: Proposed Solution
+ description: "describe if you have a specific solution in mind"
+ validations:
+ required: true
+
+
+
+
+
+
+
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
deleted file mode 100644
index bd64d0a..0000000
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ /dev/null
@@ -1,28 +0,0 @@
----
-name: Feature request
-about: Suggest a feature for this project
-title: "[Feature Request]: Short description of the feature"
-labels: "enhancement, needs triage, feature request"
----
-
-## Feature Request
-
-### Description
-
-[Provide a clear and concise description of the feature you'd like to see added.]
-
-### Use Case
-
-[Describe how this feature would be useful to you or to other users of the project.]
-
-### Proposed Solution
-
-[If you have a specific solution in mind, describe it here. If not, you can skip this section.]
-
-### Alternatives
-
-[Are there any alternative solutions or workarounds that you've considered? If so, describe them here.]
-
-### Additional Information
-
-[Add any other information about the feature request here. For example, you might include links to similar features in other projects, or screenshots or diagrams to help explain your idea.]
diff --git a/CHANGELOGS.md b/CHANGELOGS.md
index 6982440..772d0c0 100644
--- a/CHANGELOGS.md
+++ b/CHANGELOGS.md
@@ -1,5 +1,29 @@
## Changelogs
+## 06 Jan 2025
+- added copying of modified fastfetch-compact for Arch
+- default theme for oh my zsh theme is now "funky"
+
+## 26 Dec 2024
+- Removal of Bibata Ice cursor on assets since its integrated in the GTK Themes and Icons extract from a separate repo
+- integrated hyprcursor in Bibata Ice Cursor
+
+## 15 Nov 2024
+- revert Aylurs GTK Shell (AGS) to install older version
+- added aylurs-gtk-shell to uninstall
+
+## 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
diff --git a/README.md b/README.md
index c11102c..1236ef9 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,10 @@
-
-
-## 💌 ** JaKooLit's Arch Hyprland Install Script ** 💌
+# 💌 ** KooL's Arch - Hyprland Install Script ** 💌
+
+
+
+
  
@@ -15,6 +12,13 @@
+
+
👇 KOOL's Hyprland-Dots related Links 👇
@@ -80,7 +84,7 @@ https://github.com/JaKooLit/Hyprland-Dots/assets/85185940/50d53755-0f11-45d6-991
> [!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.
-> [!WARNING]
+> [!CAUTION]
> 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
@@ -90,7 +94,7 @@ https://github.com/JaKooLit/Hyprland-Dots/assets/85185940/50d53755-0f11-45d6-991
> 🔘 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
+#### ✨ Customize the packages to be installed
- inside the install-scripts directory, you can edit 00-hypr-pkgs.sh. Care though as the Hyprland Dots may not work properly!
#### 💫 SDDM and GTK Themes offered
@@ -129,8 +133,9 @@ zsh
source ~/.zshrc
```
- reboot or logout
-- by default agnoster theme is installed. You can find more themes from this [`OH-MY-ZSH-THEMES`](https://github.com/ohmyzsh/ohmyzsh/wiki/Themes)
-- to change the theme, edit ~/.zshrc . Look for ZSH_THEME="desired theme"
+- by default `funky` theme is installed. You can find more themes from this [`OH-MY-ZSH-THEMES`](https://github.com/ohmyzsh/ohmyzsh/wiki/Themes)
+- to change the theme, `SUPER SHIFT O` , choose desired theme, and close and open terminal.
+- or manually edit `~/.zshrc` . Look for ZSH_THEME="desired theme"
#### ✨ TO DO once installation done and dotfiles copied
- ~~if you opted to install gtk themes, to apply the theme and icon, press the dark/light button (beside the padlock). To apply Bibata modern ice cursor, launch nwg-look (GTK Settings) through rofi.~~ Hyprland-Dots v2.1.18, initial boot file will attempt to apply GTK themes,cursor, and icons. You can tweak more using nwg-look (GTK-Settings) utility
@@ -144,6 +149,8 @@ source ~/.zshrc
#### ⌨ 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?
- for the install part, kindly open issue on this repo
diff --git a/assets/.zshrc b/assets/.zshrc
index 809eacb..d9cb41d 100644
--- a/assets/.zshrc
+++ b/assets/.zshrc
@@ -3,7 +3,7 @@
export ZSH="$HOME/.oh-my-zsh"
-ZSH_THEME="xiong-chiamiov-plus"
+ZSH_THEME="funky"
plugins=(
git
@@ -21,6 +21,9 @@ source $ZSH/oh-my-zsh.sh
# Project page: https://gitlab.com/phoneybadger/pokemon-colorscripts#on-other-distros-and-macos
#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
+
# Set-up icons for files/folders in terminal
alias ls='eza -a --icons'
alias ll='eza -al --icons'
diff --git a/assets/Bibata-Modern-Ice.tar.xz b/assets/Bibata-Modern-Ice.tar.xz
deleted file mode 100644
index b3f00c6..0000000
Binary files a/assets/Bibata-Modern-Ice.tar.xz and /dev/null differ
diff --git a/assets/fastfetch/arch.png b/assets/fastfetch/arch.png
new file mode 100644
index 0000000..cd97313
Binary files /dev/null and b/assets/fastfetch/arch.png differ
diff --git a/assets/fastfetch/config-compact.jsonc b/assets/fastfetch/config-compact.jsonc
new file mode 100644
index 0000000..c7ea378
--- /dev/null
+++ b/assets/fastfetch/config-compact.jsonc
@@ -0,0 +1,75 @@
+{
+ "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
+ "logo": {
+ "source": "~/.config/fastfetch/arch.png",
+ "type": "kitty-direct",
+ "height": 10,
+ "width": 20,
+ "padding": {
+ "top": 1
+ }
+ },
+ "display": {
+ "separator": " -> "
+ },
+ "modules": [
+ "break",
+ {
+ "type": "title",
+ "keyWidth": 10,
+ "format": " {6}{7}{8}"
+ },
+ {
+ "type": "custom",
+ "format": " ─────────────────────────── "
+ },
+ {
+ "type": "kernel",
+ "key": " ",
+ "keyColor": "yellow"
+ },
+ {
+ "type": "wm",
+ "key": " ",
+ "keyColor": "blue"
+ },
+ {
+ "type": "shell",
+ "key": " ",
+ "keyColor": "yellow"
+ },
+ {
+ "type": "terminal",
+ "key": " ",
+ "keyColor": "blue"
+ },
+ /*
+ {
+ "type": "packages",
+ "key": " ",
+ "keyColor": "yellow"
+ },
+ */
+ {
+ "type": "memory",
+ "key": " ",
+ "keyColor": "magenta",
+ // format: used / total
+ "format": "{1} / {2}"
+ },
+ {
+ "type": "uptime",
+ "key": " ",
+ "keyColor": "green"
+ },
+ {
+ "type": "custom",
+ "format": " ─────────────────────────── "
+ },
+ {
+ "type": "custom",
+ "format": " \u001b[31m \u001b[32m \u001b[33m \u001b[34m \u001b[35m \u001b[36m \u001b[37m \u001b[90m "
+ },
+ "break",
+ ]
+}
diff --git a/assets/fastfetch/config-v2.jsonc b/assets/fastfetch/config-v2.jsonc
new file mode 100644
index 0000000..cee27fd
--- /dev/null
+++ b/assets/fastfetch/config-v2.jsonc
@@ -0,0 +1,112 @@
+{
+"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
+"logo": {
+ //"source": "~/.config/fastfetch/nixos.png",
+ //"type": "kitty-direct",
+ "height": 15,
+ "width": 30,
+ "padding": {
+ "top": 1
+ }
+ },
+"display": {
+ "separator": " ➜ "
+},
+
+"modules": [
+ "break",
+ {
+ "type": "os",
+ "key": " DISTRO",
+ "keyColor": "31",
+ },
+ {
+ "type": "kernel",
+ "key": " ├ ",
+ "keyColor": "31",
+ },
+ {
+ "type": "packages",
+ "key": " ├ ",
+ "keyColor": "31",
+ },
+ {
+ "type": "shell",
+ "key": " └ ",
+ "keyColor": "31",
+ },
+ "break",
+ {
+ "type": "wm",
+ "key": " DE/WM",
+ "keyColor": "32",
+ },
+ {
+ "type": "wmtheme",
+ "key": " ├ ",
+ "keyColor": "32",
+ },
+ {
+ "type": "icons",
+ "key": " ├ ",
+ "keyColor": "32",
+ },
+ {
+ "type": "cursor",
+ "key": " ├ ",
+ "keyColor": "32",
+ },
+ {
+ "type": "terminal",
+ "key": " ├ ",
+ "keyColor": "32",
+ },
+ {
+ "type": "terminalfont",
+ "key": " └ ",
+ "keyColor": "32",
+ },
+ "break",
+ {
+ "type": "host",
+ "format": "{2}",
+ "key": " SYSTEM",
+ "keyColor": "33",
+ },
+ {
+ "type": "cpu",
+ "format": "{1} ({3}) @ {7} GHz",
+ "key": " ├ ",
+ "keyColor": "33",
+ },
+ {
+ "type": "gpu",
+ "format": "{2}",
+ "key": " ├ ",
+ "keyColor": "33",
+ },
+ {
+ "type": "memory",
+ "key": " ├ ",
+ "keyColor": "33",
+ },
+ {
+ "type": "swap",
+ "key": " ├ ",
+ "keyColor": "33",
+ },
+ {
+ "type": "disk",
+ "key": " ├ ",
+ "keyColor": "33",
+ },
+ {
+ "type": "display",
+ "key": " └ ",
+ "compactType": "original-with-refresh-rate",
+ "keyColor": "33",
+ },
+ "break",
+ "break",
+]
+}
diff --git a/assets/fastfetch/config.jsonc b/assets/fastfetch/config.jsonc
new file mode 100644
index 0000000..dfbe1c8
--- /dev/null
+++ b/assets/fastfetch/config.jsonc
@@ -0,0 +1,128 @@
+
+{
+"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
+"logo": {
+"padding": {
+"top": 1
+}
+},
+"display": {
+"separator": " "
+},
+"modules": [
+ "break",
+ {
+ "type": "os",
+ "key": " DISTRO",
+ "keyColor": "yellow"
+ },
+ {
+ "type": "kernel",
+ "key": "│ ├",
+ "keyColor": "yellow"
+ },
+ {
+ "type": "packages",
+ "key": "│ ├",
+ "keyColor": "yellow"
+ },
+ {
+ "type": "shell",
+ "key": "│ └",
+ "keyColor": "yellow"
+ },
+ {
+ "type": "wm",
+ "key": " DE/WM",
+ "keyColor": "blue"
+ },
+ {
+ "type": "wmtheme",
+ "key": "│ ├",
+ "keyColor": "blue"
+ },
+ {
+ "type": "icons",
+ "key": "│ ├",
+ "keyColor": "blue"
+ },
+ {
+ "type": "cursor",
+ "key": "│ ├",
+ "keyColor": "blue",
+ },
+ {
+ "type": "terminalfont",
+ "key": "│ ├",
+ "keyColor": "blue",
+ },
+ {
+ "type": "terminal",
+ "key": "│ └",
+ "keyColor": "blue"
+ },
+ {
+ "type": "host",
+ "key": " SYSTEM",
+ "keyColor": "green"
+ },
+ {
+ "type": "cpu",
+ "key": "│ ├",
+ "keyColor": "green"
+ },
+ {
+ "type": "gpu",
+ "key": "│ ├",
+ "format": "{2}",
+ "keyColor": "green"
+ },
+ {
+ "type": "display",
+ "key": "│ ├",
+ "keyColor": "green",
+ "compactType": "original-with-refresh-rate"
+ },
+ {
+ "type": "memory",
+ "key": "│ ├",
+ "keyColor": "green"
+ },
+ {
+ "type": "swap",
+ "key": "│ ├",
+ "keyColor": "green"
+ },
+ {
+ "type": "uptime",
+ "key": "│ ├",
+ "keyColor": "green"
+ },
+ {
+ "type": "display",
+ "key": "│ └",
+ "keyColor": "green"
+ },
+ {
+ "type": "sound",
+ "key": " AUDIO",
+ "format": "{2}",
+ "keyColor": "magenta"
+ },
+ {
+ "type": "player",
+ "key": "│ ├",
+ "keyColor": "magenta"
+ },
+ {
+ "type": "media",
+ "key": "│ └",
+ "keyColor": "magenta"
+ },
+ {
+ "type": "custom",
+ "format": "\u001b[90m \u001b[31m \u001b[32m \u001b[33m \u001b[34m \u001b[35m \u001b[36m \u001b[37m \u001b[38m \u001b[39m \u001b[39m \u001b[38m \u001b[37m \u001b[36m \u001b[35m \u001b[34m \u001b[33m \u001b[32m \u001b[31m \u001b[90m "
+ },
+ "break",
+ ]
+}
diff --git a/assets/hyprland.desktop b/assets/hyprland.desktop
deleted file mode 100644
index 8bc9468..0000000
--- a/assets/hyprland.desktop
+++ /dev/null
@@ -1,5 +0,0 @@
-[Desktop Entry]
-Name=Hyprland
-Comment=An intelligent dynamic tiling Wayland compositor
-Exec=Hyprland
-Type=Application
diff --git a/install-scripts/00-hypr-pkgs.sh b/install-scripts/01-hypr-pkgs.sh
similarity index 82%
rename from install-scripts/00-hypr-pkgs.sh
rename to install-scripts/01-hypr-pkgs.sh
index 4ca0d50..3cf84ac 100755
--- a/install-scripts/00-hypr-pkgs.sh
+++ b/install-scripts/01-hypr-pkgs.sh
@@ -12,7 +12,7 @@ Extra=(
)
hypr_package=(
- aylurs-gtk-shell
+ #aylurs-gtk-shell
cliphist
curl
grim
@@ -64,12 +64,14 @@ hypr_package_2=(
nvtop
nwg-look
pacman-contrib
+ qalculate-gtk
vim
yt-dlp
)
-# List of packages to uninstall as it conflicts with swaync and rofi-wayland
+# List of packages to uninstall as it conflicts some packages
uninstall=(
+ aylurs-gtk-shell
dunst
mako
rofi
@@ -90,15 +92,23 @@ source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
LOG="Install-Logs/install-$(date +%d-%H%M%S)_hypr-pkgs.log"
# uninstalling conflicting packages
-printf "\n%s - Removing Mako, Dunst and rofi as it conflicts with swaync and rofi-wayland \n" "${NOTE}"
+# 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
- echo -e "\e[1A\e[K${ERROR} - $PKG uninstallation failed, please check the log"
- exit 1
+ # 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
printf "\n%s - Installing hyprland packages.... \n" "${NOTE}"
diff --git a/install-scripts/02-Final-Check.sh b/install-scripts/02-Final-Check.sh
new file mode 100755
index 0000000..dc3a354
--- /dev/null
+++ b/install-scripts/02-Final-Check.sh
@@ -0,0 +1,91 @@
+#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Final checking if packages are installed
+# NOTE: These package check are only the essentials
+
+packages=(
+ cliphist
+ kvantum
+ rofi-wayland
+ imagemagick
+ swaync
+ swww
+ wallust
+ waybar
+ wl-clipboard
+ wlogout
+ kitty
+ hypridle
+ hyprlock
+ hyprland
+ pyprland
+)
+
+# Local packages that should be in /usr/local/bin/
+local_pkgs_installed=(
+ ags
+)
+
+## 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" || { echo "${ERROR} Failed to change directory to $PARENT_DIR"; exit 1; }
+
+# Source the global functions script
+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 were installed \n" "${NOTE}"
+# Initialize an empty array to hold missing packages
+missing=()
+local_missing=()
+
+# Function to check if a package is installed using pacman
+is_installed_pacman() {
+ pacman -Qi "$1" &>/dev/null
+}
+
+# Loop through each package
+for pkg in "${packages[@]}"; do
+ # Check if the package is installed via pacman
+ if ! is_installed_pacman "$pkg"; then
+ missing+=("$pkg")
+ fi
+done
+
+# Check for local packages
+for pkg1 in "${local_pkgs_installed[@]}"; do
+ if ! [ -f "/usr/local/bin/$pkg1" ]; then
+ local_missing+=("$pkg1")
+ fi
+done
+
+# Log missing packages
+if [ ${#missing[@]} -eq 0 ] && [ ${#local_missing[@]} -eq 0 ]; then
+ echo "${OK} All essential packages are installed." | tee -a "$LOG"
+else
+ if [ ${#missing[@]} -ne 0 ]; then
+ echo "${WARN} The following packages are not installed and will be logged:"
+ for pkg in "${missing[@]}"; do
+ echo "$pkg"
+ echo "$pkg" >> "$LOG" # Log the missing package to the file
+ done
+ fi
+
+ if [ ${#local_missing[@]} -ne 0 ]; then
+ echo "${WARN} The following local packages are missing from /usr/local/bin/ and will be logged:"
+ for pkg1 in "${local_missing[@]}"; do
+ echo "$pkg1 is not installed. Can't find it in /usr/local/bin/"
+ echo "$pkg1" >> "$LOG" # Log the missing local package to the file
+ done
+ fi
+
+ # Add a timestamp when the missing packages were logged
+ echo "${NOTE} Missing packages logged at $(date)" >> "$LOG"
+fi
+
diff --git a/install-scripts/Global_functions.sh b/install-scripts/Global_functions.sh
index 669b4f0..3393fae 100755
--- a/install-scripts/Global_functions.sh
+++ b/install-scripts/Global_functions.sh
@@ -8,7 +8,7 @@ set -e
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)"
+WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3)
@@ -31,7 +31,7 @@ install_package_pacman() {
sudo pacman -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
# Making sure package is installed
if pacman -Q "$1" &>/dev/null ; then
- echo -e "${OK} $1 was installed."
+ echo -e "\e[1A\e[K${OK} Package ${YELLOW}$1${RESET} has been successfully installed!"
else
# Something is missing, exiting to review log
echo -e "${ERROR} $1 failed to install. Please check the $LOG. You may need to install manually."
@@ -54,7 +54,7 @@ install_package() {
$ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
# Making sure package is installed
if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
+ echo -e "\e[1A\e[K${OK} Package ${YELLOW}$1${RESET} has been successfully installed!"
else
# Something is missing, exiting to review log
echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
@@ -65,18 +65,22 @@ install_package() {
# Function for uninstalling packages
uninstall_package() {
+ local pkg="$1"
+
# Checking if package is installed
- if pacman -Qi "$1" &>> /dev/null ; then
+ if pacman -Qi "$pkg" &>> /dev/null ; then
# Package is installed
- echo -e "${NOTE} Uninstalling $1 ..."
- sudo pacman -R --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is uninstalled
- if ! pacman -Qi "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was uninstalled."
+ echo -e "${NOTE} Uninstalling $pkg ..."
+ sudo pacman -R --noconfirm "$pkg" 2>&1 | tee -a "$LOG" | grep -v "error: target not found"
+ # Check if the package was uninstalled
+ if ! pacman -Qi "$pkg" &>> /dev/null ; then
+ echo -e "\e[1A\e[K${OK} $pkg was uninstalled."
else
- # Something went wrong, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to uninstall. Please check the log."
- exit 1
+ echo -e "\e[1A\e[K${ERROR} $pkg failed to uninstall. Please check the log."
+ return 1
fi
+ else
+ echo -e "${NOTE} $pkg is not installed, skipping uninstallation."
fi
-}
\ No newline at end of file
+ return 0
+}
diff --git a/install-scripts/InputGroup.sh b/install-scripts/InputGroup.sh
index f0a4d1c..0aba454 100755
--- a/install-scripts/InputGroup.sh
+++ b/install-scripts/InputGroup.sh
@@ -22,7 +22,9 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_input.log"
while true; do
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."
-
+
+ printf "\n%.0s" {1..1}
+
if [[ -z $input_group_choid ]]; then
read -p "${YELLOW}Do you want to proceed? (y/n): ${RESET}" input_group_choid
fi
diff --git a/install-scripts/ags.sh b/install-scripts/ags.sh
new file mode 100755
index 0000000..58ca5b4
--- /dev/null
+++ b/install-scripts/ags.sh
@@ -0,0 +1,80 @@
+#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Aylur's GTK Shell v 1.8.2#
+
+ags=(
+ typescript
+ npm
+ meson
+ glib2-devel
+ gjs
+ gtk3
+ gtk-layer-shell
+ upower networkmanager
+ gobject-introspection
+ libdbusmenu-gtk3
+ libsoup3
+)
+
+# specific tags to download
+ags_tag="v1.8.2"
+
+## 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)_ags.log"
+MLOG="install-$(date +%d-%H%M%S)_ags2.log"
+
+printf "\n%.0s" {1..1}
+
+# Installation of main components
+printf "\n%s - Installing AGS Dependencies \n" "${NOTE}"
+
+# Installing ags Dependencies
+for PKG1 in "${ags[@]}"; do
+ install_package "$PKG1" 2>&1 | tee -a "$LOG"
+ if [ $? -ne 0 ]; then
+ echo -e "\033[1A\033[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
+ exit 1
+ fi
+done
+
+printf "\n%.0s" {1..1}
+# ags
+printf "${NOTE} Install and Compiling Aylurs GTK shell v1.8.2..\n"
+
+# Check if folder exists and remove it
+if [ -d "ags" ]; then
+ printf "${NOTE} Removing existing ags folder...\n"
+ rm -rf "ags"
+fi
+
+# Clone nwg-look repository with the specified tag
+if git clone --recursive -b "$ags_tag" --depth 1 https://github.com/Aylur/ags.git; then
+ cd ags || exit 1
+ # Build and install ags
+ npm install
+ meson setup build
+ if sudo meson install -C build 2>&1 | tee -a "$MLOG"; then
+ printf "${OK} ags installed successfully.\n" 2>&1 | tee -a "$MLOG"
+ else
+ echo -e "${ERROR} Installation failed for ags" 2>&1 | tee -a "$MLOG"
+ fi
+
+ # Move logs to Install-Logs directory
+ mv "$MLOG" ../Install-Logs/ || true
+ cd ..
+else
+ echo -e "${ERROR} Failed to download ags Please check your connection" 2>&1 | tee -a "$LOG"
+ mv "$MLOG" ../Install-Logs/ || true
+ exit 1
+fi
+
diff --git a/install-scripts/dotfiles-main.sh b/install-scripts/dotfiles-main.sh
new file mode 100644
index 0000000..8c61643
--- /dev/null
+++ b/install-scripts/dotfiles-main.sh
@@ -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
diff --git a/install-scripts/gtk_themes.sh b/install-scripts/gtk_themes.sh
index af67e6e..4710698 100755
--- a/install-scripts/gtk_themes.sh
+++ b/install-scripts/gtk_themes.sh
@@ -38,7 +38,7 @@ if [ -d "GTK-themes-icons" ]; then
fi
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 --depth 1 https://github.com/JaKooLit/GTK-themes-icons.git ; then
cd GTK-themes-icons
chmod +x auto-extract.sh
./auto-extract.sh
@@ -48,7 +48,4 @@ else
echo "$ERROR Download failed for GTK themes and Icons.." 2>&1 | tee -a "$LOG"
fi
-tar -xf "assets/Bibata-Modern-Ice.tar.xz" -C ~/.icons 2>&1 | tee -a "$LOG"
-echo "$OK Extracted Bibata-Modern-Ice.tar.xz to ~/.icons folder." 2>&1 | tee -a "$LOG"
-
clear
\ No newline at end of file
diff --git a/install-scripts/hyprland.sh b/install-scripts/hyprland.sh
index c5c4255..c14dc43 100755
--- a/install-scripts/hyprland.sh
+++ b/install-scripts/hyprland.sh
@@ -9,13 +9,14 @@ hypr=(
hypridle
hyprlock
hyprland
- pyprland
+ pyprland
+ hyprland-qtutils
)
## 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 )"
+SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# Change the working directory to the parent directory of the script
PARENT_DIR="$SCRIPT_DIR/.."
@@ -28,18 +29,21 @@ source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Removing other Hyprland to avoid conflict
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"
- 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
- done
+ done
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 Package installation failed, Please check the installation logs"; exit 1; }
+for HYPR in "${hypr[@]}"; do
+ install_package "$HYPR" 2>&1 | tee -a "$LOG"
+ [ $? -ne 0 ] && {
+ echo -e "\e[1A\e[K${ERROR} - $HYPR Package installation failed, Please check the installation logs"
+ exit 1
+ }
done
-clear
\ No newline at end of file
+clear
diff --git a/install-scripts/paru.sh b/install-scripts/paru.sh
index 8e28d5e..c48ae9b 100755
--- a/install-scripts/paru.sh
+++ b/install-scripts/paru.sh
@@ -12,7 +12,7 @@ LOG="install-$(date +%d-%H%M%S)_paru.log"
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)"
+WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3)
@@ -24,7 +24,7 @@ if [ ! -d Install-Logs ]; then
mkdir Install-Logs
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
rm -rf paru-bin 2>&1 | tee -a "$LOG"
fi
@@ -36,10 +36,10 @@ if [ -n "$ISAUR" ]; then
printf "\n%s - AUR helper already installed, moving on..\n" "${OK}"
else
printf "\n%s - AUR helper was NOT located\n" "$WARN"
- 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; }
- cd paru-bin || { printf "%s - Failed to enter paru-bin 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; }
+ printf "\n%s - Installing paru-bin from AUR\n" "${NOTE}"
+ git clone https://aur.archlinux.org/paru-bin.git || { printf "%s - Failed to clone paru-bin from AUR\n" "${ERROR}"; exit 1; }
+ cd paru-bin || { 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-bin from AUR\n" "${ERROR}"; exit 1; }
# moving install logs in to Install-Logs folder
mv install*.log ../Install-Logs/ || true
diff --git a/install-scripts/pipewire.sh b/install-scripts/pipewire.sh
index 401c11b..0c02a41 100755
--- a/install-scripts/pipewire.sh
+++ b/install-scripts/pipewire.sh
@@ -27,12 +27,6 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_pipewire.log"
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
systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>/dev/null && tee -a "$LOG"
diff --git a/install-scripts/sddm.sh b/install-scripts/sddm.sh
index ed645a7..84441af 100755
--- a/install-scripts/sddm.sh
+++ b/install-scripts/sddm.sh
@@ -52,7 +52,8 @@ sddm_conf_dir=/etc/sddm.conf.d
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"; }
-sudo cp assets/hyprland.desktop "$wayland_sessions_dir/" 2>&1 | tee -a "$LOG"
+
+printf "\n%.0s" {1..2}
# SDDM-themes
valid_input=false
diff --git a/install-scripts/thunar.sh b/install-scripts/thunar.sh
index 3e35e24..898609a 100755
--- a/install-scripts/thunar.sh
+++ b/install-scripts/thunar.sh
@@ -2,13 +2,17 @@
# 💫 https://github.com/JaKooLit 💫 #
# Thunar #
+if [[ $USE_PRESET = [Yy] ]]; then
+ source ./preset.sh
+fi
+
thunar=(
thunar
thunar-volman
tumbler
- ffmpegthumbnailer
- file-roller
+ ffmpegthumbnailer
thunar-archive-plugin
+ xarchiver
)
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
@@ -32,6 +36,22 @@ printf "${NOTE} Installing Thunar Packages...\n"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $THUNAR Package installation failed, Please check the installation logs"; exit 1; }
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
for DIR1 in gtk-3.0 Thunar xfce4; do
DIRPATH=~/.config/$DIR1
diff --git a/install-scripts/xdph.sh b/install-scripts/xdph.sh
index 73366a6..eb1abbb 100755
--- a/install-scripts/xdph.sh
+++ b/install-scripts/xdph.sh
@@ -32,14 +32,13 @@ for xdgs in "${xdg[@]}"; do
exit 1
fi
done
-
-printf "\n"
printf "${NOTE} Checking for other XDG-Desktop-Portal-Implementations....\n"
sleep 1
printf "\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
+ printf "\n%.0s" {1..2}
if [[ -z $XDPH1 ]]; then
read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1
fi
diff --git a/install-scripts/yay.sh b/install-scripts/yay.sh
index 2ee4a59..d2c1e4f 100755
--- a/install-scripts/yay.sh
+++ b/install-scripts/yay.sh
@@ -12,7 +12,7 @@ LOG="install-$(date +%d-%H%M%S)_yay.log"
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)"
+WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3)
@@ -23,9 +23,9 @@ if [ ! -d Install-Logs ]; then
mkdir Install-Logs
fi
-# Check Existing yay-bin
-if [ -d yay-bin ]; then
- rm -rf yay-bin 2>&1 | tee -a "$LOG"
+# Check Existing yay
+if [ -d yay ]; then
+ rm -rf yay 2>&1 | tee -a "$LOG"
fi
# Check for AUR helper and install if not found
@@ -35,8 +35,8 @@ if [ -n "$ISAUR" ]; then
else
printf "\n%s - AUR helper was NOT located\n" "$WARN"
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; }
- cd yay-bin || { printf "%s - Failed to enter yay-bin directory\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 || { 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; }
# moving install logs in to Install-Logs folder
diff --git a/install-scripts/zsh.sh b/install-scripts/zsh.sh
index d792d1e..56e24d8 100755
--- a/install-scripts/zsh.sh
+++ b/install-scripts/zsh.sh
@@ -34,7 +34,11 @@ while true; do
case "$pokemon_choice" in
[Yy]*)
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
;;
[Nn]*)
diff --git a/install.sh b/install.sh
index 96c1bdc..a27d859 100755
--- a/install.sh
+++ b/install.sh
@@ -5,7 +5,7 @@
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)"
+WARN="$(tput setaf 5)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3)
@@ -21,7 +21,7 @@ fi
clear
# Check if PulseAudio package is installed
-if pacman -Qq | grep -qw pulseaudio; then
+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
@@ -209,7 +209,7 @@ elif [ "$aur_helper" == "yay" ]; then
fi
# Install hyprland packages
-execute_script "00-hypr-pkgs.sh"
+execute_script "01-hypr-pkgs.sh"
# Install pipewire and pipewire-audio
execute_script "pipewire.sh"
@@ -220,6 +220,9 @@ execute_script "fonts.sh"
# Install hyprland
execute_script "hyprland.sh"
+# Install AGS from source (older version)
+execute_script "ags.sh"
+
if [ "$nvidia" == "Y" ]; then
execute_script "nvidia.sh"
fi
@@ -255,69 +258,43 @@ if [ "$rog" == "Y" ]; then
fi
if [ "$dots" == "Y" ]; then
- execute_script "dotfiles.sh"
+ execute_script "dotfiles-main.sh"
fi
clear
-printf "\n%.0s" {1..3}
-
-# Error-checking section
-LOG_DIR="Install-Logs"
-ERROR_FILE="$LOG_DIR/00-Error.log"
-
-# Create or clear the error file
-: > "$ERROR_FILE"
-
-# Check if the Install-Logs directory exists
-if [ -d "$LOG_DIR" ]; then
- # Iterate through each file in the Install-Logs directory
- for log_file in "$LOG_DIR"/*; do
- # Check if it's a file
- if [ -f "$log_file" ]; then
- # Search for lines containing the word "error" (case-insensitive) in the log file
- if grep -i "error" "$log_file" > /dev/null; then
- # If errors are found, add the filename to the error file
- echo "${WARN} Errors found in file: $(basename "$log_file")" >> "$ERROR_FILE"
- fi
- fi
- done
-
- # Check if the error file has any content
- if [ -s "$ERROR_FILE" ]; then
- echo "${ERROR} Errors encountered during Installation. See $ERROR_FILE for details."
- else
- echo "${OK} No errors were found."
- fi
-else
- echo "Directory $LOG_DIR does not exist or could not be found."
+# copy fastfetch config if arch.png is not present
+if [ ! -f "$HOME/.config/fastfetch/arch.png" ]; then
+ cp -r assets/fastfetch "$HOME/.config/"
fi
+# final check essential packages if it is installed
+execute_script "02-Final-Check.sh"
+
printf "\n%.0s" {1..1}
# Check if hyprland or hyprland-git is installed
if pacman -Q hyprland &> /dev/null || pacman -Q hyprland-git &> /dev/null; then
- printf "\n${OK} Hyprland is installed. However, there may some errors during installation "
- printf "\n${CAT} Please see the errors in Install-Logs as stated above\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"
- printf "\n${NOTE} However, It is highly recommended to reboot your system.\n\n"
+ 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..."
- systemctl reboot
- else
- systemctl reboot
- fi
+ fi
+ systemctl reboot
fi
else
# Print error message if neither package is installed
- printf "\n${WARN} Hyprland failed to install. Please check Error Log and Install-Logs directory...\n\n"
+ 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
+
diff --git a/preset.sh b/preset.sh
index 51ee8f0..d285c3d 100644
--- a/preset.sh
+++ b/preset.sh
@@ -32,11 +32,12 @@ dots="Y"
### These are the sub-questions of the above choices
### Would you like to blacklist nouveau? (y/n)
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.
### Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n)
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)
install_sddm_theme="Y"
### " This script will add your user to the 'input' group."