diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 0000000..5581581
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,46 @@
+---
+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
+
+### Description
+
+[Provide a clear and concise description of the bug.]
+
+### 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.]
+
+e.g.,
+
+- Linux Distro: [e.g., ArchLinux, Debian, Fedora 39, OpenSuse]
+- 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
+
+[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
new file mode 100644
index 0000000..1542d0a
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/custom.md
@@ -0,0 +1,38 @@
+---
+name: Custom template
+about: Use this template to submit a custom issue
+title: "[Custom]: Short description of the issue"
+labels: "custom"
+---
+
+## Custom Template
+
+### 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.]
diff --git a/.github/ISSUE_TEMPLATE/documentation_update.md b/.github/ISSUE_TEMPLATE/documentation_update.md
new file mode 100644
index 0000000..b75d92f
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/documentation_update.md
@@ -0,0 +1,24 @@
+---
+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_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644
index 0000000..bd64d0a
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,28 @@
+---
+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/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..42811c5
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,43 @@
+# Pull Request
+
+## Description
+
+Please read these instructions and remove unnecessary text.
+
+- Try to include a summary of the changes and which issue is fixed.
+- Also include relevant motivation and context (if applicable).
+- List any dependencies that are required for this change. (e.g., packages or other PRs)
+- Provide a link if there is an issue related to this pull request. e.g., Fixes # (issue)
+- Please add Reviewers, Assignees, Labels, Projects, and Milestones to the PR. (if applicable)
+
+## Type of change
+
+Please put an `x` in the boxes that apply:
+
+- [ ] **Bug fix** (non-breaking change which fixes an issue)
+- [ ] **New feature** (non-breaking change which adds functionality)
+- [ ] **Breaking change** (fix or feature that would cause existing functionality to not work as expected)
+- [ ] **Documentation update** (non-breaking change; modified files are limited to the documentations)
+- [ ] **Technical debt** (a code change that does not fix a bug or add a feature but makes something clearer for devs)
+- [ ] **Other** (provide details below)
+
+## Checklist
+
+Please put an `x` in the boxes that apply:
+
+- [ ] I have read the [CONTRIBUTING](https://github.com/JaKooLit/Hyprland-Dots/blob/main/CONTRIBUTING.md) document.
+- [ ] My code follows the code style of this project.
+- [ ] My commit message follows the [commit guidelines](https://github.com/JaKooLit/Hyprland-Dots/blob/main/CONTRIBUTING.md#git-commit-messages).
+- [ ] My change requires a change to the documentation.
+- [ ] I want to add something in Hyprland-Dots wiki.
+- [ ] I have added tests to cover my changes.
+- [ ] I have tested my code locally and it works as expected.
+- [ ] All new and existing tests passed.
+
+## Screenshots
+
+(if appropriate)
+
+## Additional context
+
+Add any other context about the problem here.
diff --git a/COMMIT_MESSAGE_GUIDELINES.md b/COMMIT_MESSAGE_GUIDELINES.md
new file mode 100644
index 0000000..642335c
--- /dev/null
+++ b/COMMIT_MESSAGE_GUIDELINES.md
@@ -0,0 +1,149 @@
+# Commit Message Guidelines
+
+A good commit message should be descriptive and provide context about the changes made. This makes it easier to understand and review the changes in the future.
+
+Here are some guidelines for writing descriptive commit messages:
+
+- Start with a short summary of the changes made in the commit.
+
+- Use imperative mood for the summary, as if you're giving a command. For example, "Add feature" instead of "Added feature".
+
+- Provide additional details in the commit message body, if necessary. This could include the reason for the change, the impact of the change, or any dependencies that were introduced or removed.
+
+- Keep the message within 72 characters per line to ensure that it's easy to read in Git log output.
+
+Examples of good commit messages:
+
+- "Add authentication feature for user login"
+- "Fix bug causing application to crash on startup"
+- "Update documentation for API endpoints"
+
+Remember, writing descriptive commit messages can save time and frustration in the future, and help others understand the changes made to the codebase.
+
+## Commit Message Types
+
+Here's a more comprehensive list of commit types that you can use:
+
+`feat`: Adding a new feature to the project
+
+```markdown
+feat: Add multi-image upload support
+```
+
+`fix`: Fixing a bug or issue in the project
+
+```markdown
+fix: Fix bug causing application to crash on startup
+```
+
+`docs`: Updating documentation in the project
+
+```markdown
+docs: Update documentation for API endpoints
+```
+
+`style`: Making cosmetic or style changes to the project (such as changing colors or formatting code)
+
+```markdown
+style: Update colors and formatting
+```
+
+`refactor`: Making code changes that don't affect the behavior of the project, but improve its quality or maintainability
+
+```markdown
+refactor: Remove unused code
+```
+
+`test`: Adding or modifying tests for the project
+
+```markdown
+test: Add tests for new feature
+```
+
+`chore`: Making changes to the project that don't fit into any other category, such as updating dependencies or configuring the build system
+
+```markdown
+chore: Update dependencies
+```
+
+`perf`: Improving performance of the project
+
+```markdown
+perf: Improve performance of image processing
+```
+
+`security`: Addressing security issues in the project
+
+```markdown
+security: Update dependencies to address security issues
+```
+
+`merge`: Merging branches in the project
+
+```markdown
+merge: Merge branch 'feature/branch-name' into develop
+```
+
+`revert`: Reverting a previous commit
+
+```markdown
+revert: Revert "Add feature"
+```
+
+`build`: Making changes to the build system or dependencies of the project
+
+```markdown
+build: Update dependencies
+```
+
+`ci`: Making changes to the continuous integration (CI) system for the project
+
+```markdown
+ci: Update CI configuration
+```
+
+`config`: Making changes to configuration files for the project
+
+```markdown
+config: Update configuration files
+```
+
+`deploy`: Making changes to the deployment process for the project
+
+```markdown
+deploy: Update deployment scripts
+```
+
+`init`: Creating or initializing a new repository or project
+
+```markdown
+init: Initialize project
+```
+
+`move`: Moving files or directories within the project
+
+```markdown
+move: Move files to new directory
+```
+
+`rename`: Renaming files or directories within the project
+
+```markdown
+rename: Rename files
+```
+
+`remove`: Removing files or directories from the project
+
+```markdown
+remove: Remove files
+```
+
+`update`: Updating code, dependencies, or other components of the project
+
+```markdown
+update: Update code
+```
+
+These are just some examples, and you can create your own custom commit types as well. However, it's important to use them consistently and write clear, descriptive commit messages to make it easy for others to understand the changes you've made.
+
+**Important:** If you are planning to use a custom commit message type other than the ones listed above, make sure to add it to this list so that others can understand it as well. Create a pull request to add it to this file.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..17d570c
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,70 @@
+# Contributing to Community Standards
+
+Thank you for your interest in contributing to Community Standards! We welcome any contributions, including bug fixes, feature enhancements, documentation improvements, and other general improvements.
+
+## Getting Started
+
+1. Fork the branch development repository to your GitHub account. This will create a copy of this repository in your account. You can make changes to this copy without affecting the original repository.
+ - For fork this repository, click the **Fork** button in the top right corner of this page or click [here](https://github.com/JaKooLit/Hyprland-Dots/fork).
+ - Make sure to uncheck the Copy the `main` branch only. This will copy the development branch and other branches (if any)
+
+2. Clone your forked repository to your local machine.
+
+ - Use the following command to clone your forked repository to your local machine.
+
+ ```bash
+ git clone --depth=1 -b development https://github.com/JaKooLit/Hyprland-Dots.git
+ ```
+
+3. Create a new branch for your changes.
+
+ - For example, to create a new branch named `your-branch-name`, use the following command.
+
+ ```bash
+ git checkout -b your-branch-name
+ ```
+
+4. Make your changes and commit them with a descriptive commit message.
+
+ - For example, to commit your changes, use the following command and make sure to follow the [commit message guidelines](https://github.com/JaKooLit/Hyprland-Dots/blob/main/COMMIT_MESSAGE_GUIDELINES.md).
+
+ ```bash
+ git commit -m "feat: add a new feature"
+ ```
+
+5. Push your changes to your forked repository.
+
+ - For example, to push your changes to your forked repository, use the following command.
+
+ ```bash
+ git push origin your-branch-name
+ ```
+
+6. Submit a **pull request** to the development branch repository.
+ - For example, to create a pull request, use the following steps.
+ 1. Go to your forked repository.
+ 2. Click the **Compare & pull request** button next to your `your-branch-name` branch.
+ 3. Add a title and description for your pull request.
+ 4. Click **Create pull request** and remember to add the relevant labels with using the [pull request template](https://github.com/JaKooLit/Hyprland-Dots/blob/templates/.github/PULL_REQUEST_TEMPLATE.md).
+
+## Guidelines
+
+- Follow the code style of the project.
+- Update the **documentation** if necessary.
+- Add tests if applicable.
+- Make sure all tests pass before submitting your changes.
+- Keep your pull request focused and avoid including unrelated changes.
+- Remeber to follow the given files before submitting your changes.
+ - [bug_report.md](https://github.com/JaKooLit/Hyprland-Dots/blob/main/.github/ISSUE_TEMPLATE/bug_report.md) - Use this template to create a report to help us improve.
+ - [feature_request.md](https://github.com/JaKooLit/Hyprland-Dots/blob/main/.github/ISSUE_TEMPLATE/feature_request.md) - Use this template to suggest a feature for this project.
+ - [documentation_update.md](https://github.com/JaKooLit/Hyprland-Dots/blob/main/.github/ISSUE_TEMPLATE/documentation_update.md) - Use this template to propose a change to the documentation.
+ - [custom.md](https://github.comJaKooLit/Hyprland-Dots/blob/main/.github/ISSUE_TEMPLATE/custom.md) - Use this template to submit a custom issue.
+ - [PULL_REQUEST_TEMPLATE.md](https://github.com/JaKooLit/Hyprland-Dots/blob/main/.github/PULL_REQUEST_TEMPLATE.md) - Use this template to submit a pull request.
+ - [COMMIT_MESSAGE_GUIDELINES.md](https://github.com/JaKooLit/Hyprland-Dots/blob/main/COMMIT_MESSAGE_GUIDELINES.md) - Read this file to learn about the commit message guidelines.
+ - [CONTRIBUTING.md](https://github.com/JaKooLit/Hyprland-Dots/blob/main/CONTRIBUTING.md) - Read this file to learn about the contributing guidelines.
+ - [LICENSE](https://github.com/JaKooLit/Hyprland-Dots/blob/main/LICENSE) - Read this file to learn about the license.
+ - [README.md](https://github.com/JaKooLit/Hyprland-Dots/blob/main/README.md) - Read this file to learn about the project.
+
+## Contact
+
+If you have any questions, feel free to contact via [GitHub Discussions](https://github.com/JaKooLit/Hyprland-Dots/discussions) or [Through Discord Server](https://discord.gg/V2SJ92vbEN)
diff --git a/README.md b/README.md
index a86670f..7ed20cb 100644
--- a/README.md
+++ b/README.md
@@ -44,7 +44,7 @@ https://github.com/JaKooLit/Hyprland-Dots/assets/85185940/4bebe592-ca43-4962-9b5
- [`MORE INFO HERE`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Install_Update)
> [!Note]
> The auto copy script will create backups of intended folders to be copied. However, still a good idea to manually backup just incase script failed to backup!
-- ~/.config (btop cava dunst hypr kitty rofi swappy swaylock waybar wlogout) - These are folders to be copied.
+- ~/.config (btop cava hypr kitty rofi swappy swaylock swaync waybar wlogout) - These are folders to be copied.
- ~/Pictures/wallpapers - Will be backed up
- clone this repo by using git. Change directory, make executable and run the script
```bash
diff --git a/config/dunst/dunstrc b/config/dunst/dunstrc
deleted file mode 100755
index 2fb4d19..0000000
--- a/config/dunst/dunstrc
+++ /dev/null
@@ -1,370 +0,0 @@
-[global]
- ### Display ###
-
- # Which monitor should the notifications be displayed on.
- monitor = 0
-
- # Display notification on focused monitor. Possible modes are:
- # mouse: follow mouse pointer
- # keyboard: follow window with keyboard focus
- # none: don't follow anything
- #
- # "keyboard" needs a window manager that exports the
- # _NET_ACTIVE_WINDOW property.
- # This should be the case for almost all modern window managers.
- #
- # If this option is set to mouse or keyboard, the monitor option
- # will be ignored.
- follow = mouse
-
- width = (250, 350)
- height = 250
- origin = top-center
- offset = 10x10
-
- notification_limit = 9
-
- progress_bar_corner_radius = 4
-
- # Show how many messages are currently hidden (because of geometry).
- indicate_hidden = yes
-
- # Shrink window if it's smaller than the width. Will be ignored if
- # width is 0.
- shrink = no
-
- # The transparency of the window. Range: [0; 100]. [x11 only]
- # This option will only work if a compositing window manager is
- # present (e.g. xcompmgr, compiz, etc.).
- #transparency = 100
-
- # Draw a line of "separator_height" pixel height between two
- # notifications.
- # Set to 0 to disable.
- separator_height = 2
-
- # Padding between text and separator.
- padding = 8
-
- # Horizontal padding.
- horizontal_padding = 8
-
- # Defines width in pixels of frame around the notification window.
- # Set to 0 to disable.
- frame_width = 2
-
- # Defines color of the frame around the notification window.
- frame_color = "#17474D"
-
- # Define a color for the separator.
- # possible values are:
- # * auto: dunst tries to find a color fitting to the background;
- # * foreground: use the same color as the foreground;
- # * frame: use the same color as the frame;
- # * anything else will be interpreted as a X color.
- separator_color = auto
-
- # Sort messages by urgency.
- sort = yes
-
- # Don't remove messages, if the user is idle (no mouse or keyboard input)
- # for longer than idle_threshold seconds.
- # Set to 0 to disable.
- # A client can set the 'transient' hint to bypass this. See the rules
- # section for how to disable this if necessary
- idle_threshold = 120
-
- ### Text ###
-
- font = Fira Code Medium 13
-
- # The spacing between lines. If the height is smaller than the
- # font height, it will get raised to the font height.
- line_height = 0
-
- # Possible values are:
- # full: Allow a small subset of html markup in notifications:
- # bold
- # italic
- # strikethrough
- # underline
- #
- # For a complete reference see
- # .
- #
- # strip: This setting is provided for compatibility with some broken
- # clients that send markup even though it's not enabled on the
- # server. Dunst will try to strip the markup but the parsing is
- # simplistic so using this option outside of matching rules for
- # specific applications *IS GREATLY DISCOURAGED*.
- #
- # no: Disable markup parsing, incoming notifications will be treated as
- # plain text. Dunst will not advertise that it has the body-markup
- # capability if this is set as a global setting.
- #
- # It's important to note that markup inside the format option will be parsed
- # regardless of what this is set to.
- markup = full
-
- # The format of the message. Possible variables are:
- # %a appname
- # %s summary
- # %b body
- # %i iconname (including its path)
- # %I iconname (without its path)
- # %p progress value if set ([ 0%] to [100%]) or nothing
- # %n progress value if set without any extra characters
- # %% Literal %
- # Markup is allowed
- format = "%s\n%b"
-
- # Alignment of message text.
- # Possible values are "left", "center" and "right".
- alignment = center
-
- # Show age of message if message is older than show_age_threshold
- # seconds.
- # Set to -1 to disable.
- show_age_threshold = 60
-
- # Split notifications into multiple lines if they don't fit into
- # geometry.
- word_wrap = yes
-
- # When word_wrap is set to no, specify where to make an ellipsis in long lines.
- # Possible values are "start", "middle" and "end".
- ellipsize = middle
-
- # Ignore newlines '\n' in notifications.
- ignore_newline = no
-
- # Stack together notifications with the same content
- stack_duplicates = true
-
- # Hide the count of stacked notifications with the same content
- hide_duplicate_count = false
-
- # Display indicators for URLs (U) and actions (A).
- show_indicators = yes
-
- ### Icons ###
-
- # Align icons left/right/off
- icon_position = left
-
- # Scale larger icons down to this size, set to 0 to disable
- max_icon_size = 32
-
- # Paths to default icons.
- #icon_path = /usr/share/icons/candy-icons/apps/scalable:/usr/share/icons/candy-icons/devices/scalable/
-
- ### History ###
-
- # Should a notification popped up from history be sticky or timeout
- # as if it would normally do.
- sticky_history = yes
-
- # Maximum amount of notifications kept in history
- history_length = 20
-
- ### Misc/Advanced ###
-
- # dmenu path.
- dmenu = /usr/bin/rofi -dmenu -p dunst
-
- # Browser for opening urls in context menu.
- browser = /usr/bin/firefox -new-tab
-
- # Always run rule-defined scripts, even if the notification is suppressed
- always_run_script = true
-
- # Define the title of the windows spawned by dunst
- title = Dunst
-
- # Define the class of the windows spawned by dunst
- class = Dunst
-
- # Define the corner radius of the notification window
- # in pixel size. If the radius is 0, you have no rounded
- # corners.
- # The radius will be automatically lowered if it exceeds half of the
- # notification height to avoid clipping text and/or icons.
- corner_radius = 12
-
- ### Legacy
-
- # Use the Xinerama extension instead of RandR for multi-monitor support.
- # This setting is provided for compatibility with older nVidia drivers that
- # do not support RandR and using it on systems that support RandR is highly
- # discouraged.
- #
- # By enabling this setting dunst will not be able to detect when a monitor
- # is connected or disconnected which might break follow mode if the screen
- # layout changes.
- force_xinerama = false
-
- ### mouse
-
- # Defines action of mouse event
- # Possible values are:
- # * none: Don't do anything.
- # * do_action: If the notification has exactly one action, or one is marked as default,
- # invoke it. If there are multiple and no default, open the context menu.
- # * close_current: Close current notification.
- # * close_all: Close all notifications.
- mouse_left_click = do_action
- mouse_middle_click = close_all
- mouse_right_click = close_current
-
-# Experimental features that may or may not work correctly. Do not expect them
-# to have a consistent behaviour across releases.
-[experimental]
- # Calculate the dpi to use on a per-monitor basis.
- # If this setting is enabled the Xft.dpi value will be ignored and instead
- # dunst will attempt to calculate an appropriate dpi value for each monitor
- # using the resolution and physical size. This might be useful in setups
- # where there are multiple screens with very different dpi values.
- per_monitor_dpi = false
-
-
-[urgency_low]
- # IMPORTANT: colors have to be defined in quotation marks.
- # Otherwise the "#" and following would be interpreted as a comment.
- background = "#00000095"
- foreground = "#fafafa"
- frame_color = "#17474D"
- timeout = 2
- # Icon for notifications with low urgency, uncomment to enable
- icon = $HOME/.config/dunst/images/bell.png
-
-[urgency_normal]
- background = "#00000095"
- foreground = "#fafafa"
- frame_color = "#17474D"
- timeout = 5
- # Icon for notifications with normal urgency, uncomment to enable
- icon = $HOME/.config/dunst/images/bell.png
-
-[urgency_critical]
- background = "#00000095"
- foreground = "#fafafa"
- frame_color = "#17474D"
- timeout = 0
- # Icon for notifications with critical urgency, uncomment to enable
- icon = $HOME/.config/dunst/images/bell.png
-
-# Every section that isn't one of the above is interpreted as a rules to
-# override settings for certain messages.
-#
-# Messages can be matched by
-# appname (discouraged, see desktop_entry)
-# body
-# category
-# desktop_entry
-# icon
-# match_transient
-# msg_urgency
-# stack_tag
-# summary
-#
-# and you can override the
-# foreground
-# format
-# frame_color
-# fullscreen
-# new_icon
-# set_stack_tag
-# set_transient
-# timeout
-# urgency
-#
-# Shell-like globbing will get expanded.
-#
-# Instead of the appname filter, it's recommended to use the desktop_entry filter.
-# GLib based applications export their desktop-entry name. In comparison to the appname,
-# the desktop-entry won't get localized.
-#
-# SCRIPTING
-# You can specify a script that gets run when the rule matches by
-# setting the "script" option.
-# The script will be called as follows:
-# script appname summary body icon urgency
-# where urgency can be "LOW", "NORMAL" or "CRITICAL".
-#
-# NOTE: if you don't want a notification to be displayed, set the format
-# to "".
-# NOTE: It might be helpful to run dunst -print in a terminal in order
-# to find fitting options for rules.
-
-# Disable the transient hint so that idle_threshold cannot be bypassed from the
-# client
-#[transient_disable]
-# match_transient = yes
-# set_transient = no
-#
-# Make the handling of transient notifications more strict by making them not
-# be placed in history.
-#[transient_history_ignore]
-# match_transient = yes
-# history_ignore = yes
-
-# fullscreen values
-# show: show the notifications, regardless if there is a fullscreen window opened
-# delay: displays the new notification, if there is no fullscreen window active
-# If the notification is already drawn, it won't get undrawn.
-# pushback: same as delay, but when switching into fullscreen, the notification will get
-# withdrawn from screen again and will get delayed like a new notification
-#[fullscreen_delay_everything]
-# fullscreen = delay
-#[fullscreen_show_critical]
-# msg_urgency = critical
-# fullscreen = show
-
-#[espeak]
-# summary = "*"
-# script = dunst_espeak.sh
-
-#[script-test]
-# summary = "*script*"
-# script = dunst_test.sh
-
-#[ignore]
-# # This notification will not be displayed
-# summary = "foobar"
-# format = ""
-
-#[history-ignore]
-# # This notification will not be saved in history
-# summary = "foobar"
-# history_ignore = yes
-
-#[skip-display]
-# # This notification will not be displayed, but will be included in the history
-# summary = "foobar"
-# skip_display = yes
-
-#[signed_on]
-# appname = Pidgin
-# summary = "*signed on*"
-# urgency = low
-#
-#[signed_off]
-# appname = Pidgin
-# summary = *signed off*
-# urgency = low
-#
-#[says]
-# appname = Pidgin
-# summary = *says*
-# urgency = critical
-#
-#[twitter]
-# appname = Pidgin
-# summary = *twitter.com*
-# urgency = normal
-#
-#[stack-volumes]
-# appname = "some_volume_notifiers"
-# set_stack_tag = "volume"
-#
-# vim: ft=cfg
diff --git a/config/hypr/UserConfigs/00-Readme b/config/hypr/UserConfigs/00-Readme
new file mode 100644
index 0000000..315e337
--- /dev/null
+++ b/config/hypr/UserConfigs/00-Readme
@@ -0,0 +1,9 @@
+Hyprland-Dots v2.2.2
+
+1.) Suggest not to rename files in this folder. As this is connected and being sourced from hyprland.conf in ~/.config/hypr
+
+2.) This folder, along with UserScripts folder will NOT be touch during update.
+
+3.) However, if hyprland has a big change in settings, i.e., blur section is moved into another group, you should managed the change.
+
+I will update the Hyprland-Dots wiki for guidance. Make sure to check out changelogs as well
diff --git a/config/hypr/configs/ENVariables.conf b/config/hypr/UserConfigs/ENVariables.conf
similarity index 88%
rename from config/hypr/configs/ENVariables.conf
rename to config/hypr/UserConfigs/ENVariables.conf
index 4437c64..031acae 100644
--- a/config/hypr/configs/ENVariables.conf
+++ b/config/hypr/UserConfigs/ENVariables.conf
@@ -20,9 +20,9 @@ env = MOZ_ENABLE_WAYLAND,1
# NVIDIA
# This is from Hyprland Wiki. As a start, WLR_NO_HARDWARE_CURSORS 1 will be activated if nvidia gpu detected
-#env = WLR_NO_HARDWARE_CURSORS,1
-#env = LIBVA_DRIVER_NAME,nvidia
-#env = __GLX_VENDOR_LIBRARY_NAME,nvidia
+env = WLR_NO_HARDWARE_CURSORS,1
+env = LIBVA_DRIVER_NAME,nvidia
+env = __GLX_VENDOR_LIBRARY_NAME,nvidia
#env = GBM_BACKEND,nvidia-drm
#env = __NV_PRIME_RENDER_OFFLOAD,1
diff --git a/config/hypr/configs/LaptopDisplay.conf b/config/hypr/UserConfigs/LaptopDisplay.conf
similarity index 100%
rename from config/hypr/configs/LaptopDisplay.conf
rename to config/hypr/UserConfigs/LaptopDisplay.conf
diff --git a/config/hypr/configs/Laptops.conf b/config/hypr/UserConfigs/Laptops.conf
similarity index 91%
rename from config/hypr/configs/Laptops.conf
rename to config/hypr/UserConfigs/Laptops.conf
index 1704732..14413ce 100644
--- a/config/hypr/configs/Laptops.conf
+++ b/config/hypr/UserConfigs/Laptops.conf
@@ -2,7 +2,9 @@
# See https://wiki.hyprland.org/Configuring/Keywords/ for more variable settings
# These configs are mostly for laptops. This is addemdum to Keybinds.conf
+
$configs = $HOME/.config/hypr/configs
+$UserConfigs = $HOME/.config/hypr/UserConfigs
$mainMod = SUPER
$scriptsDir = $HOME/.config/hypr/scripts
@@ -20,6 +22,7 @@ bind = $mainMod, F6, exec, $scriptsDir/ScreenShot.sh --now # Fullscreen
bind = $mainMod SHIFT, F6, exec, $scriptsDir/ScreenShot.sh --area
bind = $mainMod CTRL, F6, exec, $scriptsDir/ScreenShot.sh --in5 # Screenshot in 5 secs
bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # Screenshot in 10 secs
+bind = ALT, F6, exec, $scriptsDir/ScreenShot.sh --active # Screenshot active window
# Below are useful when you are connecting your laptop in external display
# Suggest you edit below for your laptop display
@@ -37,9 +40,9 @@ bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # Screenshot in
# NOTE: Display for laptop are being generated into LaptopDisplay.conf
# This part is to be use if you do not want your main laptop monitor to wake up during say wallpaper change etc
-#bindl = , switch:off:Lid Switch,exec,echo "monitor = eDP-1, preferred, auto, 1" > $configs/LaptopDisplay.conf
-#bindl = , switch:on:Lid Switch,exec,echo "monitor = eDP-1, disable" > $configs/LaptopDisplay.conf
+#bindl = , switch:off:Lid Switch,exec,echo "monitor = eDP-1, preferred, auto, 1" > $UserConfigs/LaptopDisplay.conf
+#bindl = , switch:on:Lid Switch,exec,echo "monitor = eDP-1, disable" > $UserConfigs/LaptopDisplay.conf
# for laptop-lid action (to erase the last entry)
-#exec-once = echo "eDP-1, preferred, auto, 1" > $HOME/.config/hypr/configs/LaptopDisplay.conf
+#exec-once = echo "eDP-1, preferred, auto, 1" > $HOME/.config/hypr/UserConfigs/LaptopDisplay.conf
##############################################################################
diff --git a/config/hypr/configs/Monitors.conf b/config/hypr/UserConfigs/Monitors.conf
similarity index 93%
rename from config/hypr/configs/Monitors.conf
rename to config/hypr/UserConfigs/Monitors.conf
index ac87862..ca2ef0e 100644
--- a/config/hypr/configs/Monitors.conf
+++ b/config/hypr/UserConfigs/Monitors.conf
@@ -5,10 +5,6 @@
# https://wiki.hyprland.org/Configuring/Monitors/
# Configure your Display resolution, offset, scale and Monitors here, use `hyprctl monitors` to get the info.
-#Could help when scaling and not pixelating
-xwayland {
- force_zero_scaling = true
-}
# Monitors
monitor=,preferred,auto,1
diff --git a/config/hypr/configs/Execs.conf b/config/hypr/UserConfigs/Startup_Apps.conf
similarity index 87%
rename from config/hypr/configs/Execs.conf
rename to config/hypr/UserConfigs/Startup_Apps.conf
index 76ec382..2aacba4 100644
--- a/config/hypr/configs/Execs.conf
+++ b/config/hypr/UserConfigs/Startup_Apps.conf
@@ -2,12 +2,11 @@
#Commands & Apps to be executed at launch
$scriptsDir = $HOME/.config/hypr/scripts
+$UserscriptsDir = $HOME/.config/hypr/UserScripts
$lock = $scriptsDir/LockScreen.sh
$SwwwRandom = $scriptsDir/WallpaperRandom.sh
$WallpaperPath = $HOME/Pictures/wallpapers
-# Initial boot script to start Pywal and Set wallpaper. This line and corresponding script can be safely deleted once logged in
-exec-once = $HOME/.config/hypr/initial-boot.sh
# wallpaper stuff / More wallpaper options below
exec-once = swww query || swww init
@@ -22,17 +21,18 @@ exec-once = $scriptsDir/Polkit.sh
# starup apps
exec-once = waybar &
-exec-once = dunst &
-#exec-once = blueman-applet &
exec-once = nm-applet --indicator &
+exec-once = swaync &
+#exec-once = blueman-applet &
#exec-once = rog-control-center &
+
#clipboard manager
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
# Rainbow borders
-exec-once = $scriptsDir/RainbowBorders.sh
+exec-once = $UserscriptsDir/RainbowBorders.sh
# sway-idle with lock only
exec-once = swayidle -w timeout 900 '$lock'
@@ -51,4 +51,4 @@ exec-once = swayidle -w timeout 900 '$lock'
#exec-once = $scriptsDir/PortalHyprland.sh
# wlsunset - for automatic gamma adjustment. Default is 1900 to 0700 (7pm to 7am). Edit Sunset.sh accordingly
-# exec-once = $scriptsDir/Sunset.sh
\ No newline at end of file
+# exec-once = $UserScriptsDir/Sunset.sh
\ No newline at end of file
diff --git a/config/hypr/UserConfigs/UserKeybinds.conf b/config/hypr/UserConfigs/UserKeybinds.conf
new file mode 100644
index 0000000..f55f0d5
--- /dev/null
+++ b/config/hypr/UserConfigs/UserKeybinds.conf
@@ -0,0 +1,29 @@
+## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# This is where you put your own keybinds. Be Mindful to check as well ~/.config/hypr/configs/Keybinds.conf to avoid conflict
+# if you think I should replace the Pre-defined Keybinds in ~/.config/hypr/configs/Keybinds.conf , submit an issue or let me know in DC and present me a valid reason as to why, such as conflicting with global shortcuts, etc etc
+
+# See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables
+# See also Laptops.conf for laptops keybinds
+
+$mainMod = SUPER
+$files = thunar
+$term = kitty
+$scriptsDir = $HOME/.config/hypr/scripts
+$UserScripts = $HOME/.config/hypr/UserScripts
+
+# rofi App launcher
+bindr = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window
+bind = $mainMod, D, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window
+
+bind = $mainMod, Return, exec, $term # Launch terminal
+bind = $mainMod, T, exec, $files
+
+# User Added Keybinds
+bind = $mainMod SHIFT, O, exec, $UserScripts/ZshChangeTheme.sh # Change oh-my-zsh theme
+
+# For passthrough keyboard into a VM
+# bind = $mainMod ALT, P, submap, passthru
+#submap = passthru
+# to unbind
+#bind = $mainMod ALT, P, submap, reset
+#submap = reset
diff --git a/config/hypr/UserConfigs/UserSettings.conf b/config/hypr/UserConfigs/UserSettings.conf
new file mode 100644
index 0000000..fa2e55a
--- /dev/null
+++ b/config/hypr/UserConfigs/UserSettings.conf
@@ -0,0 +1,150 @@
+## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# User Settings
+# This is where you put your own settings as this will not be touched during update
+
+## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables
+
+# Sourcing colors generated by pywal
+source = $HOME/.cache/wal/colors-hyprland
+# blurls = waybar
+# blurls = rofi
+
+dwindle {
+ pseudotile = yes
+ preserve_split = yes
+ special_scale_factor = 0.8
+}
+
+master {
+ new_is_master=1
+ new_on_top=1
+ mfact = 0.5
+}
+
+general {
+ sensitivity=1.00
+ apply_sens_to_raw=1
+ gaps_in = 4
+ gaps_out = 8
+ border_size = 2
+ resize_on_border = true
+
+ col.active_border = $color0 $color2 $color4 $color6 $color8 90deg
+ col.inactive_border = $backgroundCol
+
+ layout = master
+}
+
+group {
+ col.border_active = $color15
+
+ groupbar {
+ col.active = $color0
+ }
+}
+
+decoration {
+ rounding = 8
+
+ active_opacity = 1.0
+ inactive_opacity = 0.9
+ fullscreen_opacity = 1.0
+
+ dim_inactive = true
+ dim_strength = 0.1
+
+ drop_shadow=true
+ shadow_range=6
+ shadow_render_power = 1
+ col.shadow = $color2
+ col.shadow_inactive = 0x50000000
+
+ blur {
+ enabled = true
+ size = 5
+ passes = 2
+ ignore_opacity = true
+ new_optimizations = true
+ }
+}
+
+animations {
+ enabled = yes
+
+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
+ bezier = linear, 0.0, 0.0, 1.0, 1.0
+ bezier = wind, 0.05, 0.9, 0.1, 1.05
+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
+ bezier = winOut, 0.3, -0.3, 0, 1
+ bezier = slow, 0, 0.85, 0.3, 1
+ bezier = overshot, 0.7, 0.6, 0.1, 1.1
+ bezier = bounce, 1.1, 1.6, 0.1, 0.85
+ bezier = sligshot, 1, -1, 0.15, 1.25
+ bezier = nice, 0, 6.9, 0.5, -4.20
+
+ animation = windowsIn, 1, 5, slow, popin
+ animation = windowsOut, 1, 5, winOut, popin
+ animation = windowsMove, 1, 5, wind, slide
+ animation = border, 1, 10, linear
+ animation = borderangle, 1, 180, linear, loop #used by rainbow borders and rotating colors
+ animation = fade, 1, 5, overshot
+ animation = workspaces, 1, 5, wind
+ animation = windows, 1, 5, bounce, popin
+}
+
+input {
+ kb_layout=us
+ kb_variant=
+ kb_model=
+ kb_options=grp:alt_shift_toggle
+ kb_rules=
+ repeat_rate=50
+ repeat_delay=300
+ numlock_by_default=1
+ left_handed=0
+ follow_mouse=1
+ float_switch_override_focus=0
+
+ touchpad {
+ disable_while_typing=1
+ natural_scroll=0
+ clickfinger_behavior=0
+ middle_button_emulation=1
+ tap-to-click=1
+ drag_lock=0
+ }
+}
+
+gestures {
+ workspace_swipe=1
+ workspace_swipe_fingers=3
+ workspace_swipe_distance=400
+ workspace_swipe_invert=1
+ workspace_swipe_min_speed_to_force=30
+ workspace_swipe_cancel_ratio=0.5
+ workspace_swipe_create_new=1
+ workspace_swipe_forever=1
+}
+
+misc {
+ disable_hyprland_logo = true
+ disable_splash_rendering = true
+ mouse_move_enables_dpms = true
+ #vrr = 0
+ enable_swallow = true
+ no_direct_scanout = true #for fullscreen games
+ focus_on_activate = false
+ swallow_regex = ^(kitty)$
+ #disable_autoreload = true
+}
+
+binds {
+ workspace_back_and_forth=1
+ allow_workspace_cycles=1
+ pass_mouse_when_bound=0
+}
+
+#Could help when scaling and not pixelating
+xwayland {
+ force_zero_scaling = true
+}
diff --git a/config/hypr/configs/WindowRules.conf b/config/hypr/UserConfigs/WindowRules.conf
similarity index 100%
rename from config/hypr/configs/WindowRules.conf
rename to config/hypr/UserConfigs/WindowRules.conf
diff --git a/config/hypr/UserScripts/00-Readme b/config/hypr/UserScripts/00-Readme
new file mode 100644
index 0000000..de251df
--- /dev/null
+++ b/config/hypr/UserScripts/00-Readme
@@ -0,0 +1 @@
+a) Place your new scripts here. If you need to edit a script from main script (~/.config/hypr/scripts), copy it on this folder, and edit. Make sure to update as well the keybinds in ~/.config/hypr/UserConfigs folder if any script is attached to it
\ No newline at end of file
diff --git a/config/hypr/scripts/RainbowBorders.sh b/config/hypr/UserScripts/RainbowBorders.sh
similarity index 100%
rename from config/hypr/scripts/RainbowBorders.sh
rename to config/hypr/UserScripts/RainbowBorders.sh
diff --git a/config/hypr/scripts/Sunset.sh b/config/hypr/UserScripts/Sunset.sh
similarity index 100%
rename from config/hypr/scripts/Sunset.sh
rename to config/hypr/UserScripts/Sunset.sh
diff --git a/config/hypr/scripts/Weather.py b/config/hypr/UserScripts/Weather.py
similarity index 100%
rename from config/hypr/scripts/Weather.py
rename to config/hypr/UserScripts/Weather.py
diff --git a/config/hypr/scripts/Weather.sh b/config/hypr/UserScripts/Weather.sh
similarity index 100%
rename from config/hypr/scripts/Weather.sh
rename to config/hypr/UserScripts/Weather.sh
diff --git a/config/hypr/scripts/ZshChangeTheme.sh b/config/hypr/UserScripts/ZshChangeTheme.sh
similarity index 100%
rename from config/hypr/scripts/ZshChangeTheme.sh
rename to config/hypr/UserScripts/ZshChangeTheme.sh
diff --git a/config/hypr/configs/Keybinds.conf b/config/hypr/configs/Keybinds.conf
index da27c53..84b78cf 100644
--- a/config/hypr/configs/Keybinds.conf
+++ b/config/hypr/configs/Keybinds.conf
@@ -1,30 +1,20 @@
## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# Default Keybinds
-# See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables
-# See also Laptops.conf for laptops keybinds
$mainMod = SUPER
-$files = thunar
-$browser = firefox
-$term = kitty
$scriptsDir = $HOME/.config/hypr/scripts
-# rofi App launcher
-bindr = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run
-bind = $mainMod, D, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run
-
-bind = $mainMod, Return, exec, $term # Launch terminal
bind = CTRL ALT, Delete, exec, hyprctl dispatch exit 0
bind = $mainMod SHIFT, Q, closewindow,
bind = $mainMod SHIFT, F, togglefloating,
bind = $mainMod ALT, F, exec, hyprctl dispatch workspaceopt allfloat
bind = $mainMod, F, fullscreen
bind = $mainMod, Q, killactive,
-bind = $mainMod, T, exec, $files
bind = CTRL ALT, L, exec, $scriptsDir/LockScreen.sh
bind = CTRL ALT, P, exec, $scriptsDir/Wlogout.sh
# FEATURES / EXTRAS
-bind = $mainMod ALT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, dunst, rofi
+bind = $mainMod ALT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, swaync, rofi
bind = $mainMod CTRL, S, exec, $scriptsDir/RofiBeats.sh # online music
bind = $mainMod ALT, E, exec, $scriptsDir/RofiEmoji.sh # emoji
bind = $mainMod, H, exec, $scriptsDir/KeyHints.sh # Small help file
@@ -34,9 +24,7 @@ bind = $mainMod SHIFT, G, exec, $scriptsDir/GameMode.sh # animations ON/OFF
bind = $mainMod ALT, K, exec, $scriptsDir/SwitchKeyboardLayout.sh # Switch Keyboard Layout
bind = $mainMod, Space, exec, $scriptsDir/ChangeLayout.sh # Toggle Master or Dwindle Layout
bind = $mainMod ALT, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager
-
-# MISC (Miscellaneous Keybinds)
-bind = $mainMod SHIFT, O, exec, $scriptsDir/ZshChangeTheme.sh # Change oh-my-zsh theme
+bind = $mainMod SHIFT, N, exec, swaync-client -t -sw # swayNC panel
# Wallpaper related keybinds
bind = $mainMod, W, exec, $scriptsDir/WallpaperSelect.sh # Select wallpaper to apply
@@ -59,7 +47,7 @@ bind = $mainMod SHIFT, M, exec, hyprctl dispatch splitratio -0.3
# group
bind = $mainMod, G, togglegroup
-bind = ALT, tab, changegroupactive # change focus to another window
+bind = ALT, tab, changegroupactive #change focus to another window
# Special Keys / Hot Keys
bind = , xf86audioraisevolume, exec, $scriptsDir/Volume.sh --inc #volume up
@@ -77,23 +65,23 @@ bind = , xf86AudioNext, exec, $scriptsDir/MediaCtrl.sh --nxt
bind = , xf86AudioPrev, exec, $scriptsDir/MediaCtrl.sh --prv
bind = , xf86audiostop, exec, $scriptsDir/MediaCtrl.sh --stop
-# Resize (vim style)
-binde = $mainMod SHIFT, H, resizeactive,-50 0
-binde = $mainMod SHIFT, L, resizeactive,50 0
-binde = $mainMod SHIFT, K, resizeactive,0 -50
-binde = $mainMod SHIFT, J, resizeactive,0 50
+# Screenshot keybindings NOTE: You may need to press Fn key as well
+bind = $mainMod, Print, exec, $scriptsDir/ScreenShot.sh --now
+bind = $mainMod SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --area
+bind = $mainMod CTRL, Print, exec, $scriptsDir/ScreenShot.sh --in5 #screenshot in 5 secs
+bind = $mainMod ALT, Print, exec, $scriptsDir/ScreenShot.sh --in10 #screenshot in 10 secs
+bind = ALT, Print, exec, $scriptsDir/ScreenShot.sh --active #screenshot in 10 secs
+# screenshot with swappy (another screenshot tool)
+bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | swappy -f -
+
+# Resize windows
binde = $mainMod SHIFT, left, resizeactive,-50 0
binde = $mainMod SHIFT, right, resizeactive,50 0
binde = $mainMod SHIFT, up, resizeactive,0 -50
binde = $mainMod SHIFT, down, resizeactive,0 50
-# Move (vim style)
-bind = $mainMod CTRL, H, movewindow, l
-bind = $mainMod CTRL, L, movewindow, r
-bind = $mainMod CTRL, K, movewindow, u
-bind = $mainMod CTRL, J, movewindow, d
-
+# Move windows
bind = $mainMod CTRL, left, movewindow, l
bind = $mainMod CTRL, right, movewindow, r
bind = $mainMod CTRL, up, movewindow, u
@@ -162,20 +150,3 @@ bind = $mainMod, comma, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
-
-# Screenshot keybindings NOTE: You may need to press Fn key as well
-bind = $mainMod, Print, exec, $scriptsDir/ScreenShot.sh --now
-bind = $mainMod SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --area
-bind = $mainMod CTRL, Print, exec, $scriptsDir/ScreenShot.sh --in5 #screenshot in 5 secs
-bind = $mainMod ALT, Print, exec, $scriptsDir/ScreenShot.sh --in10 #screenshot in 10 secs
-
-
-# screenshot with swappy (another screenshot tool)
-bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | swappy -f -
-
-# If you are using Ja's Hyprland dots as Host and wants to passthrough keyboard into a VM
-#bind = $mainMod ALT, P, submap, passthru
-#submap = passthru
-# to unbind
-#bind = $mainMod ALT, P, submap, reset
-#submap = reset
diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf
index 7b0c060..96f6f1e 100644
--- a/config/hypr/configs/Settings.conf
+++ b/config/hypr/configs/Settings.conf
@@ -1,143 +1,8 @@
## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
-## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables
-
-# Sourcing colors generated by pywal
-source = $HOME/.cache/wal/colors-hyprland
-# blurls = waybar
-# blurls = rofi
-
-dwindle {
- pseudotile = yes
- preserve_split = yes
- special_scale_factor = 0.8
-}
-
-master {
- new_is_master=1
- new_on_top=1
- mfact = 0.5
-}
-
-general {
- sensitivity=1.00
- apply_sens_to_raw=1
- gaps_in = 4
- gaps_out = 8
- border_size = 2
- resize_on_border = true
-
- col.active_border = $color0 $color2 $color4 $color6 $color8 45deg
- col.inactive_border = $backgroundCol
-
- layout = master
-}
-
-group {
- col.border_active = $color15
-
- groupbar {
- col.active = $color0
- }
-}
-
-decoration {
- rounding = 8
-
- active_opacity = 1.0
- inactive_opacity = 0.9
- fullscreen_opacity = 1.0
+# Default Settings. avoid changing this file as during update, this will be replaced
- dim_inactive = true
- dim_strength = 0.1
-
- drop_shadow=true
- shadow_range=6
- shadow_render_power = 1
- col.shadow = $color2
- col.shadow_inactive = 0x50000000
-
- blur {
- enabled = true
- size = 5
- passes = 2
- ignore_opacity = true
- new_optimizations = true
- }
-}
-
-animations {
- enabled = yes
-
- bezier = myBezier, 0.05, 0.9, 0.1, 1.05
- bezier = linear, 0.0, 0.0, 1.0, 1.0
- bezier = wind, 0.05, 0.9, 0.1, 1.05
- bezier = winIn, 0.1, 1.1, 0.1, 1.1
- bezier = winOut, 0.3, -0.3, 0, 1
- bezier = slow, 0, 0.85, 0.3, 1
- bezier = overshot, 0.7, 0.6, 0.1, 1.1
- bezier = bounce, 1.1, 1.6, 0.1, 0.85
- bezier = sligshot, 1, -1, 0.15, 1.25
- bezier = nice, 0, 6.9, 0.5, -4.20
-
- animation = windowsIn, 1, 5, slow, popin
- animation = windowsOut, 1, 5, winOut, popin
- animation = windowsMove, 1, 5, wind, slide
- animation = border, 1, 10, linear
- animation = borderangle, 1, 100, linear, loop
- animation = fade, 1, 5, overshot
- animation = workspaces, 1, 5, wind
- animation = windows, 1, 5, bounce, popin
-}
-
-input {
- kb_layout=us
- kb_variant=
- kb_model=
- kb_options=grp:alt_shift_toggle
- kb_rules=
- repeat_rate=50
- repeat_delay=300
- numlock_by_default=1
- left_handed=0
- follow_mouse=1
- float_switch_override_focus=0
-
- touchpad {
- disable_while_typing=1
- natural_scroll=0
- clickfinger_behavior=0
- middle_button_emulation=1
- tap-to-click=1
- drag_lock=0
- }
-}
-
-gestures {
- workspace_swipe=1
- workspace_swipe_fingers=3
- workspace_swipe_distance=400
- workspace_swipe_invert=1
- workspace_swipe_min_speed_to_force=30
- workspace_swipe_cancel_ratio=0.5
- workspace_swipe_create_new=1
- workspace_swipe_forever=1
-}
-
-misc {
- disable_hyprland_logo = true
- disable_splash_rendering = true
- mouse_move_enables_dpms = true
- #vrr = 0
- enable_swallow = true
- no_direct_scanout = true #for fullscreen games
- focus_on_activate = false
- swallow_regex = ^(kitty)$
- #disable_autoreload = true
-}
+## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables
-binds {
- workspace_back_and_forth=1
- allow_workspace_cycles=1
- pass_mouse_when_bound=0
-}
+# Initial boot script enable to apply initial wallpapers, theming, new settings etc.
+exec-once = $HOME/.config/hypr/initial-boot.sh
\ No newline at end of file
diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf
index c09e6f7..24c0be6 100644
--- a/config/hypr/hyprland.conf
+++ b/config/hypr/hyprland.conf
@@ -1,17 +1,22 @@
# Sourcing external config files
+
+###### Default Configs
$configs = $HOME/.config/hypr/configs
-source=$configs/ENVariables.conf
-source=$configs/Execs.conf
-source=$configs/Keybinds.conf
-source=$configs/Laptops.conf
-source=$configs/LaptopDisplay.conf
-source=$configs/Monitors.conf
-source=$configs/WindowRules.conf
source=$configs/Settings.conf
+source=$configs/Keybinds.conf
+#### User Configs
+$UserConfigs = $HOME/.config/hypr/UserConfigs
-
+source= $UserConfigs/Startup_Apps.conf
+source= $UserConfigs/ENVariables.conf
+source= $UserConfigs/UserKeybinds.conf
+source= $UserConfigs/UserSettings.conf
+source= $UserConfigs/Monitors.conf
+source= $UserConfigs/Laptops.conf
+source= $UserConfigs/LaptopDisplay.conf
+source= $UserConfigs/WindowRules.conf
diff --git a/config/hypr/initial-boot.sh b/config/hypr/initial-boot.sh
index cbf13b4..3d9faf5 100755
--- a/config/hypr/initial-boot.sh
+++ b/config/hypr/initial-boot.sh
@@ -1,9 +1,9 @@
#!/bin/bash
-
# A bash script designed to run only once dotfiles installed
-# THIS SCRIPT CAN BE DELETED ONCE SUCCESSFULLY BOOTED!! And also, edit ~/.config/hypr/configs/Execs.conf
+# THIS SCRIPT CAN BE DELETED ONCE SUCCESSFULLY BOOTED!! And also, edit ~/.config/hypr/configs/Settings.conf
# not necessary to do since this script is only designed to run only once as long as the marker exists
+# However, I do highly suggest not to touch it since again, as long as the marker exist, script wont run
# Variables
scriptsDir=$HOME/.config/hypr/scripts
@@ -17,16 +17,16 @@ effect="--transition-bezier .43,1.19,1,.4 --transition-fps 30 --transition-type
# Check if a marker file exists.
if [ ! -f ~/.config/hypr/.initial_startup_done ]; then
- # Initialize pywal
- #printf " Initializing pywal........\n\n"
- wal -i $wallpaper -s -t
-
+ # Initialize pywal and wallpaper
+ if [ -f "$wallpaper" ]; then
+ wal -i $wallpaper -s -t > /dev/null
+ swww init && $swww $wallpaper $effect
+ "$scriptsDir/PywalSwww.sh" > /dev/null 2>&1 &
+ fi
+
# Initial symlink for Pywal Dark and Light for Rofi Themes
- ln -sf "$HOME/.cache/wal/colors-rofi-dark.rasi" "$HOME/.config/rofi/pywal-color/pywal-theme.rasi"
+ ln -sf "$HOME/.cache/wal/colors-rofi-dark.rasi" "$HOME/.config/rofi/pywal-color/pywal-theme.rasi" > /dev/null 2>&1 &
- # Initial scripts to load in order to have a proper wallpaper waybar and pywal themes
- swww init && $swww "$wallpaper" $effect
-
# initiate GTK dark mode and apply icon and cursor theme
gsettings set org.gnome.desktop.interface color-scheme prefer-dark > /dev/null 2>&1 &
gsettings set org.gnome.desktop.interface gtk-theme Tokyonight-Dark-BL-LB > /dev/null 2>&1 &
@@ -41,11 +41,12 @@ if [ ! -f ~/.config/hypr/.initial_startup_done ]; then
"$scriptsDir/SwitchKeyboardLayout.sh" > /dev/null 2>&1 &
# Initial waybar style
- ln -sf "$waybar_style" "$HOME/.config/waybar/style.css"
-
- # Refreshing waybar, dunst, rofi etc.
- "$scriptsDir/PywalSwww.sh" > /dev/null 2>&1 &
- "$scriptsDir/Refresh.sh" > /dev/null 2>&1 &
+ if [ -f "$waybar_style" ]; then
+ ln -sf "$waybar_style" "$HOME/.config/waybar/style.css"
+
+ # Refreshing waybar, swaync, rofi etc.
+ "$scriptsDir/Refresh.sh" > /dev/null 2>&1 &
+ fi
# Create a marker file to indicate that the script has been executed.
touch ~/.config/hypr/.initial_startup_done
diff --git a/config/hypr/scripts/AirplaneMode.sh b/config/hypr/scripts/AirplaneMode.sh
index 428a09b..f3a5062 100755
--- a/config/hypr/scripts/AirplaneMode.sh
+++ b/config/hypr/scripts/AirplaneMode.sh
@@ -1,12 +1,14 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
-wifi="$(nmcli r wifi | awk 'FNR = 2 {print $1}')"
-if [ "$wifi" == "enabled" ]; then
- rfkill block all &
- dunstify -u normal -i "$dunst_notif" -t 1000 'airplane mode: active'
+# Check if any wireless device is blocked
+wifi_blocked=$(rfkill list wifi | grep -o "Soft blocked: yes")
+
+if [ -n "$wifi_blocked" ]; then
+ rfkill unblock wifi
+ notify-send -u low -i "$notif" 'Airplane mode: OFF'
else
- rfkill unblock all &
- dunstify -u normal -i "$dunst_notif" -t 1000 'airplane mode: inactive'
+ rfkill block wifi
+ notify-send -u low -i "$notif" 'Airplane mode: ON'
fi
diff --git a/config/hypr/scripts/Brightness.sh b/config/hypr/scripts/Brightness.sh
index c5c0b80..14c03da 100755
--- a/config/hypr/scripts/Brightness.sh
+++ b/config/hypr/scripts/Brightness.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
notification_timeout=1000
# Get brightness
@@ -26,7 +26,7 @@ get_icon() {
# Notify
notify_user() {
- dunstify -h string:x-dunst-stack-tag:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness : $current%"
+ notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness : $current%"
}
# Change brightness
diff --git a/config/hypr/scripts/BrightnessKbd.sh b/config/hypr/scripts/BrightnessKbd.sh
index c6d6afd..3bdcebc 100755
--- a/config/hypr/scripts/BrightnessKbd.sh
+++ b/config/hypr/scripts/BrightnessKbd.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
# Get keyboard brightness
get_kbd_backlight() {
@@ -24,7 +24,7 @@ get_icon() {
}
# Notify
notify_user() {
- dunstify -h string:x-dunst-stack-tag:brightness_notif -h int:value:$current -u low -i "$icon" "Keyboard Brightness : $current%"
+ notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Keyboard Brightness : $current%"
}
# Change brightness
diff --git a/config/hypr/scripts/ChangeBlur.sh b/config/hypr/scripts/ChangeBlur.sh
index 891e22e..95789f5 100755
--- a/config/hypr/scripts/ChangeBlur.sh
+++ b/config/hypr/scripts/ChangeBlur.sh
@@ -1,15 +1,15 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
STATE=$(hyprctl -j getoption decoration:blur:passes | jq ".int")
if [ "${STATE}" == "2" ]; then
hyprctl keyword decoration:blur:size 2
hyprctl keyword decoration:blur:passes 1
- dunstify -u low -i "$dunst_notif" "Less blur"
+ notify-send -e -u low -i "$notif" "Less blur"
else
hyprctl keyword decoration:blur:size 5
hyprctl keyword decoration:blur:passes 2
- dunstify -u low -i "$dunst_notif" "Normal blur"
+ notify-send -e -u low -i "$notif" "Normal blur"
fi
diff --git a/config/hypr/scripts/ChangeLayout.sh b/config/hypr/scripts/ChangeLayout.sh
index 28b7203..93bc2fe 100755
--- a/config/hypr/scripts/ChangeLayout.sh
+++ b/config/hypr/scripts/ChangeLayout.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
LAYOUT=$(hyprctl -j getoption general:layout | jq '.str' | sed 's/"//g')
@@ -12,7 +12,7 @@ case $LAYOUT in
hyprctl keyword bind SUPER,J,cyclenext
hyprctl keyword bind SUPER,K,cyclenext,prev
hyprctl keyword bind SUPER,O,togglesplit
- dunstify -u low -i "$dunst_notif" "Dwindle Layout"
+ notify-send -e -u low -i "$notif" "Dwindle Layout"
;;
"dwindle")
hyprctl keyword general:layout master
@@ -21,7 +21,7 @@ case $LAYOUT in
hyprctl keyword unbind SUPER,O
hyprctl keyword bind SUPER,J,layoutmsg,cyclenext
hyprctl keyword bind SUPER,K,layoutmsg,cycleprev
- dunstify -u low -i "$dunst_notif" "Master Layout"
+ notify-send -e -u low -i "$notif" "Master Layout"
;;
*) ;;
diff --git a/config/hypr/scripts/DarkLight.sh b/config/hypr/scripts/DarkLight.sh
index 612540b..ec8c447 100755
--- a/config/hypr/scripts/DarkLight.sh
+++ b/config/hypr/scripts/DarkLight.sh
@@ -1,13 +1,13 @@
#!/bin/bash
-#set -x
+set -x
# Paths
wallpaper_base_path="$HOME/Pictures/wallpapers/Dynamic-Wallpapers"
dark_wallpapers="$wallpaper_base_path/Dark"
light_wallpapers="$wallpaper_base_path/Light"
hypr_config_path="$HOME/.config/hypr"
-dunst_config="$HOME/.config/dunst"
+swaync_style="$HOME/.config/swaync/style.css"
SCRIPTSDIR="$HOME/.config/hypr/scripts"
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
dark_rofi_pywal="$HOME/.cache/wal/colors-rofi-dark.rasi"
light_rofi_pywal="$HOME/.cache/wal/colors-rofi-light.rasi"
@@ -38,7 +38,7 @@ update_theme_mode() {
# Function to notify user
notify_user() {
- dunstify -u low -i "$dunst_notif" "Switching to $1 mode"
+ notify-send -u low -i "$notif" "Switching to $1 mode"
}
# Function to set Waybar style
@@ -61,13 +61,14 @@ set_waybar_style() {
set_waybar_style "$next_mode"
notify_user "$next_mode"
-# Change background for dunst
+
+# swaync color change
if [ "$next_mode" = "Dark" ]; then
- sed -i '/background = /s/.*/ background = "#00000095"/' "${dunst_config}/dunstrc"
- sed -i '/foreground = /s/.*/ foreground = "#fafafa"/' "${dunst_config}/dunstrc"
+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.8);/' "${swaync_style}"
+ sed -i '/@define-color noti-bg-alt/s/#.*;/#111111;/' "${swaync_style}"
else
- sed -i '/background = /s/.*/ background = "#ffffff99"/' "${dunst_config}/dunstrc"
- sed -i '/foreground = /s/.*/ foreground = "#00000095"/' "${dunst_config}/dunstrc"
+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.9);/' "${swaync_style}"
+ sed -i '/@define-color noti-bg-alt/s/#.*;/#F0F0F0;/' "${swaync_style}"
fi
# Set Dynamic Wallpaper for Dark or Light Mode
@@ -186,8 +187,7 @@ sleep 1
${SCRIPTSDIR}/Refresh.sh
# Display notifications for theme and icon changes
-dunstify -u normal -i "$dunst_notif" "Themes are set to $selected_theme"
-dunstify -u normal -i "$dunst_notif" "Icon themes set to $selected_icon"
+notify-send -u normal -i "$notif" "Themes in $next_mode Mode"
exit 0
diff --git a/config/hypr/scripts/GameMode.sh b/config/hypr/scripts/GameMode.sh
index 0e6f83a..d53ec7d 100755
--- a/config/hypr/scripts/GameMode.sh
+++ b/config/hypr/scripts/GameMode.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
SCRIPTSDIR="$HOME/.config/hypr/scripts"
@@ -15,7 +15,7 @@ if [ "$HYPRGAMEMODE" = 1 ] ; then
keyword general:border_size 1;\
keyword decoration:rounding 0"
swww kill
- dunstify -u low -i "$dunst_notif" "gamemode enabled. All animations off"
+ notify-send -e -u low -i "$notif" "gamemode enabled. All animations off"
exit
else
swww init && swww img "$HOME/.config/rofi/.current_wallpaper"
@@ -23,7 +23,7 @@ else
${SCRIPTSDIR}/PywalSwww.sh
sleep 0.5
${SCRIPTSDIR}/Refresh.sh
- dunstify -u normal -i "$dunst_notif" "gamemode disabled. All animations normal"
+ notify-send -e -u normal -i "$notif" "gamemode disabled. All animations normal"
exit
fi
hyprctl reload
diff --git a/config/hypr/scripts/KeyHints.sh b/config/hypr/scripts/KeyHints.sh
index 7bb80e1..180befa 100755
--- a/config/hypr/scripts/KeyHints.sh
+++ b/config/hypr/scripts/KeyHints.sh
@@ -34,7 +34,6 @@ yad --width=$dynamic_width --height=$dynamic_height \
--column=Key: \
--column=Description: \
--column=Command: \
- --timeout=60 \
--timeout-indicator=bottom \
"ESC" "close this app" "" "=" "SUPER KEY (Windows Key)" "(SUPER KEY)" \
" enter" "Terminal" "(kitty)" \
@@ -45,13 +44,15 @@ yad --width=$dynamic_width --height=$dynamic_height \
" Alt V" "Clipboard Manager" "(cliphist)" \
" W" "Choose wallpaper" "(swww)" \
"CTRL ALT W" "Random wallpaper" "(swww)" \
-" CTRL B" "Choose waybar styles" "(waybar styles)" \
" B" "Hide/UnHide Waybar" "waybar" \
+" CTRL B" "Choose waybar styles" "(waybar styles)" \
" ALT B" "Choose waybar layout" "(waybar layout)" \
-" ALT R" "Reload Waybar Dunst Rofi" "" \
+" ALT R" "Reload Waybar swaync Rofi" "CHECK NOTIFICATION FIRST!!!" \
+" SHIFT N" "Launch Notification Panel" "swaync Notification Center" \
" Print" "screenshot" "(grim)" \
" Shift Print" "screenshot region" "(grim + slurp)" \
" Shift S" "screenshot region" "(swappy)" \
+"ALT Print" "Screenshot active window" "active window only" \
"CTRL ALT P" "power-menu" "(wlogout)" \
"CTRL ALT L" "screen lock" "(swaylock)" \
"CTRL ALT Del" "Hyprland Exit" "(SAVE YOUR WORK!!!)" \
@@ -64,8 +65,7 @@ yad --width=$dynamic_width --height=$dynamic_height \
" H" "Launch this app" "" \
" E" "View or EDIT Keybinds, Settings, Monitor" "" \
"" "" "" \
-"" "More tips on Hyprland-Dots github wiki page" ""\
-"" "" "" \
-"" "" "This window will auto-close in 60 secs" ""\
+"More tips:" "https://github.com/JaKooLit/Hyprland-Dots/wiki" ""\
+
diff --git a/config/hypr/scripts/MediaCtrl.sh b/config/hypr/scripts/MediaCtrl.sh
index f961152..9d97044 100755
--- a/config/hypr/scripts/MediaCtrl.sh
+++ b/config/hypr/scripts/MediaCtrl.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-music_icon="$HOME/.config/dunst/icons/music.png"
+music_icon="$HOME/.config/swaync/icons/music.png"
# Play the next track
play_next() {
@@ -23,18 +23,18 @@ toggle_play_pause() {
# Stop playback
stop_playback() {
playerctl stop
- dunstify -r 123 -i "$music_icon" "Playback Stopped"
+ notify-send -e -u low -i "$music_icon" "Playback Stopped"
}
-# Display Dunst notification with song information
+# Display notification with song information
show_music_notification() {
status=$(playerctl status)
if [[ "$status" == "Playing" ]]; then
song_title=$(playerctl metadata title)
song_artist=$(playerctl metadata artist)
- dunstify -r 123 -i "$music_icon" "Now Playing:" "$song_title\nby $song_artist"
+ notify-send -e -u low -i "$music_icon" "Now Playing:" "$song_title\nby $song_artist"
elif [[ "$status" == "Paused" ]]; then
- dunstify -r 123 -i "$music_icon" "Playback Paused"
+ notify-send -e -u low -i "$music_icon" "Playback Paused"
fi
}
diff --git a/config/hypr/scripts/PywalDunst.sh b/config/hypr/scripts/PywalDunst.sh
deleted file mode 100755
index 1c9398f..0000000
--- a/config/hypr/scripts/PywalDunst.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-
-# -lf/nf/cf color
-# Defines the foreground color for low, normal and critical notifications respectively.
-#
-# -lb/nb/cb color
-# Defines the background color for low, normal and critical notifications respectively.
-#
-# -lfr/nfr/cfr color
-# Defines the frame color for low, normal and critical notifications respectively.
-
-[ -f "$HOME/.cache/wal/colors.sh" ] && . "$HOME/.cache/wal/colors.sh"
-
-pkill dunst
-
-DUNST_FILE=~/.config/dunst/dunstrc
-
-# update dunst based on pywal colors.
-#sed -i '/background = /s/.*/ background = "$color0"/' $DUNST_FILE
-#sed -i '/foreground = /s/.*/ foreground = "'$color7'"/' $DUNST_FILE
-sed -i '/frame_color = /s/.*/ frame_color = "'$color2'"/' $DUNST_FILE
-
-sleep 0.3
-dunst -config ~/.config/dunst/dunstrc > /dev/null 2>&1 &
\ No newline at end of file
diff --git a/config/hypr/scripts/QuickEdit.sh b/config/hypr/scripts/QuickEdit.sh
index 7e9d67f..9c7cdff 100755
--- a/config/hypr/scripts/QuickEdit.sh
+++ b/config/hypr/scripts/QuickEdit.sh
@@ -1,40 +1,49 @@
#!/bin/bash
-hyprDir="$HOME/.config/hypr/configs"
+defaultDir="$HOME/.config/hypr/configs"
+userDir="$HOME/.config/hypr/UserConfigs"
menu(){
printf "1. view Env-variables\n"
- printf "2. view Rules\n"
- printf "3. view Execs (startup)\n"
- printf "4. view KeyBinds\n"
+ printf "2. view Window-Rules\n"
+ printf "3. view Startup_Apps\n"
+ printf "4. view User-Keybinds\n"
printf "5. view Monitors\n"
printf "6. view Laptop-Keybinds\n"
- printf "7. view Hyprland-Settings\n"
+ printf "7. view User-Settings\n"
+ printf "8. view Default-Settings\n"
+ printf "9. view Default-Keybinds\n"
}
main() {
choice=$(menu | rofi -dmenu -config ~/.config/rofi/config-compact.rasi | cut -d. -f1)
case $choice in
1)
- kitty -e nano "$hyprDir/ENVariables.conf"
+ kitty -e nano "$userDir/ENVariables.conf"
;;
2)
- kitty -e nano "$hyprDir/WindowRules.conf"
+ kitty -e nano "$userDir/WindowRules.conf"
;;
3)
- kitty -e nano "$hyprDir/Execs.conf"
+ kitty -e nano "$userDir/Startup_Apps.conf"
;;
4)
- kitty -e nano "$hyprDir/Keybinds.conf"
+ kitty -e nano "$userDir/UserKeybinds.conf"
;;
5)
- kitty -e nano "$hyprDir/Monitors.conf"
+ kitty -e nano "$userDir/Monitors.conf"
;;
6)
- kitty -e nano "$hyprDir/Laptops.conf"
+ kitty -e nano "$userDir/Laptops.conf"
;;
7)
- kitty -e nano "$hyprDir/Settings.conf"
+ kitty -e nano "$userDir/UserSettings.conf"
+ ;;
+ 8)
+ kitty -e nano "$defaultDir/Settings.conf"
+ ;;
+ 9)
+ kitty -e nano "$defaultDir/Keybinds.conf"
;;
*)
;;
diff --git a/config/hypr/scripts/Refresh.sh b/config/hypr/scripts/Refresh.sh
index 0d91de8..b5e0f55 100755
--- a/config/hypr/scripts/Refresh.sh
+++ b/config/hypr/scripts/Refresh.sh
@@ -1,26 +1,40 @@
#!/usr/bin/env bash
SCRIPTSDIR=$HOME/.config/hypr/scripts
+UserSCRIPTSDIR=$HOME/.config/hypr/UserScripts
+
+# Define file_exists function
+file_exists() {
+ if [ -e "$1" ]; then
+ return 0 # File exists
+ else
+ return 1 # File does not exist
+ fi
+}
# Kill already running processes
-_ps=(waybar rofi)
+_ps=(waybar rofi swaync)
for _prs in "${_ps[@]}"; do
if pidof "${_prs}" >/dev/null; then
pkill "${_prs}"
fi
done
-sleep 0.1
+sleep 0.3
# Relaunch waybar
waybar &
-sleep 0.1
-# Relaunch dunst with pywal-borders
-${SCRIPTSDIR}/PywalDunst.sh &
+# relaunch swaync
+sleep 0.5
+swaync > /dev/null 2>&1 &
-# Relaunching rainbow borders
+# Relaunching rainbow borders if the script exists
sleep 1
-${SCRIPTSDIR}/RainbowBorders.sh &
+if file_exists "${UserSCRIPTSDIR}/RainbowBorders.sh"; then
+ ${UserSCRIPTSDIR}/RainbowBorders.sh &
+fi
# for cava-pywal (note, need to manually restart cava once wallpaper changes)
-ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true
\ No newline at end of file
+ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true
+
+exit 0
\ No newline at end of file
diff --git a/config/hypr/scripts/RefreshNoWaybar.sh b/config/hypr/scripts/RefreshNoWaybar.sh
index c834a53..be06167 100755
--- a/config/hypr/scripts/RefreshNoWaybar.sh
+++ b/config/hypr/scripts/RefreshNoWaybar.sh
@@ -5,6 +5,16 @@
# Modified inorder to refresh rofi background, Pywal
SCRIPTSDIR=$HOME/.config/hypr/scripts
+UserSCRIPTSDIR=$HOME/.config/hypr/UserScripts
+
+# Define file_exists function
+file_exists() {
+ if [ -e "$1" ]; then
+ return 0 # File exists
+ else
+ return 1 # File does not exist
+ fi
+}
# Kill already running processes
_ps=(rofi)
@@ -17,13 +27,13 @@ done
# Pywal refresh
${SCRIPTSDIR}/PywalSwww.sh &
-sleep 0.5
-# Relaunch dunst with pywal-borders
-${SCRIPTSDIR}/PywalDunst.sh &
-
-# Relaunching rainbow borders
+# Relaunching rainbow borders if the script exists
sleep 1
-${SCRIPTSDIR}/RainbowBorders.sh &
+if file_exists "${UserSCRIPTSDIR}/RainbowBorders.sh"; then
+ ${UserSCRIPTSDIR}/RainbowBorders.sh &
+fi
# for cava-pywal (note, need to manually restart cava once wallpaper changes)
-ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true
\ No newline at end of file
+ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true
+
+exit 0
\ No newline at end of file
diff --git a/config/hypr/scripts/RofiBeats.sh b/config/hypr/scripts/RofiBeats.sh
index e0cc6f7..405451f 100755
--- a/config/hypr/scripts/RofiBeats.sh
+++ b/config/hypr/scripts/RofiBeats.sh
@@ -1,7 +1,7 @@
#!/bin/bash
# Directory for icons
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
# Note: You can add more options below with the following format:
# ["TITLE"]="link"
@@ -21,7 +21,7 @@ declare -A menu_options=(
# Function for displaying notifications
notification() {
- dunstify -u normal -i "$iDIR/music.png" "Playing now: $@"
+ notify-send -u normal -i "$iDIR/music.png" "Playing now: $@"
}
# Main function
@@ -45,4 +45,4 @@ main() {
}
# Check if an online music process is running and send a notification, otherwise run the main function
-pkill -f http && dunstify -u low -i "$iDIR/music.png" "Online Music stopped" || main
+pkill -f http && notify-send -u low -i "$iDIR/music.png" "Online Music stopped" || main
diff --git a/config/hypr/scripts/ScreenShot.sh b/config/hypr/scripts/ScreenShot.sh
index 29fe776..1d5eeac 100755
--- a/config/hypr/scripts/ScreenShot.sh
+++ b/config/hypr/scripts/ScreenShot.sh
@@ -1,27 +1,40 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
+notify_cmd_shot="notify-send -h string:x-canonical-private-synchronous:shot-notify -u low -i ${iDIR}/picture.png"
-time=$(date +%Y-%m-%d-%H-%M-%S)
+time=$(date "+%d-%b_%H-%M-%S")
dir="$(xdg-user-dir)/Pictures/Screenshots"
file="Screenshot_${time}_${RANDOM}.png"
+active_window_class=$(hyprctl -j activewindow | jq -r '(.class)')
+active_window_file="Screenshot_${time}_${active_window_class}.png"
+active_window_path="${dir}/${active_window_file}"
+
# notify and view screenshot
-notify_cmd_shot="dunstify -h string:x-canonical-private-synchronous:shot-notify -u low -i ${iDIR}/picture.png"
notify_view() {
- ${notify_cmd_shot} "Copied to clipboard."
-## viewnior ${dir}/"$file"
- if [[ -e "$dir/$file" ]]; then
- ${notify_cmd_shot} "Screenshot Saved."
- else
- ${notify_cmd_shot} "Screenshot Deleted."
- fi
+ if [[ "$1" == "active" ]]; then
+ if [[ -e "${active_window_path}" ]]; then
+ ${notify_cmd_shot} "Screenshot of '${active_window_class}' Saved."
+ else
+ ${notify_cmd_shot} "Screenshot of '${active_window_class}' not Saved"
+ fi
+ else
+ local check_file="$dir/$file"
+ if [[ -e "$check_file" ]]; then
+ ${notify_cmd_shot} "Screenshot Saved."
+ else
+ ${notify_cmd_shot} "Screenshot NOT Saved."
+ fi
+ fi
}
+
+
# countdown
countdown() {
for sec in $(seq $1 -1 1); do
- dunstify -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec"
+ notify-send -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec"
sleep 1
done
}
@@ -59,6 +72,17 @@ shotarea() {
notify_view
}
+shotactive() {
+ active_window_class=$(hyprctl -j activewindow | jq -r '(.class)')
+ active_window_file="Screenshot_${time}_${active_window_class}.png"
+ active_window_path="${dir}/${active_window_file}"
+
+ hyprctl -j activewindow | jq -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"' | grim -g - "${active_window_path}"
+ sleep 1
+ notify_view "active"
+}
+
+
if [[ ! -d "$dir" ]]; then
mkdir -p "$dir"
fi
@@ -73,8 +97,10 @@ elif [[ "$1" == "--win" ]]; then
shotwin
elif [[ "$1" == "--area" ]]; then
shotarea
+elif [[ "$1" == "--active" ]]; then
+ shotactive
else
- echo -e "Available Options : --now --in5 --in10 --win --area"
+ echo -e "Available Options : --now --in5 --in10 --win --area --active"
fi
exit 0
diff --git a/config/hypr/scripts/SwitchKeyboardLayout.sh b/config/hypr/scripts/SwitchKeyboardLayout.sh
index 9d1ee84..a53a567 100755
--- a/config/hypr/scripts/SwitchKeyboardLayout.sh
+++ b/config/hypr/scripts/SwitchKeyboardLayout.sh
@@ -1,8 +1,8 @@
#!/usr/bin/env bash
layout_f="$HOME/.cache/kb_layout"
-settings_file="$HOME/.config/hypr/configs/Settings.conf"
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+settings_file="$HOME/.config/hypr/UserConfigs/UserSettings.conf"
+notif="$HOME/.config/swaync/images/bell.png"
# Check if ~/.cache/kb_layout exists and create it with a default layout from Settings.conf if not found
if [ ! -f "$layout_f" ]; then
@@ -40,4 +40,4 @@ hyprctl keyword input:kb_layout "$new_layout"
echo "$new_layout" > "$layout_f"
# Notification for the new keyboard layout
-dunstify -u low -i "$dunst_notif" "Keyboard layout set to $new_layout"
\ No newline at end of file
+notify-send -u low -i "$notif" "new KB_Layout: $new_layout"
\ No newline at end of file
diff --git a/config/hypr/scripts/TouchPad.sh b/config/hypr/scripts/TouchPad.sh
index 8f633ee..1fcb324 100755
--- a/config/hypr/scripts/TouchPad.sh
+++ b/config/hypr/scripts/TouchPad.sh
@@ -1,38 +1,22 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
-
-# NOTE: find the right device using hyprctl devices
- HYPRLAND_DEVICE="asue1209:00-04f3:319f-touchpad"
-
-if [ -z "$XDG_RUNTIME_DIR" ]; then
- export XDG_RUNTIME_DIR=/run/user/$(id -u)
-fi
-
-export STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status"
-
-enable_touchpad() {
- printf "true" > "$STATUS_FILE"
-
- dunstify -u low -i "$dunst_notif" "Enabling Touchpad"
-
- hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" true
-}
-
-disable_touchpad() {
- printf "false" > "$STATUS_FILE"
-
- dunstify -u low -i "$dunst_notif" "Disabling Touchpad"
+HYPRLAND_DEVICE="asue1209:00-04f3:319f-touchpad"
+notif="$HOME/.config/swaync/images/bell.png"
+
+XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR:-/run/user/$(id -u)}
+STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status"
+
+toggle_touchpad() {
+ if [ ! -f "$STATUS_FILE" ] || [ "$(cat "$STATUS_FILE")" = "false" ]; then
+ echo "true" > "$STATUS_FILE"
+ action="enabled"
+ else
+ echo "false" > "$STATUS_FILE"
+ action="disabled"
+ fi
- hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" false
+ notify-send -u low -i "$notif" "Touchpad $action"
+ hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" "$(cat "$STATUS_FILE")"
}
-if ! [ -f "$STATUS_FILE" ]; then
- enable_touchpad
-else
- if [ $(cat "$STATUS_FILE") = "true" ]; then
- disable_touchpad
- elif [ $(cat "$STATUS_FILE") = "false" ]; then
- enable_touchpad
- fi
-fi
+toggle_touchpad
diff --git a/config/hypr/scripts/Volume.sh b/config/hypr/scripts/Volume.sh
index d0eb0b6..f68491c 100755
--- a/config/hypr/scripts/Volume.sh
+++ b/config/hypr/scripts/Volume.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
# Get Volume
get_volume() {
@@ -29,9 +29,9 @@ get_icon() {
# Notify
notify_user() {
if [[ "$(get_volume)" == "Muted" ]]; then
- dunstify -h string:x-dunst-stack-tag:volume_notif -u low -i "$(get_icon)" "Volume: Muted"
+ notify-send -e -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: Muted"
else
- dunstify -h int:value:"$(get_volume | sed 's/%//')" -h string:x-dunst-stack-tag:volume_notif -u low -i "$(get_icon)" "Volume: $(get_volume)"
+ notify-send -e -h int:value:"$(get_volume | sed 's/%//')" -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: $(get_volume)"
fi
}
@@ -54,18 +54,18 @@ dec_volume() {
# Toggle Mute
toggle_mute() {
if [ "$(pamixer --get-mute)" == "false" ]; then
- pamixer -m && dunstify -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF"
+ pamixer -m && notify-send -e -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF"
elif [ "$(pamixer --get-mute)" == "true" ]; then
- pamixer -u && dunstify -u low -i "$(get_icon)" "Volume Switched ON"
+ pamixer -u && notify-send -e -u low -i "$(get_icon)" "Volume Switched ON"
fi
}
# Toggle Mic
toggle_mic() {
if [ "$(pamixer --default-source --get-mute)" == "false" ]; then
- pamixer --default-source -m && dunstify -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF"
+ pamixer --default-source -m && notify-send -e -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF"
elif [ "$(pamixer --default-source --get-mute)" == "true" ]; then
- pamixer -u --default-source u && dunstify -u low -i "$iDIR/microphone.png" "Microphone Switched ON"
+ pamixer -u --default-source u && notify-send -e -u low -i "$iDIR/microphone.png" "Microphone Switched ON"
fi
}
# Get Mic Icon
@@ -92,7 +92,7 @@ get_mic_volume() {
notify_mic_user() {
volume=$(get_mic_volume)
icon=$(get_mic_icon)
- dunstify -h int:value:"$volume" -h "string:x-dunst-stack-tag:volume_notif" -u low -i "$icon" "Mic-Level: $volume"
+ notify-send -e -h int:value:"$volume" -h "string:x-canonical-private-synchronous:volume_notif" -u low -i "$icon" "Mic-Level: $volume"
}
# Increase MIC Volume
diff --git a/config/hypr/v2.2.1 b/config/hypr/v2.2.2
similarity index 100%
rename from config/hypr/v2.2.1
rename to config/hypr/v2.2.2
diff --git a/config/kitty/kitty.conf b/config/kitty/kitty.conf
index e5bba2c..a5e836f 100644
--- a/config/kitty/kitty.conf
+++ b/config/kitty/kitty.conf
@@ -1,7 +1,7 @@
#include ~/.cache/wal/colors-kitty.conf
font_family Fira Code SemiBold
-font_size 12.0
+font_size 13.0
bold_font auto
italic_font auto
bold_italic_font auto
@@ -10,4 +10,7 @@ background_opacity 0.7
confirm_os_window_close 0
-enable_audio_bell no
\ No newline at end of file
+enable_audio_bell no
+
+selection_foreground #000000
+selection_background #F5FBFF
\ No newline at end of file
diff --git a/config/rofi/config-compact.rasi b/config/rofi/config-compact.rasi
index 308ff85..b5b4559 100644
--- a/config/rofi/config-compact.rasi
+++ b/config/rofi/config-compact.rasi
@@ -115,7 +115,7 @@ listview {
spacing: 4px;
dynamic: true;
cycle: true;
- scrollbar: false;
+ scrollbar: true;
layout: vertical;
reverse: false;
fixed-height: true;
diff --git a/config/rofi/resolution/1080p/config-compact.rasi b/config/rofi/resolution/1080p/config-compact.rasi
index 308ff85..b5b4559 100644
--- a/config/rofi/resolution/1080p/config-compact.rasi
+++ b/config/rofi/resolution/1080p/config-compact.rasi
@@ -115,7 +115,7 @@ listview {
spacing: 4px;
dynamic: true;
cycle: true;
- scrollbar: false;
+ scrollbar: true;
layout: vertical;
reverse: false;
fixed-height: true;
diff --git a/config/rofi/resolution/1440p/config-compact.rasi b/config/rofi/resolution/1440p/config-compact.rasi
index 0dd5fe5..029fdbd 100644
--- a/config/rofi/resolution/1440p/config-compact.rasi
+++ b/config/rofi/resolution/1440p/config-compact.rasi
@@ -115,7 +115,7 @@ listview {
spacing: 4px;
dynamic: true;
cycle: true;
- scrollbar: false;
+ scrollbar: true;
layout: vertical;
reverse: false;
fixed-height: true;
diff --git a/config/swaync/config.json b/config/swaync/config.json
new file mode 100644
index 0000000..64e2456
--- /dev/null
+++ b/config/swaync/config.json
@@ -0,0 +1,100 @@
+{
+ "$schema": "/etc/xdg/swaync/configSchema.json",
+ "positionX": "center",
+ "positionY": "top",
+ "layer": "overlay",
+ "control-center-layer": "top",
+ "layer-shell": true,
+ "cssPriority": "application",
+ "control-center-margin-top": 5,
+ "control-center-margin-bottom": 0,
+ "control-center-margin-right": 0,
+ "control-center-margin-left": 0,
+ "notification-2fa-action": true,
+ "notification-inline-replies": false,
+ "notification-icon-size": 24,
+ "notification-body-image-height": 100,
+ "notification-body-image-width": 200,
+ "timeout": 6,
+ "timeout-low": 3,
+ "timeout-critical": 0,
+ "fit-to-screen": false,
+ "control-center-width": 350,
+ "control-center-height": 720,
+ "notification-window-width": 400,
+ "keyboard-shortcuts": true,
+ "image-visibility": "when available",
+ "transition-time": 200,
+ "hide-on-clear": false,
+ "hide-on-action": true,
+ "script-fail-notify": true,
+ "widgets": [
+ "dnd",
+ "buttons-grid",
+ "mpris",
+ "volume",
+ "backlight",
+ "title",
+ "notifications"
+ ],
+ "widget-config": {
+ "title": {
+ "text": "Notifications",
+ "clear-all-button": true,
+ "button-text": "Clear"
+ },
+ "dnd": {
+ "text": "Do Not Disturb"
+ },
+ "label": {
+ "max-lines": 1,
+ "text": "Notification"
+ },
+ "mpris": {
+ "image-size": 10,
+ "image-radius": 0
+ },
+ "volume": {
+ "label": ""
+ },
+ "backlight": {
+ "label": ""
+ },
+ "buttons-grid": {
+ "actions": [
+ {
+ "label": "",
+ "command": "systemctl poweroff"
+ },
+ {
+ "label": "",
+ "command": "systemctl reboot"
+ },
+ {
+ "label": "",
+ "command": "~/.config/hypr/scripts/LockScreen.sh"
+ },
+ {
+ "label": "",
+ "command": "hyprctl dispatch exit"
+ },
+ {
+ "label": "",
+ "command": "~/.config/hypr/scripts/AirplaneMode.sh"
+ },
+ {
+ "label": "",
+ "command": "pactl set-sink-mute @DEFAULT_SINK@ toggle"
+ },
+ {
+ "label": "",
+ "command": "pactl set-source-mute @DEFAULT_SOURCE@ toggle"
+ },
+ {
+ "label": "",
+ "command": "blueman-manager"
+ }
+ ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/config/dunst/icons/backup.png b/config/swaync/icons/backup.png
similarity index 100%
rename from config/dunst/icons/backup.png
rename to config/swaync/icons/backup.png
diff --git a/config/dunst/icons/battery-quarter-solid.svg b/config/swaync/icons/battery-quarter-solid.svg
similarity index 100%
rename from config/dunst/icons/battery-quarter-solid.svg
rename to config/swaync/icons/battery-quarter-solid.svg
diff --git a/config/dunst/icons/battery-status.png b/config/swaync/icons/battery-status.png
similarity index 100%
rename from config/dunst/icons/battery-status.png
rename to config/swaync/icons/battery-status.png
diff --git a/config/dunst/icons/brightness-100.png b/config/swaync/icons/brightness-100.png
similarity index 100%
rename from config/dunst/icons/brightness-100.png
rename to config/swaync/icons/brightness-100.png
diff --git a/config/dunst/icons/brightness-20.png b/config/swaync/icons/brightness-20.png
similarity index 100%
rename from config/dunst/icons/brightness-20.png
rename to config/swaync/icons/brightness-20.png
diff --git a/config/dunst/icons/brightness-40.png b/config/swaync/icons/brightness-40.png
similarity index 100%
rename from config/dunst/icons/brightness-40.png
rename to config/swaync/icons/brightness-40.png
diff --git a/config/dunst/icons/brightness-60.png b/config/swaync/icons/brightness-60.png
similarity index 100%
rename from config/dunst/icons/brightness-60.png
rename to config/swaync/icons/brightness-60.png
diff --git a/config/dunst/icons/brightness-80.png b/config/swaync/icons/brightness-80.png
similarity index 100%
rename from config/dunst/icons/brightness-80.png
rename to config/swaync/icons/brightness-80.png
diff --git a/config/dunst/icons/dropper.png b/config/swaync/icons/dropper.png
similarity index 100%
rename from config/dunst/icons/dropper.png
rename to config/swaync/icons/dropper.png
diff --git a/config/dunst/icons/microphone-mute.png b/config/swaync/icons/microphone-mute.png
similarity index 100%
rename from config/dunst/icons/microphone-mute.png
rename to config/swaync/icons/microphone-mute.png
diff --git a/config/dunst/icons/microphone.png b/config/swaync/icons/microphone.png
similarity index 100%
rename from config/dunst/icons/microphone.png
rename to config/swaync/icons/microphone.png
diff --git a/config/dunst/icons/music.png b/config/swaync/icons/music.png
similarity index 100%
rename from config/dunst/icons/music.png
rename to config/swaync/icons/music.png
diff --git a/config/dunst/icons/palette.png b/config/swaync/icons/palette.png
similarity index 100%
rename from config/dunst/icons/palette.png
rename to config/swaync/icons/palette.png
diff --git a/config/dunst/icons/picture.png b/config/swaync/icons/picture.png
similarity index 100%
rename from config/dunst/icons/picture.png
rename to config/swaync/icons/picture.png
diff --git a/config/dunst/icons/timer.png b/config/swaync/icons/timer.png
similarity index 100%
rename from config/dunst/icons/timer.png
rename to config/swaync/icons/timer.png
diff --git a/config/dunst/icons/uptime.png b/config/swaync/icons/uptime.png
similarity index 100%
rename from config/dunst/icons/uptime.png
rename to config/swaync/icons/uptime.png
diff --git a/config/dunst/icons/volume-high.png b/config/swaync/icons/volume-high.png
similarity index 100%
rename from config/dunst/icons/volume-high.png
rename to config/swaync/icons/volume-high.png
diff --git a/config/dunst/icons/volume-low.png b/config/swaync/icons/volume-low.png
similarity index 100%
rename from config/dunst/icons/volume-low.png
rename to config/swaync/icons/volume-low.png
diff --git a/config/dunst/icons/volume-mid.png b/config/swaync/icons/volume-mid.png
similarity index 100%
rename from config/dunst/icons/volume-mid.png
rename to config/swaync/icons/volume-mid.png
diff --git a/config/dunst/icons/volume-mute.png b/config/swaync/icons/volume-mute.png
similarity index 100%
rename from config/dunst/icons/volume-mute.png
rename to config/swaync/icons/volume-mute.png
diff --git a/config/dunst/icons/vpn.png b/config/swaync/icons/vpn.png
similarity index 100%
rename from config/dunst/icons/vpn.png
rename to config/swaync/icons/vpn.png
diff --git a/config/dunst/images/bell.png b/config/swaync/images/bell.png
similarity index 100%
rename from config/dunst/images/bell.png
rename to config/swaync/images/bell.png
diff --git a/config/swaync/style.css b/config/swaync/style.css
new file mode 100644
index 0000000..f0d41fb
--- /dev/null
+++ b/config/swaync/style.css
@@ -0,0 +1,349 @@
+/* ----------- 💫 https://github.com/JaKooLit 💫 -------- */
+
+@import '../../.cache/wal/colors-waybar.css';
+
+@define-color noti-border-color @color2;
+@define-color noti-bg rgba(0, 0, 0, 0.8);
+@define-color noti-bg-alt #111111;
+@define-color noti-bg-hover @color2;
+@define-color text-color @color2;
+@define-color text-color-alt @color7;
+@define-color text-color-disabled rgba(150, 150, 150, 0.8);
+
+* {
+ font-family: FiraCode;
+ font-weight: Bolder;
+}
+
+.control-center .notification-row:focus,
+.control-center .notification-row:hover {
+ opacity: 1;
+ background: @noti-bg;
+ border-radius: 10px
+}
+
+.notification-row {
+ outline: none;
+ margin: 0px;
+}
+
+.notification {
+ border-radius: 10px;
+}
+
+.notification-content{
+ color: @text-color;
+ background: @noti-bg;
+ padding: 3px 10px 3px 6px;
+ border-radius: 10px;
+ border: 2px solid @noti-border-color;
+ margin: 0px;
+}
+
+.notification-default-action {
+ margin: 0;
+ padding: 0;
+ border-radius: 10px;
+}
+
+.close-button {
+ background: #f7768e;
+ color: @noti-bg;
+ text-shadow: none;
+ padding: 0;
+ border-radius: 10px;
+ margin-top: 5px;
+ margin-right: 5px;
+}
+
+.close-button:hover {
+ box-shadow: none;
+ background: #f7768e;
+ transition: all .15s ease-in-out;
+ border: none
+}
+
+
+.notification-action {
+ border: 2px solid @noti-border-color;
+ border-top: none;
+ border-radius: 10px;
+}
+
+
+.notification-default-action:hover,
+.notification-action:hover {
+ color: @text-color;
+ background: @color1
+}
+
+.notification-default-action {
+ border-radius: 10px;
+ margin: 5px;
+}
+
+.notification-default-action:not(:only-child) {
+ border-bottom-left-radius: 7px;
+ border-bottom-right-radius: 7px
+}
+
+.notification-action:first-child {
+ border-bottom-left-radius: 10px;
+ background: #1b1b2b
+}
+
+.notification-action:last-child {
+ border-bottom-right-radius: 10px;
+ background: #1b1b2b
+}
+
+.inline-reply {
+ margin-top: 8px
+}
+
+.inline-reply-entry {
+ background: @noti-bg;
+ color: @text-color;
+ caret-color: @text-color;
+ border: 1px solid @noti-border-color;
+ border-radius: 10px
+}
+
+.inline-reply-button {
+ font-size: 0.5rem;
+ margin-left: 4px;
+ background: @noti-bg;
+ border: 1px solid @noti-border-color;
+ border-radius: 10px;
+ color: @text-color
+}
+
+.inline-reply-button:disabled {
+ background: initial;
+ color: @text-color-disabled;
+ border: 1px solid transparent
+}
+
+.inline-reply-button:hover {
+ background: @noti-bg-hover
+}
+
+.body-image {
+ margin-top: 6px;
+ color: @text-color-alt;
+ border-radius: 10px
+}
+
+.summary {
+ font-size: 1rem;
+ font-weight: 200;
+ background: transparent;
+ color: @text-color-alt;
+ text-shadow: none
+}
+
+.time {
+ font-size: 1rem;
+ font-weight: 200;
+ background: transparent;
+ color: @text-color;
+ text-shadow: none;
+ margin-right: 18px
+}
+
+.body {
+ font-size: 1rem;
+ font-weight: 200;
+ background: transparent;
+ color: @text-color;
+ text-shadow: none
+}
+
+.control-center {
+ background: @noti-bg;
+ border: 2px solid @noti-border-color;
+ border-radius: 10px;
+}
+
+.control-center-list {
+ background: transparent
+}
+
+.control-center-list-placeholder {
+ opacity: 0.5
+}
+
+.floating-notifications {
+ background: transparent;
+}
+
+.blank-window {
+ background: alpha(black, 0.1)
+}
+
+.widget-title {
+ color: @noti-border-color;
+ background: @noti-bg-alt;
+ padding: 3px 6px;
+ margin: 5px;
+ font-size: 1rem;
+ border-radius: 10px;
+}
+
+.widget-title>button {
+ font-size: 0.75rem;
+ color: @text-color;
+ border-radius: 10px;
+ background: transparent;
+ border: 0.5px solid @noti-border-color;
+}
+
+.widget-title>button:hover {
+ background: #f7768e;
+ color: @noti-border-color;
+}
+
+.widget-dnd {
+ background: @noti-bg-alt;
+ padding: 3px 6px;
+ margin: 5px;
+ border-radius: 10px;
+ font-size: 1rem;
+ color: @noti-border-color;
+}
+
+.widget-dnd>switch {
+ border-radius: 10px;
+ /* border: 1px solid #7aa2f7; */
+ background: @noti-border-color;
+}
+
+.widget-dnd>switch:checked {
+ background: #f7768e;
+ border: 1px solid #f7768e;
+}
+
+.widget-dnd>switch slider {
+ background: @noti-bg;
+ border-radius: 10px
+}
+
+.widget-dnd>switch:checked slider {
+ background: @noti-bg;
+ border-radius: 10px
+}
+
+.widget-label {
+ margin: 5px;
+}
+
+.widget-label>label {
+ font-size: 1rem;
+ color: @text-color;
+}
+
+.widget-mpris {
+ color: @text-color;
+ background: @noti-bg-alt;
+ padding: 3px 6px;
+ margin: 5px;
+ border-radius: 10px;
+}
+
+.widget-mpris > box > button {
+ border-radius: 10px;
+}
+
+.widget-mpris-player {
+ padding: 3px 6px;
+ margin: 5px;
+}
+
+.widget-mpris-title {
+ font-weight: 100;
+ font-size: 1rem
+}
+
+.widget-mpris-subtitle {
+ font-size: 0.75rem
+}
+
+.widget-buttons-grid {
+ font-size: large;
+ color: @noti-border-color;
+ padding: 2px;
+ margin: 5px;
+ border-radius: 10px;
+ background: @noti-bg-alt;
+}
+
+.widget-buttons-grid>flowbox>flowboxchild>button {
+ margin: 1px;
+ background: @noti-bg;
+ border-radius: 10px;
+ color: @text-color
+}
+
+.widget-buttons-grid>flowbox>flowboxchild>button:hover {
+ background: rgba(122, 162, 247, 0.1);
+ color: @text-color-alt
+}
+
+.widget-menubar>box>.menu-button-bar>button {
+ border: none;
+ background: transparent
+}
+
+.topbar-buttons>button {
+ border: none;
+ background: transparent
+}
+
+.widget-volume {
+ background: @noti-bg-alt;
+ padding: 2px;
+ margin: 10px 10px 5px 10px;
+ border-radius: 10px;
+ font-size: x-large;
+ color: @text-color
+}
+
+.widget-volume>box>button {
+ background: #7aa2f7;
+ border: none
+}
+
+.per-app-volume {
+ background-color: @noti-bg;
+ padding: 4px 8px 8px;
+ margin: 0 8px 8px;
+ border-radius: 10px;
+ color: @text-color
+}
+
+.widget-backlight {
+ background: @noti-bg-alt;
+ padding: 5px;
+ margin: 10px 10px 5px 10px;
+ border-radius: 10px;
+ font-size: x-large;
+ color: @text-color
+}
+
+.low {
+ background: @text-color;
+ padding: 0px;
+ border-radius: 10px;
+}
+
+.normal {
+ background: @text-color;
+ padding: 0px;
+ border-radius: 10px;
+}
+
+.critical {
+ background: red;
+ padding: 0px;
+ border-radius: 10px;
+}
diff --git a/config/waybar/configs/[BOT & Left] SouthWest b/config/waybar/configs/[BOT & Left] SouthWest
index 27bec45..14377d5 100644
--- a/config/waybar/configs/[BOT & Left] SouthWest
+++ b/config/waybar/configs/[BOT & Left] SouthWest
@@ -67,7 +67,8 @@
],
"modules-right": [
- "mpris",
+ "mpris",
+ "custom/swaync",
"tray",
"custom/light_dark",
],
diff --git a/config/waybar/configs/[BOT & Right] SouthEast b/config/waybar/configs/[BOT & Right] SouthEast
index 68629cb..7d684c8 100644
--- a/config/waybar/configs/[BOT & Right] SouthEast
+++ b/config/waybar/configs/[BOT & Right] SouthEast
@@ -67,7 +67,8 @@
],
"modules-right": [
- "mpris",
+ "mpris",
+ "custom/swaync",
"tray",
"custom/light_dark",
],
diff --git a/config/waybar/configs/[BOT] Camellia b/config/waybar/configs/[BOT] Camellia
index 0e2305a..e135258 100644
--- a/config/waybar/configs/[BOT] Camellia
+++ b/config/waybar/configs/[BOT] Camellia
@@ -24,6 +24,7 @@
"hyprland/workspaces#cam",
"custom/separator#line",
"mpris",
+ "custom/swaync",
"tray#cam",
"wlr/taskbar"],
diff --git a/config/waybar/configs/[BOT] Chrysanthemum b/config/waybar/configs/[BOT] Chrysanthemum
index 68bff67..e4f1fba 100644
--- a/config/waybar/configs/[BOT] Chrysanthemum
+++ b/config/waybar/configs/[BOT] Chrysanthemum
@@ -17,7 +17,7 @@
"margin-left": 5,
"margin-right": 5,
-"modules-left": ["clock#gar", "mpris", "tray"],
+"modules-left": ["clock#gar", "mpris", "custom/swaync", "tray"],
"modules-center": ["hyprland/workspaces"],
diff --git a/config/waybar/configs/[BOT] Default b/config/waybar/configs/[BOT] Default
index 36798ab..eece916 100644
--- a/config/waybar/configs/[BOT] Default
+++ b/config/waybar/configs/[BOT] Default
@@ -45,6 +45,7 @@
"modules-right": [
"network#speed",
"custom/separator#dot-line",
+ "custom/swaync",
"tray",
"mpris",
"custom/separator#dot-line",
diff --git a/config/waybar/configs/[BOT] Gardenia b/config/waybar/configs/[BOT] Gardenia
index ce46042..5d07152 100644
--- a/config/waybar/configs/[BOT] Gardenia
+++ b/config/waybar/configs/[BOT] Gardenia
@@ -20,7 +20,7 @@
"margin-bottom": 5,
"width": 768,
-"modules-left": ["clock#gar", "mpris", "tray"],
+"modules-left": ["clock#gar", "mpris", "custom/swaync", "tray"],
"modules-center": ["hyprland/workspaces#kanji"],
diff --git a/config/waybar/configs/[BOT] Peony b/config/waybar/configs/[BOT] Peony
index 7f049c1..dcdf4aa 100644
--- a/config/waybar/configs/[BOT] Peony
+++ b/config/waybar/configs/[BOT] Peony
@@ -32,7 +32,8 @@
"custom/separator#blank",
"temperature",
"custom/separator#blank",
- "network#peony"],
+ "network#peony",
+ "custom/swaync"],
//M O D U L E S //
diff --git a/config/waybar/configs/[BOT] Sleek b/config/waybar/configs/[BOT] Sleek
index 10175e8..10b62db 100644
--- a/config/waybar/configs/[BOT] Sleek
+++ b/config/waybar/configs/[BOT] Sleek
@@ -24,10 +24,10 @@
"modules-right": [
"tray",
+ "custom/swaync",
"pulseaudio",
"clock",
- "custom/power"
-
+ "custom/power"
],
diff --git a/config/waybar/configs/[Left] WestWing b/config/waybar/configs/[Left] WestWing
index 1458b43..a3381e8 100644
--- a/config/waybar/configs/[Left] WestWing
+++ b/config/waybar/configs/[Left] WestWing
@@ -27,7 +27,7 @@
"modules-right": [
"mpris",
"tray",
- //"network",
+ "custom/swaync",
"backlight#vertical",
"pulseaudio#microphone_vertical",
"pulseaudio#vertical",
diff --git a/config/waybar/configs/[Right] EastWing b/config/waybar/configs/[Right] EastWing
index 4fc258c..5ce7be2 100644
--- a/config/waybar/configs/[Right] EastWing
+++ b/config/waybar/configs/[Right] EastWing
@@ -27,7 +27,7 @@
"modules-right": [
"mpris",
"tray",
- //"network",
+ "custom/swaync",
"backlight#vertical",
"pulseaudio#microphone_vertical",
"pulseaudio#vertical",
diff --git a/config/waybar/configs/[TOP & BOT] SummitSplit b/config/waybar/configs/[TOP & BOT] SummitSplit
index 9564fe6..62cb449 100644
--- a/config/waybar/configs/[TOP & BOT] SummitSplit
+++ b/config/waybar/configs/[TOP & BOT] SummitSplit
@@ -68,6 +68,7 @@
"modules-right": [
"hyprland/window",
"tray",
+ "custom/swaync",
"mpris",
"keyboard-state",
"pulseaudio",
diff --git a/config/waybar/configs/[TOP & Left] NorthWest b/config/waybar/configs/[TOP & Left] NorthWest
index 6fc8464..81f2306 100644
--- a/config/waybar/configs/[TOP & Left] NorthWest
+++ b/config/waybar/configs/[TOP & Left] NorthWest
@@ -18,25 +18,25 @@
"margin-right": 8,
"modules-left": [
- "custom/menu",
+ "custom/menu",
"custom/separator#blank_2",
"group/motherboard",
],
"modules-center": [
- //"hyprland/window",
- "hyprland/workspaces#pacman",
+ //"hyprland/window",
+ "hyprland/workspaces#pacman",
],
"modules-right": [
- "network",
- "bluetooth",
+ "network",
+ "bluetooth",
"custom/weather",
"custom/separator#blank_2",
"group/audio",
"custom/separator#blank_2",
- "keyboard-state",
- "custom/power",
+ "keyboard-state",
+ "custom/power",
],
},
@@ -64,6 +64,7 @@
"modules-right": [
"mpris",
+ "custom/swaync",
"tray",
"custom/light_dark",
],
diff --git a/config/waybar/configs/[TOP & Right] NorthEast b/config/waybar/configs/[TOP & Right] NorthEast
index 84ab71e..21bcb2c 100644
--- a/config/waybar/configs/[TOP & Right] NorthEast
+++ b/config/waybar/configs/[TOP & Right] NorthEast
@@ -65,6 +65,7 @@
"modules-right": [
"mpris",
+ "custom/swaync",
"tray",
"custom/light_dark",
],
diff --git a/config/waybar/configs/[TOP] Camellia b/config/waybar/configs/[TOP] Camellia
index beeb80b..53e2fce 100644
--- a/config/waybar/configs/[TOP] Camellia
+++ b/config/waybar/configs/[TOP] Camellia
@@ -23,7 +23,8 @@
"modules-left": [
"hyprland/workspaces#cam",
"custom/separator#line",
- "mpris",
+ "mpris",
+ "custom/swaync",
"tray#cam",
"wlr/taskbar"
],
diff --git a/config/waybar/configs/[TOP] Chrysanthemum b/config/waybar/configs/[TOP] Chrysanthemum
index b869184..b231047 100644
--- a/config/waybar/configs/[TOP] Chrysanthemum
+++ b/config/waybar/configs/[TOP] Chrysanthemum
@@ -18,7 +18,7 @@
"margin-right": 5,
"margin-top": 0,
-"modules-left": ["clock#gar", "mpris", "tray"],
+"modules-left": ["clock#gar", "mpris", "tray", "custom/swaync"],
"modules-center": ["hyprland/workspaces"],
diff --git a/config/waybar/configs/[TOP] Default b/config/waybar/configs/[TOP] Default
index a75f752..b40bc57 100644
--- a/config/waybar/configs/[TOP] Default
+++ b/config/waybar/configs/[TOP] Default
@@ -45,6 +45,7 @@
"modules-right": [
"network#speed",
"custom/separator#dot-line",
+ "custom/swaync",
"tray",
"mpris",
"custom/separator#dot-line",
diff --git a/config/waybar/configs/[TOP] Default Laptop b/config/waybar/configs/[TOP] Default Laptop
index 24f2755..89f6bbb 100644
--- a/config/waybar/configs/[TOP] Default Laptop
+++ b/config/waybar/configs/[TOP] Default Laptop
@@ -45,6 +45,7 @@
"modules-right": [
"network#speed",
"custom/separator#dot-line",
+ "custom/swaync",
"tray",
"mpris",
"custom/separator#dot-line",
diff --git a/config/waybar/configs/[TOP] Gardenia b/config/waybar/configs/[TOP] Gardenia
index 293c985..44c2de4 100644
--- a/config/waybar/configs/[TOP] Gardenia
+++ b/config/waybar/configs/[TOP] Gardenia
@@ -19,7 +19,7 @@
//"margin-bottom": 5,
"width": 768,
-"modules-left": ["clock#gar", "mpris", "tray"],
+"modules-left": ["clock#gar", "mpris", "tray", "custom/swaync"],
"modules-center": ["hyprland/workspaces#kanji"],
diff --git a/config/waybar/configs/[TOP] Minimal - Long b/config/waybar/configs/[TOP] Minimal - Long
index 8bc41ea..52e16fd 100644
--- a/config/waybar/configs/[TOP] Minimal - Long
+++ b/config/waybar/configs/[TOP] Minimal - Long
@@ -22,6 +22,7 @@
"hyprland/workspaces#pacman",
"custom/separator#blank_2",
"mpris",
+ "custom/swaync",
"tray",
],
"modules-center": [
diff --git a/config/waybar/configs/[TOP] Minimal - Short b/config/waybar/configs/[TOP] Minimal - Short
index 2282d93..99616d8 100644
--- a/config/waybar/configs/[TOP] Minimal - Short
+++ b/config/waybar/configs/[TOP] Minimal - Short
@@ -21,6 +21,7 @@
"modules-right": [
"custom/menu",
"tray",
+ "custom/swaync",
"mpris",
"network",
"bluetooth",
diff --git a/config/waybar/configs/[TOP] Peony b/config/waybar/configs/[TOP] Peony
index 83ec43f..c01ab10 100644
--- a/config/waybar/configs/[TOP] Peony
+++ b/config/waybar/configs/[TOP] Peony
@@ -19,7 +19,7 @@
//"margin-bottom": 5,
"width": 1444,
-"modules-left": ["hyprland/workspaces#roman", "mpris", "tray#peony"],
+"modules-left": ["hyprland/workspaces#roman", "mpris", "custom/swaync", "tray#peony"],
"modules-center": ["clock#peony"],
diff --git a/config/waybar/configs/[TOP] Sleek b/config/waybar/configs/[TOP] Sleek
index 5f3b39c..dbd8a7e 100644
--- a/config/waybar/configs/[TOP] Sleek
+++ b/config/waybar/configs/[TOP] Sleek
@@ -13,7 +13,8 @@
"modules-left": [
"custom/menu",
"custom/separator#blank_2",
- "mpris",
+ "clock",
+ "custom/separator#blank_2",
"hyprland/window"
],
@@ -22,11 +23,15 @@
],
"modules-right": [
+ "custom/swaync",
+ "custom/separator#blank",
"tray",
+ "custom/separator#blank",
+ "mpris",
+ "custom/separator#blank",
"pulseaudio",
- "clock",
- "custom/power"
-
+ "custom/separator#blank",
+ "custom/power",
],
diff --git a/config/waybar/modules b/config/waybar/modules
index a462e75..2841dc3 100644
--- a/config/waybar/modules
+++ b/config/waybar/modules
@@ -526,7 +526,7 @@
"exec": "echo ; echo app launcher",
"interval" : 86400, // once every day
"tooltip": true,
- "on-click": "pkill rofi || rofi -show drun -modi run,drun,filebrowser",
+ "on-click": "pkill rofi || rofi -show drun -modi run,drun,filebrowser,window",
"on-click-middle": "~/.config/hypr/scripts/WallpaperSelect.sh",
"on-click-right": "~/.config/hypr/scripts/WaybarLayout.sh",
},
@@ -544,6 +544,27 @@
"on-scroll-down": "~/.config/hypr/scripts/Volume.sh --dec",
"smooth-scrolling-threshold": 1,
},
+
+"custom/swaync": {
+ "tooltip":true,
+ "format": "{icon} {}",
+ "format-icons": {
+ "notification": "",
+ "none": "",
+ "dnd-notification": "",
+ "dnd-none": "",
+ "inhibited-notification": "",
+ "inhibited-none": "",
+ "dnd-inhibited-notification": "",
+ "dnd-inhibited-none": ""
+ },
+ "return-type": "json",
+ "exec-if": "which swaync-client",
+ "exec": "swaync-client -swb",
+ "on-click": "sleep 0.1 && swaync-client -t -sw",
+ "on-click-right": "swaync-client -d -sw",
+ "escape": true,
+},
"custom/power": {
"format": "⏻ ",
@@ -569,8 +590,8 @@
"format-alt-click": "click",
"interval": 3600,
"return-type": "json",
- "exec": "~/.config/hypr/scripts/Weather.sh",
- //"exec": "~/.config/hypr/scripts/Weather.py",
+ "exec": "~/.config/hypr/UserScripts/Weather.sh",
+ //"exec": "~/.config/hypr/UserScripts/Weather.py",
"exec-if": "ping wttr.in -c1",
"tooltip" : true,
},
@@ -715,7 +736,6 @@
"tooltip": true,
},
-
}
diff --git a/config/waybar/style/Catppuccin-Latte.css b/config/waybar/style/Catppuccin-Latte.css
index eff29a7..18b1663 100644
--- a/config/waybar/style/Catppuccin-Latte.css
+++ b/config/waybar/style/Catppuccin-Latte.css
@@ -75,6 +75,7 @@ window#waybar.hidden {
#custom-lock,
#custom-menu,
#custom-power,
+#custom-speaker,
#custom-power_vertical,
#custom-updater,
#custom-weather,
@@ -123,6 +124,10 @@ window#waybar.hidden {
box-shadow: inset 0 -3px transparent;
}
+#bluetooth {
+ color: @blue;
+}
+
#clock {
color: @yellow;
}
diff --git a/config/waybar/style/Catppuccin-Mocha.css b/config/waybar/style/Catppuccin-Mocha.css
index 63075ef..061106c 100644
--- a/config/waybar/style/Catppuccin-Mocha.css
+++ b/config/waybar/style/Catppuccin-Mocha.css
@@ -82,7 +82,7 @@ window#waybar.hidden {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -105,6 +105,7 @@ window#waybar.hidden {
color: @blue;
}
+#bluetooth,
#backlight {
color: @blue;
}
diff --git a/config/waybar/style/Crimson.css b/config/waybar/style/Crimson.css
index acf8048..fcac5dc 100644
--- a/config/waybar/style/Crimson.css
+++ b/config/waybar/style/Crimson.css
@@ -137,7 +137,7 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Dark] Purpl.css b/config/waybar/style/Purpl.css
similarity index 99%
rename from config/waybar/style/[Dark] Purpl.css
rename to config/waybar/style/Purpl.css
index e3a3573..0f97470 100644
--- a/config/waybar/style/[Dark] Purpl.css
+++ b/config/waybar/style/Purpl.css
@@ -147,7 +147,7 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/Rose Pine.css b/config/waybar/style/Rose Pine.css
index f4ba430..4a15422 100644
--- a/config/waybar/style/Rose Pine.css
+++ b/config/waybar/style/Rose Pine.css
@@ -126,8 +126,9 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
+#custom-swaync,
#custom-weather,
#custom-weather.clearNight,
#custom-weather.cloudyFoggyDay,
diff --git a/config/waybar/style/Simple Pink.css b/config/waybar/style/Simple Pink.css
index f449e7a..d306dd8 100644
--- a/config/waybar/style/Simple Pink.css
+++ b/config/waybar/style/Simple Pink.css
@@ -152,7 +152,7 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Black & White] Monochrome.css b/config/waybar/style/[Black & White] Monochrome.css
index 6574848..143e887 100644
--- a/config/waybar/style/[Black & White] Monochrome.css
+++ b/config/waybar/style/[Black & White] Monochrome.css
@@ -136,7 +136,7 @@ tooltip label{
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css b/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css
index ad1981e..1a29c40 100644
--- a/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css
+++ b/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css
@@ -76,6 +76,7 @@ window#waybar.empty #window {
#custom-menu,
#custom-power_vertical,
#custom-power,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -125,6 +126,7 @@ window#waybar.empty #window {
color: @rosewater;
}
+#custom-swaync,
#custom-keybinds,
#tray {
color: aliceblue;
diff --git a/config/waybar/style/[Colored] Chroma Glow.css b/config/waybar/style/[Colored] Chroma Glow.css
index e28973a..f324bf3 100644
--- a/config/waybar/style/[Colored] Chroma Glow.css
+++ b/config/waybar/style/[Colored] Chroma Glow.css
@@ -124,7 +124,7 @@ tooltip label{
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -223,6 +223,7 @@ label:focus {
color: #df3320;
}
+#custom-swaync,
#custom-keybinds {
color: #1e66f5;
}
diff --git a/config/waybar/style/[Colored] Translucent.css b/config/waybar/style/[Colored] Translucent.css
index 9a096c3..0e3cbaf 100644
--- a/config/waybar/style/[Colored] Translucent.css
+++ b/config/waybar/style/[Colored] Translucent.css
@@ -138,7 +138,7 @@ tooltip label{
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Colorful] Aurora Blossom.css b/config/waybar/style/[Colorful] Aurora Blossom.css
index 369300a..8a0f852 100644
--- a/config/waybar/style/[Colorful] Aurora Blossom.css
+++ b/config/waybar/style/[Colorful] Aurora Blossom.css
@@ -125,7 +125,7 @@ tooltip label{
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Colorful] Aurora.css b/config/waybar/style/[Colorful] Aurora.css
index 297be9d..a5e57cb 100644
--- a/config/waybar/style/[Colorful] Aurora.css
+++ b/config/waybar/style/[Colorful] Aurora.css
@@ -115,7 +115,7 @@ tooltip label{
#custom-menu,
#custom-power,
#custom-power_vertical,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Colorful] Rainbow Spectrum.css b/config/waybar/style/[Colorful] Rainbow Spectrum.css
index 6515e14..333f798 100644
--- a/config/waybar/style/[Colorful] Rainbow Spectrum.css
+++ b/config/waybar/style/[Colorful] Rainbow Spectrum.css
@@ -80,7 +80,7 @@ tooltip label{
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -239,6 +239,7 @@ tooltip label{
background-color: #94e2d5;
}
+#custom-swaync,
#custom-weather {
background-color: #cba6f7;
}
diff --git a/config/waybar/style/[Dark] Golden Noir.css b/config/waybar/style/[Dark] Golden Noir.css
index 25be8e8..667b06e 100644
--- a/config/waybar/style/[Dark] Golden Noir.css
+++ b/config/waybar/style/[Dark] Golden Noir.css
@@ -150,7 +150,7 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Dark] Obsidian Edge.css b/config/waybar/style/[Dark] Obsidian Edge.css
index 587c3f0..8d21d72 100644
--- a/config/waybar/style/[Dark] Obsidian Edge.css
+++ b/config/waybar/style/[Dark] Obsidian Edge.css
@@ -143,7 +143,7 @@ tooltip label {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Light] Monochrome Contrast.css b/config/waybar/style/[Light] Monochrome Contrast.css
index d70ce5e..34b579f 100644
--- a/config/waybar/style/[Light] Monochrome Contrast.css
+++ b/config/waybar/style/[Light] Monochrome Contrast.css
@@ -137,7 +137,7 @@ tooltip label{
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Light] Obsidian Glow.css b/config/waybar/style/[Light] Obsidian Glow.css
index 9b4b07a..cd939b5 100644
--- a/config/waybar/style/[Light] Obsidian Glow.css
+++ b/config/waybar/style/[Light] Obsidian Glow.css
@@ -112,7 +112,7 @@ tooltip label {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Pywal] Chroma Edge.css b/config/waybar/style/[Pywal] Chroma Edge.css
index 0bc333a..282057c 100644
--- a/config/waybar/style/[Pywal] Chroma Edge.css
+++ b/config/waybar/style/[Pywal] Chroma Edge.css
@@ -117,7 +117,7 @@ tooltip label{
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -207,7 +207,8 @@ tooltip label{
color: #d6e7e5;
}
-#custom-weather.default {
+#custom-swaync,
+#custom-weather {
color: #ebecf0;
}
diff --git a/config/waybar/style/[Pywal] Chroma Fusion.css b/config/waybar/style/[Pywal] Chroma Fusion.css
index 05d881f..3f15037 100644
--- a/config/waybar/style/[Pywal] Chroma Fusion.css
+++ b/config/waybar/style/[Pywal] Chroma Fusion.css
@@ -76,6 +76,7 @@ window#waybar.empty #window {
#custom-menu,
#custom-power_vertical,
#custom-power,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -109,6 +110,7 @@ window#waybar.empty #window {
opacity:1.0;
}
+#custom-swaync,
#custom-weather,
#custom-updater {
color: @yellow;
diff --git a/config/waybar/style/[Pywal] Chroma Tally.css b/config/waybar/style/[Pywal] Chroma Tally.css
index 5ea40d8..c3a38fb 100644
--- a/config/waybar/style/[Pywal] Chroma Tally.css
+++ b/config/waybar/style/[Pywal] Chroma Tally.css
@@ -82,7 +82,7 @@ window#waybar {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -189,6 +189,7 @@ window#waybar {
#tray {
}
+#custom-swaync,
#custom-menu {
color: yellow;
}
diff --git a/config/waybar/style/[Pywal] Colored.css b/config/waybar/style/[Pywal] Colored.css
index b1e2b00..afb0128 100644
--- a/config/waybar/style/[Pywal] Colored.css
+++ b/config/waybar/style/[Pywal] Colored.css
@@ -144,7 +144,7 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Pywal] Simple.css b/config/waybar/style/[Pywal] Simple.css
index 9d8c1c8..6acef45 100644
--- a/config/waybar/style/[Pywal] Simple.css
+++ b/config/waybar/style/[Pywal] Simple.css
@@ -132,7 +132,7 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
diff --git a/config/waybar/style/[Retro] Simple Style.css b/config/waybar/style/[Retro] Simple Style.css
index da5c5a2..aaf14d6 100644
--- a/config/waybar/style/[Retro] Simple Style.css
+++ b/config/waybar/style/[Retro] Simple Style.css
@@ -75,7 +75,7 @@ window#waybar {
#custom-menu,
#custom-power_vertical,
#custom-power,
-#custom-speaker,
+#custom-swaync,
#custom-updater,
#custom-weather,
#custom-weather.clearNight,
@@ -89,7 +89,7 @@ window#waybar {
#custom-weather.snowyIcyNight,
#custom-weather.sunnyDay {
color: @foreground;
- padding: 5px 8px 5px 8px;
+ padding: 3px 6px 3px 6px;
}
#battery.warning,
diff --git a/config/waybar/style/[Transparent] Crystal Clear.css b/config/waybar/style/[Transparent] Crystal Clear.css
index 27cd99a..3f64235 100644
--- a/config/waybar/style/[Transparent] Crystal Clear.css
+++ b/config/waybar/style/[Transparent] Crystal Clear.css
@@ -122,6 +122,7 @@ tooltip {
#custom-menu,
#custom-power_vertical,
#custom-power,
+#custom-swaync,
#custom-spotify,
#custom-updater,
#custom-weather,
diff --git a/copy.sh b/copy.sh
index 3efaf59..62cc73a 100755
--- a/copy.sh
+++ b/copy.sh
@@ -4,6 +4,7 @@
clear
wallpaper=$HOME/Pictures/wallpapers/Cute-Cat_ja.jpg
+Waybar_Style="$HOME/.config/waybar/style/[Pywal] Chroma Fusion.css"
# Check if running as root. If root, script will exit
if [[ $EUID -eq 0 ]]; then
@@ -36,17 +37,17 @@ xdg-user-dirs-update 2>&1 | tee -a "$LOG" || true
# uncommenting WLR_NO_HARDWARE_CURSORS if nvidia is detected
if lspci -k | grep -A 2 -E "(VGA|3D)" | grep -iq nvidia; then
# NVIDIA GPU detected, uncomment line 23 in ENVariables.conf
- sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/configs/ENVariables.conf
- sed -i '/env = LIBVA_DRIVER_NAME,nvidia/s/^#//' config/hypr/configs/ENVariables.conf
- sed -i '/env = __GLX_VENDOR_LIBRARY_NAME,nvidia/s/^#//' config/hypr/configs/ENVariables.conf
+ sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/UserConfigs/ENVariables.conf
+ sed -i '/env = LIBVA_DRIVER_NAME,nvidia/s/^#//' config/hypr/UserConfigs/ENVariables.conf
+ sed -i '/env = __GLX_VENDOR_LIBRARY_NAME,nvidia/s/^#//' config/hypr/UserConfigs/ENVariables.conf
fi
# uncommenting WLR_RENDERER_ALLOW_SOFTWARE,1 if running in a VM is detected
if hostnamectl | grep -q 'Chassis: vm'; then
echo "This script is running in a virtual machine."
- sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/configs/ENVariables.conf
- sed -i '/env = WLR_RENDERER_ALLOW_SOFTWARE,1/s/^#//' config/hypr/configs/ENVariables.conf
- sed -i '/monitor = Virtual-1, 1920x1080@60,auto,1/s/^#//' config/hypr/configs/Monitors.conf
+ sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/UserConfigs/ENVariables.conf
+ sed -i '/env = WLR_RENDERER_ALLOW_SOFTWARE,1/s/^#//' config/hypr/UserConfigs/ENVariables.conf
+ sed -i '/monitor = Virtual-1, 1920x1080@60,auto,1/s/^#//' config/hypr/UserConfigs/Monitors.conf
fi
# Preparing hyprland.conf to check for current keyboard layout
@@ -98,8 +99,8 @@ while true; do
case $confirm in
[yY])
# If the detected layout is correct, update the 'kb_layout=' line in the file
- awk -v layout="$layout" '/kb_layout/ {$0 = " kb_layout=" layout} 1' config/hypr/configs/Settings.conf > temp.conf
- mv temp.conf config/hypr/configs/Settings.conf
+ awk -v layout="$layout" '/kb_layout/ {$0 = " kb_layout=" layout} 1' config/hypr/UserConfigs/UserSettings.conf > temp.conf
+ mv temp.conf config/hypr/UserConfigs/UserSettings.conf
break ;;
[nN])
printf "\n%.0s" {1..2}
@@ -111,8 +112,8 @@ while true; do
printf "\n%.0s" {1..2}
read -p "${CAT} - Please enter the correct keyboard layout: " new_layout
# Update the 'kb_layout=' line with the correct layout in the file
- awk -v new_layout="$new_layout" '/kb_layout/ {$0 = " kb_layout=" new_layout} 1' config/hypr/configs/Settings.conf > temp.conf
- mv temp.conf config/hypr/configs/Settings.conf
+ awk -v new_layout="$new_layout" '/kb_layout/ {$0 = " kb_layout=" new_layout} 1' config/hypr/UserConfigs/UserSettings.conf > temp.conf
+ mv temp.conf config/hypr/UserConfigs/UserSettings.conf
break ;;
*)
echo "Please enter either 'y' or 'n'." ;;
@@ -166,7 +167,7 @@ get_backup_dirname() {
echo "back-up_${timestamp}"
}
-for DIR in btop cava dunst hypr kitty Kvantum qt5ct qt6ct rofi swappy swaylock wal waybar wlogout; do
+for DIR in btop cava hypr kitty Kvantum qt5ct qt6ct rofi swappy swaync swaylock wal waybar wlogout; do
DIRPATH=~/.config/"$DIR"
if [ -d "$DIRPATH" ]; then
echo -e "${NOTE} - Config for $DIR found, attempting to back up."
@@ -198,7 +199,7 @@ cp -r wallpapers ~/Pictures/ && { echo "${OK}Copy completed!"; } || { echo "${ER
# Set some files as executable
chmod +x ~/.config/hypr/scripts/* 2>&1 | tee -a "$LOG"
-
+chmod +x ~/.config/hypr/UserScripts/* 2>&1 | tee -a "$LOG"
# Set executable for initial-boot.sh
chmod +x ~/.config/hypr/initial-boot.sh 2>&1 | tee -a "$LOG"
@@ -252,7 +253,7 @@ else
fi
# symlinks for waybar style
-ln -sf "$HOME/.config/waybar/style/[Pywal] Chroma Fusion.css" "$HOME/.config/waybar/style.css" && \
+ln -sf "$Waybar_Style" "$HOME/.config/waybar/style.css" && \
# initialize pywal to avoid config error on hyprland
wal -i $wallpaper -s -t 2>&1 | tee -a "$LOG"