first commit
11
CHANGELOGS.md
Normal file
@ -0,0 +1,11 @@
|
||||
## Changelogs
|
||||
|
||||
## 30-Sep-2023
|
||||
- added gnome-system-monitor (right click cpu module in waybar)
|
||||
|
||||
## 27-Sep-2023
|
||||
- remove auto start of portal-hyprland-hyprland
|
||||
- removal of Virtual-1 monitor in Monitors.conf
|
||||
|
||||
## 22-Sep-2023
|
||||
- initial release
|
||||
24
LICENSE.md
Normal file
@ -0,0 +1,24 @@
|
||||
This is free and unencumbered software released into the public domain.
|
||||
|
||||
Anyone is free to copy, modify, publish, use, compile, sell, or
|
||||
distribute this software, either in source code form or as a compiled
|
||||
binary, for any purpose, commercial or non-commercial, and by any
|
||||
means.
|
||||
|
||||
In jurisdictions that recognize copyright laws, the author or authors
|
||||
of this software dedicate any and all copyright interest in the
|
||||
software to the public domain. We make this dedication for the benefit
|
||||
of the public at large and to the detriment of our heirs and
|
||||
successors. We intend this dedication to be an overt act of
|
||||
relinquishment in perpetuity of all present and future rights to this
|
||||
software under copyright law.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
For more information, please refer to <https://unlicense.org>
|
||||
81
README.md
@ -1,2 +1,79 @@
|
||||
# Debian-Ubuntu-Hyprland
|
||||
BETA!! A Hyprland installer for Debian and Ubuntu
|
||||
|
||||
### Debian 12 Trixie- Hyprland install script based from my Fedora-Hyprland [`Link`](https://github.com/JaKooLit/Fedor-Hyprland) and Arch-Hyprland-v4 [`Link`](https://github.com/JaKooLit/Hyprland-v4)
|
||||
|
||||
### ⚠️ Pre-requisites:
|
||||
- Needs a Debian 12 Testing (Trixie) Branch as it needs a newer wayland packages! I have tried on Stable Debian 12 Bookworm in which, Hyprland wont build
|
||||
- if you have manually installed Debian, make sure that "deb-src's" are enabled in your /etc/apt/sources.list. By default, it will enable the first line with deb-src
|
||||
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
### 📷 you can find more screenshots in the screenshots directory
|
||||
|
||||
### ✨ Youtube presentation [`Link`]() - to be added soon :)
|
||||
|
||||
### ✨ Some notes on installation
|
||||
- This script is meant to install in Debian Testing (Trixie). But it may work in newer Ubuntu and based
|
||||
- I However, if you decided to try, recommend to install SDDM. Apart from GDM and SDDM, any other Login Manager may not work nor launch Hyprland. However, hyprland can be launched through tty by type Hyprland
|
||||
|
||||
### ⚠️ WARNING! nwg-look takes long time to install.
|
||||
- nwg-look is a utility to costumize your GTK theme. It's a LXAppearance like. Its a good tool though but this package is entirely optional
|
||||
|
||||
### ✨ Costumize the packages
|
||||
- inside the install-scripts folder, you can edit 00-hypr-pkgs.sh. Do not edit 00-dependencies.sh unless you know what you are doing
|
||||
- default GTK theme if agreed to be installed is Tokyo night GTK themes (dark and light) + Tokyo night SE icons
|
||||
|
||||
### 🔔 NOTICE TO NVIDIA OWNERS ###
|
||||
- by default it is installing the latest and newest nvidia drivers. If you have an older nvidia-gpu (GTX 800 series and older), check out nvidia-debian website [`LINK`](https://wiki.debian.org/NvidiaGraphicsDrivers) and edit nvidia.sh in install-scripts folder to install proper gpu driver
|
||||
|
||||
### ✨ to run
|
||||
> clone this repo by using git. Change directory, make executable and run the script
|
||||
```bash
|
||||
git clone https://github.com/JaKooLit/Debian-Ubuntu-Hyprland.git
|
||||
cd Debian-Ubuntu-Hyprland
|
||||
chmod +x install.sh
|
||||
./install.sh
|
||||
```
|
||||
### ✨ for ZSH and OH-MY-ZSH installation
|
||||
> do this once installed and script completed; do the following to change the default shell zsh
|
||||
```bash
|
||||
chsh -s $(which zsh)
|
||||
zsh
|
||||
source ~/.zshrc
|
||||
```
|
||||
- reboot or logout
|
||||
- by default mikeh theme is installed. You can find more themes from this [`OH-MY-ZSH-THEMES`](https://github.com/ohmyzsh/ohmyzsh/wiki/Themes)
|
||||
- to change the theme, edit ~/.zshrc ZSH_THEME="desired theme"
|
||||
|
||||
### ✨ Hyprland Dot Notes
|
||||
- super h for launching a small help file
|
||||
- super e to view / edit settings, monitor, keybinds, Environment Variables, etc
|
||||
- go through the keybinds. There are alot of hidden features like dual panel, change waybar styles, change wallpaper, etc... its too long to put all in the readme!!!
|
||||
- super d for wofi (menu)
|
||||
- super t for thunar (file manager)
|
||||
-
|
||||
### ✨ Roadmap:
|
||||
- [ ] Install zsh and oh-my-zsh without necessary steps above
|
||||
- [ ] possibly adding gruvbox themes, cursors, icons
|
||||
- [ ] adding vertical waybar
|
||||
- [X] ~~Use kitty in favor of foot~~ - Dropped the idea of kitty. Kitty is using twice memory compared to foot.
|
||||
|
||||
### ❗ some known issues
|
||||
- reports from members of my discord, states that some users of nvidia are getting stuck on sddm login. credit to @Kenni Fix stated was
|
||||
```
|
||||
while in sddm press ctrl+alt+F2 or F3
|
||||
log into your account
|
||||
`lspci -nn`, find the id of your nvidia card
|
||||
`ls /dev/dri/by-path` find the matching id
|
||||
`ls -l /dev/dri/by-path` to check where the symlink points to
|
||||
)
|
||||
7. add "env = WLR_DRM_DEVICES,/dev/dri/cardX" to the ENVvariables config (.config/hypr/configs/ENVariables.conf) ; X being where the symlink of the gpu points to
|
||||
```
|
||||
- more info from the hyprland wiki [`Hyprland Wiki Link`](https://wiki.hyprland.org/FAQ/#my-external-monitor-is-blank--doesnt-render--receives-no-signal-laptop)
|
||||
|
||||
- Does not work in Ubuntu 23.04
|
||||
### 👍 CREDITS
|
||||
|
||||
|
||||
18
assets/.zshrc
Normal file
@ -0,0 +1,18 @@
|
||||
# If you come from bash you might have to change your $PATH.
|
||||
# export PATH=$HOME/bin:/usr/local/bin:$PATH
|
||||
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
ZSH_THEME="gnzh"
|
||||
|
||||
plugins=(
|
||||
git
|
||||
dnf
|
||||
zsh-autosuggestions
|
||||
zsh-syntax-highlighting
|
||||
)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
|
||||
|
||||
5
assets/hyprland.desktop
Normal file
@ -0,0 +1,5 @@
|
||||
[Desktop Entry]
|
||||
Name=Hyprland
|
||||
Comment=An intelligent dynamic tiling Wayland compositor
|
||||
Exec=Hyprland
|
||||
Type=Application
|
||||
BIN
assets/tokyo-themes/Tokyonight-Dark-B.zip
Normal file
BIN
assets/tokyo-themes/Tokyonight-Light-B.zip
Normal file
131
config/Thunar/accels.scm
Normal file
@ -0,0 +1,131 @@
|
||||
; thunar GtkAccelMap rc-file -*- scheme -*-
|
||||
; this file is an automated accelerator map dump
|
||||
;
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-type" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-last-modified" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut" "<Primary>x")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/file-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-tab" "<Primary>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-window" "<Primary>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/05236c1e56bf89e963d95883e09da5b4" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/clear-directory-specific-settings" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-window" "<Primary>q")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-parent" "<Alt>Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size-in-bytes" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab" "<Primary>Page_Up")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/3925ac2f7e4055558c447a20c2e047ad" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open" "<Primary>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-ascending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-split-view" "F3")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy-2" "<Primary>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete" "Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-configure-toolbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward" "<Alt>Right")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location-alt" "<Alt>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/54b46b08907eba130aa7b45747971edc" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>minus")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/44e0e66b3d753576f90ed75c87917822" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-descending" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/b6b3368230fb9c168f1090ce48fbb4f5" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-all-files" "<Primary>a")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/execute" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/properties" "<Alt>Return")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut-2" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-dtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab" "<Primary>Page_Down")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste-2" "<Shift>Insert")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-templates" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-filetype" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/e02afe67295bafd99368cbfb38bfb76a" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-all-windows" "<Primary><Shift>w")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-document" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/detach-tab" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/707266d8a544f819b5de3061849d9040" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/978d3e7a7225e42c977fe94183792d87" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/cancel-search" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt2" "<Primary>equal")
|
||||
; (gtk_accel_path "<Actions>/ThunarShortcutsPane/sendto-shortcuts" "<Primary>d")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/undo" "<Primary>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/toggle-sort-order" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt" "F5")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-entry" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste" "<Primary>v")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt1" "<Primary>plus")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menubar" "<Primary>m")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back" "<Alt>Left")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-detailed-list" "<Primary>2")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore-show" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out" "<Primary>KP_Subtract")
|
||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-display-name" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/sendto-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/go-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload" "<Primary>r")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-3" "<Shift>KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-side-pane" "F9")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/unselect-all-files" "Escape")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/arrange-items-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-computer" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/bookmarks-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-image-preview" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-icons" "<Primary>1")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-2" "<Shift>Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in" "<Primary>KP_Add")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/rename" "F2")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location" "<Primary>l")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-compact-list" "<Primary>3")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/search" "<Primary>f")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-tab" "<Primary>t")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset" "<Primary>KP_0")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents/help-menu" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-tab" "<Primary><Shift>p")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-buttons" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/redo" "<Primary><Shift>z")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-window" "<Primary><Shift>o")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-statusbar" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-location" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/duplicate" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/c76f07a72d3c8ef5d4bf8e84c8981221" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/trash-delete-2" "KP_Delete")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/1b01cfaf1605da233a4b53296606bab0" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/780467f8577186d3f1806d9df2a8aab9" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/e9f83883e2df949f12acd9850f926a67" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-folder" "<Primary><Shift>n")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-home" "<Alt>Home")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-hidden" "<Primary>h")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt" "BackSpace")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/set-default-app" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/empty-trash" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/a02380ffe1621507749c5c5773da7194" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/preferences" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-tree" "<Primary>e")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-system" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-network" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarActionManager/sendto-desktop" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarStandardView/make-link" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/5a2d02665264f10a15b7d94f958e51dc" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset-alt" "<Primary>0")
|
||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/3b727c236c2811d0a6488b65982ea897" "")
|
||||
; (gtk_accel_path "<Actions>/ThunarWindow/about" "")
|
||||
10
config/Thunar/renamerrc
Normal file
@ -0,0 +1,10 @@
|
||||
[Configuration]
|
||||
LastActiveMode=THUNAR_RENAMER_MODE_NAME
|
||||
LastActiveRenamer=ThunarSbrDateRenamer
|
||||
|
||||
[ThunarSbrDateRenamer]
|
||||
Offset=0
|
||||
Mode=THUNAR_SBR_DATE_MODE_NOW
|
||||
Format=%Y%m%d
|
||||
OffsetMode=THUNAR_SBR_OFFSET_MODE_LEFT
|
||||
|
||||
59
config/Thunar/uca.xml
Normal file
@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<actions>
|
||||
<action>
|
||||
<icon>audacious</icon>
|
||||
<name>Add to audacious playlist</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1681893052016505-1</unique-id>
|
||||
<command>audacious -e %U</command>
|
||||
<description></description>
|
||||
<range>*</range>
|
||||
<patterns>*</patterns>
|
||||
<audio-files/>
|
||||
</action>
|
||||
<action>
|
||||
<icon>utilities-terminal</icon>
|
||||
<name>Open Terminal Here</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1488955845049151-1</unique-id>
|
||||
<command>for f in %F; do exo-open --working-directory "$f" --launch TerminalEmulator; done</command>
|
||||
<description></description>
|
||||
<range></range>
|
||||
<patterns>*</patterns>
|
||||
<startup-notify/>
|
||||
<directories/>
|
||||
</action>
|
||||
<action>
|
||||
<icon>checkbox</icon>
|
||||
<name>Check sha1sum</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1526633271260079-26</unique-id>
|
||||
<command>zenity --info --title="Check sha1 for %n" --text="$(sha1sum %f)"</command>
|
||||
<description>Check sha1sum</description>
|
||||
<range></range>
|
||||
<patterns>*.iso;*.ISO</patterns>
|
||||
<other-files/>
|
||||
</action>
|
||||
<action>
|
||||
<icon>checkbox</icon>
|
||||
<name>Check sha256sum</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1577688162350307-1</unique-id>
|
||||
<command>zenity --info --title="Check sha256 for %n" --text="$(sha256sum %f)"</command>
|
||||
<description>Check sha256sum</description>
|
||||
<range></range>
|
||||
<patterns>*.iso;*.ISO</patterns>
|
||||
<other-files/>
|
||||
</action>
|
||||
<action>
|
||||
<icon>checkbox</icon>
|
||||
<name>Check md5sum</name>
|
||||
<submenu></submenu>
|
||||
<unique-id>1526736788575383-2</unique-id>
|
||||
<command>zenity --info --title="Check md5 for %n" --text="$(md5sum %f)"</command>
|
||||
<description>Check md5sum</description>
|
||||
<range></range>
|
||||
<patterns>*.iso;*.ISO;*.tar.gz;*.TAR.GZ;*.zip;*.ZIP</patterns>
|
||||
<other-files/>
|
||||
</action>
|
||||
</actions>
|
||||
212
config/btop/btop.conf
Normal file
@ -0,0 +1,212 @@
|
||||
#? Config file for btop v. 1.2.13
|
||||
|
||||
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||
color_theme = "catppuccin_macchiato.theme"
|
||||
|
||||
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||
theme_background = False
|
||||
|
||||
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||
truecolor = True
|
||||
|
||||
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||
force_tty = False
|
||||
|
||||
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||
#* Use whitespace " " as separator between different presets.
|
||||
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||
|
||||
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
||||
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
||||
vim_keys = False
|
||||
|
||||
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||
rounded_corners = True
|
||||
|
||||
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||
#* "block" has half the resolution of braille but uses more common characters.
|
||||
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||
graph_symbol = "braille"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_cpu = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_mem = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_net = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_proc = "default"
|
||||
|
||||
#* Manually set which boxes to show. Available values are "cpu mem net proc", separate values with whitespace.
|
||||
shown_boxes = "proc cpu mem net"
|
||||
|
||||
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||
update_ms = 2000
|
||||
|
||||
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||
proc_sorting = "cpu lazy"
|
||||
|
||||
#* Reverse sorting order, True or False.
|
||||
proc_reversed = False
|
||||
|
||||
#* Show processes as a tree.
|
||||
proc_tree = False
|
||||
|
||||
#* Use the cpu graph colors in the process list.
|
||||
proc_colors = True
|
||||
|
||||
#* Use a darkening gradient in the process list.
|
||||
proc_gradient = True
|
||||
|
||||
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||
proc_per_core = False
|
||||
|
||||
#* Show process memory as bytes instead of percent.
|
||||
proc_mem_bytes = True
|
||||
|
||||
#* Show cpu graph for each process.
|
||||
proc_cpu_graphs = True
|
||||
|
||||
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||
proc_info_smaps = False
|
||||
|
||||
#* Show proc box on left side of screen instead of right.
|
||||
proc_left = False
|
||||
|
||||
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||
proc_filter_kernel = False
|
||||
|
||||
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_upper = "total"
|
||||
|
||||
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_lower = "total"
|
||||
|
||||
#* Toggles if the lower CPU graph should be inverted.
|
||||
cpu_invert_lower = True
|
||||
|
||||
#* Set to True to completely disable the lower CPU graph.
|
||||
cpu_single_graph = False
|
||||
|
||||
#* Show cpu box at bottom of screen instead of top.
|
||||
cpu_bottom = False
|
||||
|
||||
#* Shows the system uptime in the CPU box.
|
||||
show_uptime = True
|
||||
|
||||
#* Show cpu temperature.
|
||||
check_temp = True
|
||||
|
||||
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||
cpu_sensor = "Auto"
|
||||
|
||||
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||
show_coretemp = True
|
||||
|
||||
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||
#* Example: "4:0 5:1 6:3"
|
||||
cpu_core_map = ""
|
||||
|
||||
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||
temp_scale = "celsius"
|
||||
|
||||
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||
base_10_sizes = True
|
||||
|
||||
#* Show CPU frequency.
|
||||
show_cpu_freq = True
|
||||
|
||||
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||
clock_format = "%X"
|
||||
|
||||
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||
background_update = True
|
||||
|
||||
#* Custom cpu model name, empty string to disable.
|
||||
custom_cpu_name = ""
|
||||
|
||||
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||
#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user".
|
||||
disks_filter = ""
|
||||
|
||||
#* Show graphs instead of meters for memory values.
|
||||
mem_graphs = True
|
||||
|
||||
#* Show mem box below net box instead of above.
|
||||
mem_below_net = False
|
||||
|
||||
#* Count ZFS ARC in cached and available memory.
|
||||
zfs_arc_cached = True
|
||||
|
||||
#* If swap memory should be shown in memory box.
|
||||
show_swap = True
|
||||
|
||||
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||
swap_disk = True
|
||||
|
||||
#* If mem box should be split to also show disks info.
|
||||
show_disks = False
|
||||
|
||||
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||
only_physical = True
|
||||
|
||||
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||
use_fstab = True
|
||||
|
||||
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||
zfs_hide_datasets = False
|
||||
|
||||
#* Set to true to show available disk space for privileged users.
|
||||
disk_free_priv = False
|
||||
|
||||
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||
show_io_stat = True
|
||||
|
||||
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||
io_mode = False
|
||||
|
||||
#* Set to True to show combined read/write io graphs in io mode.
|
||||
io_graph_combined = False
|
||||
|
||||
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||
io_graph_speeds = ""
|
||||
|
||||
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||
net_download = 100
|
||||
|
||||
net_upload = 100
|
||||
|
||||
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||
net_auto = True
|
||||
|
||||
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||
net_sync = True
|
||||
|
||||
#* Starts with the Network Interface specified here.
|
||||
net_iface = ""
|
||||
|
||||
#* Show battery stats in top right if battery is present.
|
||||
show_battery = False
|
||||
|
||||
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||
selected_battery = "Auto"
|
||||
|
||||
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||
log_level = "WARNING"
|
||||
42
config/btop/themes/catppuccin_frappe.theme
Normal file
@ -0,0 +1,42 @@
|
||||
theme[main_bg]="#303446"
|
||||
theme[main_fg]="#C6D0F5"
|
||||
theme[title]="#C6D0F5"
|
||||
theme[hi_fg]="#8CAAEE"
|
||||
theme[selected_bg]="#51576D"
|
||||
theme[selected_fg]="#8CAAEE"
|
||||
theme[inactive_fg]="#838BA7"
|
||||
theme[graph_text]="#F2D5CF"
|
||||
theme[meter_bg]="#51576D"
|
||||
theme[proc_misc]="#F2D5CF"
|
||||
theme[cpu_box]="#85C1DC"
|
||||
theme[mem_box]="#A6D189"
|
||||
theme[net_box]="#CA9EE6"
|
||||
theme[proc_box]="#EEBEBE"
|
||||
theme[div_line]="#737994"
|
||||
theme[temp_start]="#E5C890"
|
||||
theme[temp_mid]="#EF9F76"
|
||||
theme[temp_end]="#E78284"
|
||||
theme[cpu_start]="#85C1DC"
|
||||
theme[cpu_mid]="#99D1DB"
|
||||
theme[cpu_end]="#81C8BE"
|
||||
theme[free_start]="#81C8BE"
|
||||
theme[free_mid]="#81C8BE"
|
||||
theme[free_end]="#A6D189"
|
||||
theme[cached_start]="#F4B8E4"
|
||||
theme[cached_mid]="#F4B8E4"
|
||||
theme[cached_end]="#CA9EE6"
|
||||
theme[available_start]="#F2D5CF"
|
||||
theme[available_mid]="#EEBEBE"
|
||||
theme[available_end]="#EEBEBE"
|
||||
theme[used_start]="#EF9F76"
|
||||
theme[used_mid]="#EF9F76"
|
||||
theme[used_end]="#E78284"
|
||||
theme[download_start]="#BABBF1"
|
||||
theme[download_mid]="#BABBF1"
|
||||
theme[download_end]="#CA9EE6"
|
||||
theme[upload_start]="#BABBF1"
|
||||
theme[upload_mid]="#BABBF1"
|
||||
theme[upload_end]="#CA9EE6"
|
||||
theme[process_start]="#85C1DC"
|
||||
theme[process_mid]="#99D1DB"
|
||||
theme[process_end]="#81C8BE"
|
||||
42
config/btop/themes/catppuccin_latte.theme
Normal file
@ -0,0 +1,42 @@
|
||||
theme[main_bg]="#EFF1F5"
|
||||
theme[main_fg]="#4C4F69"
|
||||
theme[title]="#4C4F69"
|
||||
theme[hi_fg]="#1E66F5"
|
||||
theme[selected_bg]="#BCC0CC"
|
||||
theme[selected_fg]="#1E66F5"
|
||||
theme[inactive_fg]="#8C8FA1"
|
||||
theme[graph_text]="#DC8A78"
|
||||
theme[meter_bg]="#BCC0CC"
|
||||
theme[proc_misc]="#DC8A78"
|
||||
theme[cpu_box]="#209FB5"
|
||||
theme[mem_box]="#40A02B"
|
||||
theme[net_box]="#8839EF"
|
||||
theme[proc_box]="#DD7878"
|
||||
theme[div_line]="#9CA0B0"
|
||||
theme[temp_start]="#DF8E1D"
|
||||
theme[temp_mid]="#FE640B"
|
||||
theme[temp_end]="#D20F39"
|
||||
theme[cpu_start]="#209FB5"
|
||||
theme[cpu_mid]="#04A5E5"
|
||||
theme[cpu_end]="#179299"
|
||||
theme[free_start]="#179299"
|
||||
theme[free_mid]="#179299"
|
||||
theme[free_end]="#40A02B"
|
||||
theme[cached_start]="#EA76CB"
|
||||
theme[cached_mid]="#EA76CB"
|
||||
theme[cached_end]="#8839EF"
|
||||
theme[available_start]="#DC8A78"
|
||||
theme[available_mid]="#DD7878"
|
||||
theme[available_end]="#DD7878"
|
||||
theme[used_start]="#FE640B"
|
||||
theme[used_mid]="#FE640B"
|
||||
theme[used_end]="#D20F39"
|
||||
theme[download_start]="#7287FD"
|
||||
theme[download_mid]="#7287FD"
|
||||
theme[download_end]="#8839EF"
|
||||
theme[upload_start]="#7287FD"
|
||||
theme[upload_mid]="#7287FD"
|
||||
theme[upload_end]="#8839EF"
|
||||
theme[process_start]="#209FB5"
|
||||
theme[process_mid]="#04A5E5"
|
||||
theme[process_end]="#179299"
|
||||
42
config/btop/themes/catppuccin_macchiato.theme
Normal file
@ -0,0 +1,42 @@
|
||||
theme[main_bg]="#24273A"
|
||||
theme[main_fg]="#CAD3F5"
|
||||
theme[title]="#CAD3F5"
|
||||
theme[hi_fg]="#8AADF4"
|
||||
theme[selected_bg]="#494D64"
|
||||
theme[selected_fg]="#8AADF4"
|
||||
theme[inactive_fg]="#8087A2"
|
||||
theme[graph_text]="#F4DBD6"
|
||||
theme[meter_bg]="#494D64"
|
||||
theme[proc_misc]="#F4DBD6"
|
||||
theme[cpu_box]="#7DC4E4"
|
||||
theme[mem_box]="#A6DA95"
|
||||
theme[net_box]="#C6A0F6"
|
||||
theme[proc_box]="#F0C6C6"
|
||||
theme[div_line]="#6E738D"
|
||||
theme[temp_start]="#EED49F"
|
||||
theme[temp_mid]="#F5A97F"
|
||||
theme[temp_end]="#ED8796"
|
||||
theme[cpu_start]="#7DC4E4"
|
||||
theme[cpu_mid]="#91D7E3"
|
||||
theme[cpu_end]="#8BD5CA"
|
||||
theme[free_start]="#8BD5CA"
|
||||
theme[free_mid]="#8BD5CA"
|
||||
theme[free_end]="#A6DA95"
|
||||
theme[cached_start]="#F5BDE6"
|
||||
theme[cached_mid]="#F5BDE6"
|
||||
theme[cached_end]="#C6A0F6"
|
||||
theme[available_start]="#F4DBD6"
|
||||
theme[available_mid]="#F0C6C6"
|
||||
theme[available_end]="#F0C6C6"
|
||||
theme[used_start]="#F5A97F"
|
||||
theme[used_mid]="#F5A97F"
|
||||
theme[used_end]="#ED8796"
|
||||
theme[download_start]="#B7BDF8"
|
||||
theme[download_mid]="#B7BDF8"
|
||||
theme[download_end]="#C6A0F6"
|
||||
theme[upload_start]="#B7BDF8"
|
||||
theme[upload_mid]="#B7BDF8"
|
||||
theme[upload_end]="#C6A0F6"
|
||||
theme[process_start]="#7DC4E4"
|
||||
theme[process_mid]="#91D7E3"
|
||||
theme[process_end]="#8BD5CA"
|
||||
42
config/btop/themes/catppuccin_mocha.theme
Normal file
@ -0,0 +1,42 @@
|
||||
theme[main_bg]="#1E1E2E"
|
||||
theme[main_fg]="#CDD6F4"
|
||||
theme[title]="#CDD6F4"
|
||||
theme[hi_fg]="#89B4FA"
|
||||
theme[selected_bg]="#45475A"
|
||||
theme[selected_fg]="#89B4FA"
|
||||
theme[inactive_fg]="#7F849C"
|
||||
theme[graph_text]="#F5E0DC"
|
||||
theme[meter_bg]="#45475A"
|
||||
theme[proc_misc]="#F5E0DC"
|
||||
theme[cpu_box]="#74C7EC"
|
||||
theme[mem_box]="#A6E3A1"
|
||||
theme[net_box]="#CBA6F7"
|
||||
theme[proc_box]="#F2CDCD"
|
||||
theme[div_line]="#6C7086"
|
||||
theme[temp_start]="#F9E2AF"
|
||||
theme[temp_mid]="#FAB387"
|
||||
theme[temp_end]="#F38BA8"
|
||||
theme[cpu_start]="#74C7EC"
|
||||
theme[cpu_mid]="#89DCEB"
|
||||
theme[cpu_end]="#94E2D5"
|
||||
theme[free_start]="#94E2D5"
|
||||
theme[free_mid]="#94E2D5"
|
||||
theme[free_end]="#A6E3A1"
|
||||
theme[cached_start]="#F5C2E7"
|
||||
theme[cached_mid]="#F5C2E7"
|
||||
theme[cached_end]="#CBA6F7"
|
||||
theme[available_start]="#F5E0DC"
|
||||
theme[available_mid]="#F2CDCD"
|
||||
theme[available_end]="#F2CDCD"
|
||||
theme[used_start]="#FAB387"
|
||||
theme[used_mid]="#FAB387"
|
||||
theme[used_end]="#F38BA8"
|
||||
theme[download_start]="#B4BEFE"
|
||||
theme[download_mid]="#B4BEFE"
|
||||
theme[download_end]="#CBA6F7"
|
||||
theme[upload_start]="#B4BEFE"
|
||||
theme[upload_mid]="#B4BEFE"
|
||||
theme[upload_end]="#CBA6F7"
|
||||
theme[process_start]="#74C7EC"
|
||||
theme[process_mid]="#89DCEB"
|
||||
theme[process_end]="#94E2D5"
|
||||
184
config/cava/config
Normal file
@ -0,0 +1,184 @@
|
||||
## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting.
|
||||
|
||||
|
||||
[general]
|
||||
|
||||
# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0
|
||||
; mode = normal
|
||||
|
||||
# Accepts only non-negative values.
|
||||
; framerate = 60
|
||||
|
||||
# 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off
|
||||
# new as of 0.6.0 autosens of low values (dynamic range)
|
||||
# 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0
|
||||
; autosens = 1
|
||||
; overshoot = 20
|
||||
|
||||
# Manual sensitivity in %. If autosens is enabled, this will only be the initial value.
|
||||
# 200 means double height. Accepts only non-negative values.
|
||||
; sensitivity = 100
|
||||
|
||||
# The number of bars (0-200). 0 sets it to auto (fill up console).
|
||||
# Bars' width and space between bars in number of characters.
|
||||
; bars = 0
|
||||
; bar_width = 2
|
||||
; bar_spacing = 1
|
||||
|
||||
# For SDL width and space between bars is in pixels, defaults are:
|
||||
; bar_width = 20
|
||||
; bar_spacing = 5
|
||||
|
||||
|
||||
# Lower and higher cutoff frequencies for lowest and highest bars
|
||||
# the bandwidth of the visualizer.
|
||||
# Note: there is a minimum total bandwidth of 43Mhz x number of bars.
|
||||
# Cava will automatically increase the higher cutoff if a too low band is specified.
|
||||
; lower_cutoff_freq = 50
|
||||
; higher_cutoff_freq = 10000
|
||||
|
||||
|
||||
# Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and
|
||||
# only check for input once per second. Cava will wake up once input is detected. 0 = disable.
|
||||
; sleep_timer = 0
|
||||
|
||||
|
||||
[input]
|
||||
|
||||
# Audio capturing method. Possible methods are: 'pulse', 'alsa', 'fifo', 'sndio' or 'shmem'
|
||||
# Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with.
|
||||
#
|
||||
# All input methods uses the same config variable 'source'
|
||||
# to define where it should get the audio.
|
||||
#
|
||||
# For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink
|
||||
# (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them).
|
||||
#
|
||||
# For alsa 'source' will be the capture device.
|
||||
# For fifo 'source' will be the path to fifo-file.
|
||||
# For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address
|
||||
method = pulse
|
||||
source = auto
|
||||
|
||||
; method = alsa
|
||||
; source = hw:Loopback,1
|
||||
|
||||
; method = fifo
|
||||
; source = /tmp/mpd.fifo
|
||||
; sample_rate = 44100
|
||||
; sample_bits = 16
|
||||
|
||||
; method = shmem
|
||||
; source = /squeezelite-AA:BB:CC:DD:EE:FF
|
||||
|
||||
; method = portaudio
|
||||
; source = auto
|
||||
|
||||
|
||||
[output]
|
||||
|
||||
# Output method. Can be 'ncurses', 'noncurses', 'raw' or 'sdl'.
|
||||
# 'noncurses' uses a custom framebuffer technique and prints only changes
|
||||
# from frame to frame in the terminal. 'ncurses' is default if supported.
|
||||
#
|
||||
# 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data
|
||||
# stream of the bar heights that can be used to send to other applications.
|
||||
# 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above.
|
||||
#
|
||||
# 'sdl' uses the Simple DirectMedia Layer to render in a graphical context.
|
||||
; method = ncurses
|
||||
|
||||
# Visual channels. Can be 'stereo' or 'mono'.
|
||||
# 'stereo' mirrors both channels with low frequencies in center.
|
||||
# 'mono' outputs left to right lowest to highest frequencies.
|
||||
# 'mono_option' set mono to either take input from 'left', 'right' or 'average'.
|
||||
; channels = stereo
|
||||
; mono_option = average
|
||||
|
||||
# Raw output target. A fifo will be created if target does not exist.
|
||||
; raw_target = /dev/stdout
|
||||
|
||||
# Raw data format. Can be 'binary' or 'ascii'.
|
||||
; data_format = binary
|
||||
|
||||
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
|
||||
; bit_format = 16bit
|
||||
|
||||
# Ascii max value. In 'ascii' mode range will run from 0 to value specified here
|
||||
; ascii_max_range = 1000
|
||||
|
||||
# Ascii delimiters. In ascii format each bar and frame is separated by a delimiters.
|
||||
# Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)).
|
||||
; bar_delimiter = 59
|
||||
; frame_delimiter = 10
|
||||
|
||||
# sdl window size and position. -1,-1 is centered.
|
||||
; sdl_width = 1000
|
||||
; sdl_height = 500
|
||||
; sdl_x = -1
|
||||
; sdl_y= -1
|
||||
|
||||
[color]
|
||||
|
||||
# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow.
|
||||
# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires
|
||||
# ncurses output method and a terminal that can change color definitions such as Gnome-terminal or rxvt.
|
||||
# if supported, ncurses mode will be forced on if user defined colors are used.
|
||||
# default is to keep current terminal color
|
||||
; background = default
|
||||
; foreground = default
|
||||
|
||||
# SDL only support hex code colors, these are the default:
|
||||
; background = '#111111'
|
||||
; foreground = '#33cccc'
|
||||
|
||||
|
||||
# Gradient mode, only hex defined colors (and thereby ncurses mode) are supported,
|
||||
# background must also be defined in hex or remain commented out. 1 = on, 0 = off.
|
||||
# You can define as many as 8 different colors. They range from bottom to top of screen
|
||||
# In the [color] section
|
||||
|
||||
[color]
|
||||
|
||||
gradient = 1
|
||||
|
||||
gradient_color_1 = '#94e2d5'
|
||||
gradient_color_2 = '#89dceb'
|
||||
gradient_color_3 = '#74c7ec'
|
||||
gradient_color_4 = '#89b4fa'
|
||||
gradient_color_5 = '#cba6f7'
|
||||
gradient_color_6 = '#f5c2e7'
|
||||
gradient_color_7 = '#eba0ac'
|
||||
gradient_color_8 = '#f38ba8'
|
||||
|
||||
|
||||
|
||||
[smoothing]
|
||||
|
||||
# Percentage value for integral smoothing. Takes values from 0 - 100.
|
||||
# Higher values means smoother, but less precise. 0 to disable.
|
||||
; integral = 77
|
||||
|
||||
# Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable.
|
||||
; monstercat = 0
|
||||
; waves = 0
|
||||
|
||||
# Set gravity percentage for "drop off". Higher values means bars will drop faster.
|
||||
# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off".
|
||||
; gravity = 100
|
||||
|
||||
|
||||
# In bar height, bars that would have been lower that this will not be drawn.
|
||||
; ignore = 0
|
||||
|
||||
|
||||
[eq]
|
||||
|
||||
# This one is tricky. You can have as much keys as you want.
|
||||
# Remember to uncomment more then one key! More keys = more precision.
|
||||
# Look at readme.md on github for further explanations and examples.
|
||||
; 1 = 1 # bass
|
||||
; 2 = 1
|
||||
; 3 = 1 # midtone
|
||||
; 4 = 1
|
||||
; 5 = 1 # treble
|
||||
79
config/cava/shaders/bar_spectrum.frag
Normal file
@ -0,0 +1,79 @@
|
||||
#version 330
|
||||
|
||||
in vec2 fragCoord;
|
||||
out vec4 fragColor;
|
||||
|
||||
// bar values. defaults to left channels first (low to high), then right (high to low).
|
||||
uniform float bars[512];
|
||||
|
||||
uniform int bars_count; // number of bars (left + right) (configurable)
|
||||
uniform int bar_width; // bar width (configurable), not used here
|
||||
uniform int bar_spacing; // space bewteen bars (configurable)
|
||||
|
||||
uniform vec3 u_resolution; // window resolution
|
||||
|
||||
//colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
|
||||
uniform vec3 bg_color; // background color
|
||||
uniform vec3 fg_color; // foreground color
|
||||
|
||||
uniform int gradient_count;
|
||||
uniform vec3 gradient_colors[8]; // gradient colors
|
||||
|
||||
vec3 normalize_C(float y,vec3 col_1, vec3 col_2, float y_min, float y_max)
|
||||
{
|
||||
//create color based on fraction of this color and next color
|
||||
float yr = (y - y_min) / (y_max - y_min);
|
||||
return col_1 * (1.0 - yr) + col_2 * yr;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
// find which bar to use based on where we are on the x axis
|
||||
float x = u_resolution.x * fragCoord.x;
|
||||
int bar = int(bars_count * fragCoord.x);
|
||||
|
||||
//calculate a bar size
|
||||
float bar_size = u_resolution.x / bars_count;
|
||||
|
||||
//the y coordinate and bar values are the same
|
||||
float y = bars[bar];
|
||||
|
||||
// make sure there is a thin line at bottom
|
||||
if (y * u_resolution.y < 1.0)
|
||||
{
|
||||
y = 1.0 / u_resolution.y;
|
||||
}
|
||||
|
||||
//draw the bar up to current height
|
||||
if (y > fragCoord.y)
|
||||
{
|
||||
//make some space between bars basen on settings
|
||||
if (x > (bar + 1) * (bar_size) - bar_spacing)
|
||||
{
|
||||
fragColor = vec4(bg_color,1.0);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (gradient_count == 0)
|
||||
{
|
||||
fragColor = vec4(fg_color,1.0);
|
||||
}
|
||||
else
|
||||
{
|
||||
//find which color in the configured gradient we are at
|
||||
int color = int((gradient_count - 1) * fragCoord.y);
|
||||
|
||||
//find where on y this and next color is supposed to be
|
||||
float y_min = color / (gradient_count - 1.0);
|
||||
float y_max = (color + 1.0) / (gradient_count - 1.0);
|
||||
|
||||
//make color
|
||||
fragColor = vec4(normalize_C(fragCoord.y, gradient_colors[color], gradient_colors[color + 1], y_min, y_max), 1.0);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
fragColor = vec4(bg_color,1.0);
|
||||
}
|
||||
}
|
||||
38
config/cava/shaders/normalized_bars.frag
Normal file
@ -0,0 +1,38 @@
|
||||
#version 330
|
||||
|
||||
in vec2 fragCoord;
|
||||
out vec4 fragColor;
|
||||
|
||||
// bar values. defaults to left channels first (low to high), then right (high to low).
|
||||
uniform float bars[512];
|
||||
|
||||
uniform int bars_count; // number of bars (left + right) (configurable)
|
||||
|
||||
uniform vec3 u_resolution; // window resolution, not used here
|
||||
|
||||
//colors, configurable in cava config file
|
||||
uniform vec3 bg_color; // background color(r,g,b) (0.0 - 1.0), not used here
|
||||
uniform vec3 fg_color; // foreground color, not used here
|
||||
|
||||
float normalize_C(float x, float x_min, float x_max, float r_min, float r_max )
|
||||
{
|
||||
float xr;
|
||||
xr = (r_max-r_min) * (x - x_min) / (x_max - x_min) + r_min;
|
||||
return xr;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
// find which bar to use based on where we are on the x axis
|
||||
int bar = int(bars_count * fragCoord.x);
|
||||
|
||||
// create a normal along the y axis based on the bar height
|
||||
float x = normalize_C(fragCoord.y, 1.0, 0.0, 0.0, bars[bar]);
|
||||
|
||||
// set color
|
||||
fragColor.r=fg_color.x*x;
|
||||
fragColor.g=fg_color.y*x;
|
||||
fragColor.b=fg_color.z*x;
|
||||
fragColor.a=1.0;
|
||||
|
||||
}
|
||||
14
config/cava/shaders/pass_through.vert
Normal file
@ -0,0 +1,14 @@
|
||||
#version 330
|
||||
|
||||
|
||||
// Input vertex data, different for all executions of this shader.
|
||||
layout(location = 0) in vec3 vertexPosition_modelspace;
|
||||
|
||||
// Output data ; will be interpolated for each fragment.
|
||||
out vec2 fragCoord;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_Position = vec4(vertexPosition_modelspace,1);
|
||||
fragCoord = (vertexPosition_modelspace.xy+vec2(1,1))/2.0;
|
||||
}
|
||||
193
config/foot/foot.ini
Normal file
@ -0,0 +1,193 @@
|
||||
# -*- conf -*-
|
||||
|
||||
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
|
||||
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
|
||||
# login-shell=no
|
||||
|
||||
# app-id=foot
|
||||
# title=foot
|
||||
# locked-title=no
|
||||
|
||||
font=FantasqueSansMono:weight=SemiBold:size=14
|
||||
# font-bold=<bold variant of regular font>
|
||||
# font-italic=<italic variant of regular font>
|
||||
# font-bold-italic=<bold+italic variant of regular font>
|
||||
# line-height=<font metrics>
|
||||
# letter-spacing=0
|
||||
# horizontal-letter-offset=0
|
||||
# vertical-letter-offset=0
|
||||
# underline-offset=<font metrics>
|
||||
# box-drawings-uses-font-glyphs=no
|
||||
dpi-aware=no
|
||||
|
||||
# initial-window-size-pixels=700x500 # Or,
|
||||
# initial-window-size-chars=<COLSxROWS>
|
||||
# initial-window-mode=windowed
|
||||
# pad=2x2 # optionally append 'center'
|
||||
# resize-delay-ms=100
|
||||
|
||||
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
|
||||
|
||||
bold-text-in-bright=yes
|
||||
# word-delimiters=,│`|:"'()[]{}<>
|
||||
# selection-target=primary
|
||||
# workers=<number of logical CPUs>
|
||||
|
||||
[environment]
|
||||
# name=value
|
||||
|
||||
[bell]
|
||||
# urgent=no
|
||||
# notify=no
|
||||
# command=
|
||||
# command-focused=no
|
||||
|
||||
[scrollback]
|
||||
# lines=1000
|
||||
# multiplier=3.0
|
||||
# indicator-position=relative
|
||||
# indicator-format=
|
||||
|
||||
[url]
|
||||
# launch=xdg-open ${url}
|
||||
# label-letters=sadfjklewcmpgh
|
||||
# osc8-underline=url-mode
|
||||
# protocols=http, https, ftp, ftps, file, gemini, gopher
|
||||
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[]
|
||||
|
||||
[cursor]
|
||||
# style=block
|
||||
# color=<inverse foreground/background>
|
||||
# blink=no
|
||||
# beam-thickness=1.5
|
||||
# underline-thickness=<font underline thickness>
|
||||
|
||||
[mouse]
|
||||
# hide-when-typing=no
|
||||
# alternate-scroll-mode=yes
|
||||
|
||||
[colors]
|
||||
alpha=0.6
|
||||
foreground=dddddd
|
||||
background=000000
|
||||
|
||||
## kitty themes ##
|
||||
regular0=000000 # black
|
||||
regular1=cc0403 # red
|
||||
regular2=19cb00 # green
|
||||
regular3=cecb00 # yellow
|
||||
regular4=0d73cc # blue
|
||||
regular5=cb1ed1 # magenta
|
||||
regular6=0dcdcd # cyan
|
||||
regular7=dddddd # white
|
||||
bright0=767676 # bright black
|
||||
bright1=f2201f # bright red
|
||||
bright2=23fd00 # bright green
|
||||
bright3=fffd00 # bright yellow
|
||||
bright4=1a8fff # bright blue
|
||||
bright5=fd28ff # bright magenta
|
||||
bright6=14ffff # bright cyan
|
||||
bright7=ffffff # bright white
|
||||
|
||||
## dimmed colors (see foot.ini(5) man page)
|
||||
# dim0=<not set>
|
||||
# ...
|
||||
# dim7=<not-set>
|
||||
|
||||
## The remaining 256-color palette
|
||||
# 16 = <256-color palette #16>
|
||||
# ...
|
||||
# 255 = <256-color palette #255>
|
||||
|
||||
## Misc colors
|
||||
# selection-foreground=<inverse foreground/background>
|
||||
# selection-background=<inverse foreground/background>
|
||||
# jump-labels=<regular0> <regular3> # black-on-yellow
|
||||
# scrollback-indicator=<regular0> <bright4> # black-on-bright-blue
|
||||
# search-box-no-match=<regular0> <regular1> # black-on-red
|
||||
# search-box-match=<regular0> <regular3> # black-on-yellow
|
||||
# urls=<regular3>
|
||||
|
||||
[csd]
|
||||
# preferred=server
|
||||
# size=26
|
||||
# font=<primary font>
|
||||
# color=<foreground color>
|
||||
# hide-when-typing=no
|
||||
# border-width=0
|
||||
# border-color=<csd.color>
|
||||
# button-width=26
|
||||
# button-color=<background color>
|
||||
# button-minimize-color=<regular4>
|
||||
# button-maximize-color=<regular2>
|
||||
# button-close-color=<regular1>
|
||||
|
||||
[key-bindings]
|
||||
# scrollback-up-page=Shift+Page_Up
|
||||
# scrollback-up-half-page=none
|
||||
# scrollback-up-line=none
|
||||
# scrollback-down-page=Shift+Page_Down
|
||||
# scrollback-down-half-page=none
|
||||
# scrollback-down-line=none
|
||||
# clipboard-copy=Control+Shift+c XF86Copy
|
||||
# clipboard-paste=Control+Shift+v XF86Paste
|
||||
# primary-paste=Shift+Insert
|
||||
# search-start=Control+Shift+r
|
||||
# font-increase=Control+plus Control+equal Control+KP_Add
|
||||
# font-decrease=Control+minus Control+KP_Subtract
|
||||
# font-reset=Control+0 Control+KP_0
|
||||
# spawn-terminal=Control+Shift+n
|
||||
# minimize=none
|
||||
# maximize=none
|
||||
# fullscreen=none
|
||||
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||
# pipe-selected=[xargs -r firefox] none
|
||||
# show-urls-launch=Control+Shift+u
|
||||
# show-urls-copy=none
|
||||
# show-urls-persistent=none
|
||||
# prompt-prev=Control+Shift+z
|
||||
# prompt-next=Control+Shift+x
|
||||
# unicode-input=none
|
||||
# noop=none
|
||||
|
||||
[search-bindings]
|
||||
# cancel=Control+g Control+c Escape
|
||||
# commit=Return
|
||||
# find-prev=Control+r
|
||||
# find-next=Control+s
|
||||
# cursor-left=Left Control+b
|
||||
# cursor-left-word=Control+Left Mod1+b
|
||||
# cursor-right=Right Control+f
|
||||
# cursor-right-word=Control+Right Mod1+f
|
||||
# cursor-home=Home Control+a
|
||||
# cursor-end=End Control+e
|
||||
# delete-prev=BackSpace
|
||||
# delete-prev-word=Mod1+BackSpace Control+BackSpace
|
||||
# delete-next=Delete
|
||||
# delete-next-word=Mod1+d Control+Delete
|
||||
# extend-to-word-boundary=Control+w
|
||||
# extend-to-next-whitespace=Control+Shift+w
|
||||
# clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste
|
||||
# primary-paste=Shift+Insert
|
||||
# unicode-input=none
|
||||
|
||||
[url-bindings]
|
||||
# cancel=Control+g Control+c Control+d Escape
|
||||
# toggle-url-visible=t
|
||||
|
||||
[text-bindings]
|
||||
# \x03=Mod4+c # Map Super+c -> Ctrl+c
|
||||
|
||||
[mouse-bindings]
|
||||
# selection-override-modifiers=Shift
|
||||
# primary-paste=BTN_MIDDLE
|
||||
# select-begin=BTN_LEFT
|
||||
# select-begin-block=Control+BTN_LEFT
|
||||
# select-extend=BTN_RIGHT
|
||||
# select-extend-character-wise=Control+BTN_RIGHT
|
||||
# select-word=BTN_LEFT-2
|
||||
# select-word-whitespace=Control+BTN_LEFT-2
|
||||
# select-row=BTN_LEFT-3
|
||||
|
||||
# vim: ft=dosini
|
||||
90
config/hypr/HelpFile.md
Normal file
@ -0,0 +1,90 @@
|
||||
# Welcome to my Hyprland help, and tips and tricks #
|
||||
# If you have questions, or need help you can open issue on my github
|
||||
# Or you can reach me in or join on Discord that I admin
|
||||
# Discord link update discord server link or you can message me directly on my discord. DC user: Ja.KooLit
|
||||
# Github page: https://github.com/JaKooLit
|
||||
|
||||
Super = Windows Key
|
||||
|
||||
# common operations
|
||||
Super h *keyhint* (THIS DOCUMENT)
|
||||
Super Return *term* (`foot`)
|
||||
Super q *quit* (kill focused window)
|
||||
Super Shift q *quit* (kill focused window)
|
||||
Super d *show app menu* (`wofi small`)
|
||||
Super Shift d *show app menu* (`wofi large`)
|
||||
|
||||
# wallpaper / styling stuff
|
||||
Super w *wallpaper shuffle* (right click on wallpaper waybar module)
|
||||
Super Shift w *waybar style-change* (middle click on wallpaper waybar module)
|
||||
Super Ctrl w *wallpaper switcher* (click on wallpaper waybar module)
|
||||
|
||||
- right click on update waybar module *wallpaper cycle using swaybg* (no animations)
|
||||
|
||||
- To change permanently the wallpaper edit the file in *~/.config/hypr/configs/Execs.conf*
|
||||
- For a persistent wallpaper after dark-light mode, edit your Execs.conf. Either delete or put # before exec-once=swww query | swww init and delete the # before exec-once = swww init (Lines 6 and 7 on Execs.conf )
|
||||
|
||||
- for the wallpaper styles and configurations, you can watch my video about it *https://youtu.be/6ZGzOjMJBe4*
|
||||
|
||||
- scripts for wallpaper stuff are located in *~/.config/hypr/scripts* file names `DarkLight.sh` `DarkLight-swaybg.sh` `Wallpaper.sh` `WallpaperSelect.sh` `WaybarStyles.sh` (last one for waybar)
|
||||
|
||||
- swww is broken if you use fractional scaling. Use swaybg as your wallpaper provider.
|
||||
- Sample of swaybg for wallpaper is located in ~/.config/hypr/configs/Execs.conf
|
||||
|
||||
# Monitor, executables, keybindings, window rules,
|
||||
files are located in *~/.config/hypr/configs*
|
||||
Keybindings file is located here *~/.config/hypr/configs/Keybinds.conf*
|
||||
|
||||
# screenshot may need to hold down the function (`fn`) key. You can change keybinds in *~/.config/hypr/configs/Keybinds.conf*
|
||||
Super PrintScr(button) *full screenshot*
|
||||
Super Shift PrintSrc(button) *active window screenshot*
|
||||
Super CTRL SHIFT PrintScr *full screenshot + timer (5s)*
|
||||
Super Alt PrintScr *full screenshot + timer (10s)*
|
||||
Super Shift S *screenshot with swappy*
|
||||
|
||||
# clipboard manager (cliphist)
|
||||
Super Alt V *launch the wofi menu of clipboard manager*
|
||||
- double click to select the clipboard. And paste as normal
|
||||
- to clean up clipboard manager, launch foot (super enter) then type cliphist wipe
|
||||
|
||||
# applications shortcuts
|
||||
Super T *file manager* (`thunar`) - if installed
|
||||
|
||||
|
||||
# container layout
|
||||
Super Shift Space *toggle tiling/floating mode*
|
||||
Super left mouse button *move window*
|
||||
Super right mouse button *resize window* (note only in float mode)
|
||||
|
||||
|
||||
# workspaces
|
||||
Super 1 .. 0 *switch to workspace 1 .. 10*
|
||||
Super Shift 1 .. 0 *move container to workspace 1 .. 10*
|
||||
Super Tab *cycle through workspaces*
|
||||
|
||||
# waybar customizations
|
||||
- waybar font too big or too small. Edit the font-size in waybar styles located in ~/.config/hypr/waybar/styles/ . By default, it is set to 100%. After adjusting the GTK font scaling to your liking, edit all the waybar styles. Reduce or increase according to your needs. NOTE that its on percent %. You can also change to px whichever suits you.
|
||||
- if you want 12h format instead of 24H format, edit the ~/.config/hypr/waybar/modules look for clock. delete the // and add // or delete the previous one
|
||||
- CPU Temperature:
|
||||
- a.) to change from deg C to deg F , edit the ~/.config/hypr/waybar/modules look for "temperature". Change the format to "format": "{temperatureF}°F {icon}",
|
||||
- b.) to fix the temperature if not showing correctly, comment "thermal zone": 0 by putting // before. Delete the // on the "hwmon path". Refresh waybar by pressing CTRL SHIFT w. If still not showing correctly, navigate to /sys/class/hwmon/ and open each hwmon. Look for k10temp for amd. Not sure about intel cpu. and edit accordingly the hwmon path in the "temperature" waybar module.
|
||||
- b.1) use this function to easily identify the hwmon path. Ran this in your terminal ``` for i in /sys/class/hwmon/hwmon*/temp*_input; do echo "$(<$(dirname $i)/name): $(cat ${i%_*}_label 2>/dev/null || echo $(basename ${i%_*})) $(readlink -f $i)"; done ```
|
||||
|
||||
# Hyprland configurations
|
||||
- *Hyprland* configuration files are in `~/.config/hypr/`
|
||||
- files located in this folder can be edited using editor of your choice.
|
||||
|
||||
# notes for nvidia gpu users
|
||||
- Do note that you need to enable or disable some items in ENVariables.conf file located in `~/.config/hypr/configs/ENVariables.conf`
|
||||
|
||||
- a guide on wiki - https://wiki.hyprland.org/Nvidia/
|
||||
|
||||
|
||||
# other notes
|
||||
- *Multimedia keys* - may not work for every keyboard may need to hold down the function (`fn`) key
|
||||
- Follow the wiki - https://wiki.hyprland.org/
|
||||
- Follow the github - https://github.com/hyprwm/Hyprland
|
||||
|
||||
|
||||
|
||||
TO CLOSE THIS DOCUMENT - Super q or Super Shift q or if vim, press esc :q!
|
||||
31
config/hypr/configs/ENVariables.conf
Normal file
@ -0,0 +1,31 @@
|
||||
#environment-variables
|
||||
env = QT_QPA_PLATFORMTHEME,qt5ct #necessary to run qt5ct properly
|
||||
env = GDK_BACKEND,wayland,x11
|
||||
env = QT_QPA_PLATFORM,wayland;xcb
|
||||
env = CLUTTER_BACKEND,wayland
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||
env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
|
||||
# vulkan
|
||||
#env = WLR_RENDERER,vulkan
|
||||
|
||||
# firefox
|
||||
#env = MOZ_ENABLE_WAYLAND,1
|
||||
|
||||
# NVIDIA
|
||||
# This is from Hyprland Wiki but my Hyprland keeps crashing when I enabled this variables
|
||||
#env = WLR_NO_HARDWARE_CURSORS,1
|
||||
#env = LIBVA_DRIVER_NAME,nvidia
|
||||
#env = XDG_SESSION_TYPE,wayland
|
||||
#env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
#env = GBM_BACKEND,nvidia-drm ## it causes issues like Hyprland crashing so care
|
||||
|
||||
#env = __NV_PRIME_RENDER_OFFLOAD,1
|
||||
#env = __VK_LAYER_NV_optimus,NVIDIA_only
|
||||
#env = WLR_DRM_NO_ATOMIC,1
|
||||
#env = NVD_BACKEND,direct
|
||||
|
||||
44
config/hypr/configs/Execs.conf
Normal file
@ -0,0 +1,44 @@
|
||||
#Commands to be executed at launch
|
||||
$scriptsDir = $HOME/.config/hypr/scripts
|
||||
$themes = $HOME/.config/hypr/themes
|
||||
$lock = $scriptsDir/LockScreen.sh
|
||||
|
||||
# wallpaper stuff
|
||||
#exec-once = swww query || swww init && swww img $HOME/Pictures/wallpapers/kitty_dark.jpg #using swww utility
|
||||
exec-once = swaybg -m fill -i $HOME/Pictures/wallpapers/staircase.jpg #using swaybg
|
||||
|
||||
# Startup
|
||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
|
||||
exec-once = /usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1
|
||||
|
||||
# screen share
|
||||
#exec-once = $scriptsDir/PortalHyprlandDebian.sh
|
||||
|
||||
# apps, blueman, network manager applet and ROG-control-Center
|
||||
exec-once = $scriptsDir/Startup.sh
|
||||
exec-once = blueman-applet &
|
||||
exec-once = nm-applet --indicator &
|
||||
#exec-once = rog-control-center &
|
||||
exec-once = easyeffects --gapplication-service -l my_own
|
||||
|
||||
#clipboard manager
|
||||
exec-once = wl-paste --watch cliphist store
|
||||
|
||||
#Catpuccin Themes
|
||||
#source = $themes/frappe.conf
|
||||
#source = $themes/latte.conf
|
||||
#source = $themes/macchiato.conf
|
||||
source = $themes/mocha.conf
|
||||
|
||||
# wlsunset - for automatic gamma adjustment. Default is 1900 to 0700 (7pm to 7am). Edit Sunset.sh accordingly
|
||||
# exec-once = $scriptsDir/Sunset.sh
|
||||
|
||||
# auto close of apps (timeout 2 secs)
|
||||
# exec-once = $scriptsDir/AppAutoClose.sh
|
||||
|
||||
# sway-idle with lock
|
||||
# exec-once = swayidle -w timeout 1200 '$lock' timeout 1200 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' before-sleep '$lock'
|
||||
# without lock
|
||||
#exec-once = swayidle -w timeout 1200 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on'
|
||||
214
config/hypr/configs/Keybinds.conf
Normal file
@ -0,0 +1,214 @@
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
# Setting variables
|
||||
$mainMod = SUPER
|
||||
$files = thunar
|
||||
$browser = firefox
|
||||
$term = foot
|
||||
$hyprDir = $HOME/.config/hypr
|
||||
$scriptsDir = $HOME/.config/hypr/scripts
|
||||
|
||||
# Scripts Variables
|
||||
$AirplaneMode = $scriptsDir/AirplaneMode.sh
|
||||
$backlight = $scriptsDir/Brightness.sh
|
||||
$ChangeBlur = $scriptsDir/ChangeBlur.sh
|
||||
$ChangeLayout = $scriptsDir/ChangeLayout.sh
|
||||
$ChangeLayoutMenu = $scriptsDir/ChangeLayoutMenu.sh
|
||||
$Clipboard = $scriptsDir/ClipManager.sh
|
||||
$DarkLight = $scriptsDir/DarkLight.sh
|
||||
$GameMode = $scriptsDir/GameMode.sh
|
||||
$Help = $scriptsDir/Help.sh
|
||||
$kbacklight = $scriptsDir/BrightnessKbd.sh
|
||||
$LidSwitch = $scriptsDir/LidSwitch.sh
|
||||
$LockScreen = $scriptsDir/LockScreen.sh
|
||||
$Media = $scriptsDir/MediaCtrl.sh
|
||||
$QuickEdit = $scriptsDir/QuickEdit.sh
|
||||
$screenshot = $scriptsDir/ScreenShot.sh
|
||||
$touchpad = $scriptsDir/TouchPad.sh
|
||||
$volume = $scriptsDir/Volume.sh
|
||||
$wallpaper = $scriptsDir/Wallpaper.sh
|
||||
$wallpaperSelect = $scriptsDir/WallpaperSelect.sh
|
||||
$waybar = $scriptsDir/Waybar.sh
|
||||
$waybarStyle = $scriptsDir/WaybarStyles.sh
|
||||
$Wofi = $scriptsDir/Wofi.sh
|
||||
$WofiBeats = $scriptsDir/WofiBeats.sh
|
||||
$WofiBig = $scriptsDir/WofiBig.sh
|
||||
$WofiEmoji = $scriptsDir/WofiEmoji.sh
|
||||
$WofiPower = $scriptsDir/WofiPower.sh
|
||||
|
||||
# see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = CTRL ALT, Delete, exit
|
||||
bind = $mainMod SHIFT, C, exec, hyprctl reload
|
||||
bind = $mainMod SHIFT, D, exec, $WofiBig
|
||||
bind = $mainMod, D, exec, $Wofi
|
||||
bind = $mainMod SHIFT, Q, killactive,
|
||||
bind = $mainMod SHIFT, Space, togglefloating,
|
||||
bind = $mainMod, F, fullscreen
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod, Return, exec, $term
|
||||
bind = $mainMod, T, exec, $files
|
||||
bind = CTRL ALT, L, exec, $LockScreen
|
||||
bind = CTRL ALT, P, exec, $WofiPower
|
||||
bind = $mainMod CTRL, S, exec, $WofiBeats
|
||||
bind = $mainMod ALT, E, exec, $WofiEmoji
|
||||
bind = $mainMod, W, exec, $wallpaper
|
||||
bind = $mainMod SHIFT, W, exec, $waybarStyle
|
||||
bind = $mainMod CTRL, W, exec, $wallpaperSelect
|
||||
bind = $mainMod ALT, W, exec, $ChangeLayoutMenu
|
||||
bind = $mainMod, H, exec, $Help
|
||||
bind = $mainMod, E, exec, $QuickEdit
|
||||
bind = $mainMod, B, exec, killall -SIGUSR1 waybar # Toggle hide/show waybar
|
||||
bind = $mainMod SHIFT, G, exec, $GameMode
|
||||
|
||||
#bind = $mainMod SHIFT, M, exec, hyprctl dispatch splitratio -0.3
|
||||
#bind = $mainMod SHIFT, Y, exec, $term --class clock -T clock -e tty-clock -c -C 7 -r -s -f "%A, %B, %d"
|
||||
|
||||
bind = $mainMod CTRL, D, layoutmsg, removemaster
|
||||
bind = $mainMod, Escape, exec, hyprctl kill
|
||||
bind = $mainMod, I, layoutmsg, addmaster
|
||||
bind = $mainMod, J, layoutmsg, cyclenext
|
||||
bind = $mainMod, K, layoutmsg, cycleprev
|
||||
bind = $mainMod, M, exec, hyprctl dispatch splitratio 0.3
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod CTRL, Return, layoutmsg, swapwithmaster
|
||||
bind = $mainMod, Space, exec, $ChangeLayout
|
||||
bind = $mainMod ALT, V, exec, $Clipboard
|
||||
|
||||
# group
|
||||
bind = $mainMod, G, togglegroup
|
||||
bind = $mainMod, tab, workspace, m+1
|
||||
bind = $mainMod SHIFT, tab, workspace, m-1
|
||||
bind = ALT, tab, cyclenext, # change focus to another window
|
||||
bind = ALT SHIFT, tab, bringactivetotop, # bring it to the top
|
||||
|
||||
# Special Keys / Hot Keys
|
||||
bind = , xf86audioraisevolume, exec, $volume --inc #volume up
|
||||
bind = , xf86audiolowervolume, exec, $volume --dec #volume down
|
||||
bind = , xf86AudioMicMute, exec, $volume --toggle-mic #mute mic
|
||||
bind = , xf86Launch1, exec, rog-control-center # ASUS Armory crate button
|
||||
bind = , xf86audiomute, exec, $volume --toggle #FN+F1
|
||||
bind = , xf86KbdBrightnessDown, exec, $kbacklight --dec #FN+F2 Keyboard brightness down
|
||||
bind = , xf86KbdBrightnessUp, exec, $kbacklight --inc #FN+F3 Keyboard brightnes up
|
||||
bind = , xf86Launch3, exec, asusctl led-mode -n #FN+F4 Switch keyboard RGB profile
|
||||
bind = , xf86Launch4, exec, asusctl profile -n #FN+F5 change of fan profiles (Quite, Balance Performance)
|
||||
bind = , xf86MonBrightnessDown, exec, $backlight --dec #FN+F7
|
||||
bind = , xf86MonBrightnessUp, exec, $backlight --inc #FN+F8
|
||||
bind = , xf86TouchpadToggle, exec, $touchpad #FN+10 disable touchpad
|
||||
bind = , xf86Sleep, exec, $LockScreen #FN+F11 (sleep button)
|
||||
bind = , xf86Rfkill, exec, $AirplaneMode #Airplane mode FN+F12
|
||||
|
||||
# media controls using keyboards
|
||||
bind = , xf86AudioPlayPause, exec, $Media --pause
|
||||
bind = , xf86AudioPause, exec, $Media --pause
|
||||
bind = , xf86AudioPlay, exec, $Media --pause
|
||||
bind = , xf86AudioNext, exec, $Media --nxt
|
||||
bind = , xf86AudioPrev, exec, $Media --prv
|
||||
bind = , xf86audiostop, exec, $Media --stop
|
||||
|
||||
# triggered when external monitor is connected and closing lid (For Laptop)
|
||||
bindl=,switch:Lid Switch, exec, $LidSwitch
|
||||
|
||||
# From manual but it does not work
|
||||
#bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, 2560x1440@165, 0x0, 1"
|
||||
#bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable"
|
||||
|
||||
# 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
|
||||
|
||||
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
|
||||
|
||||
bind = $mainMod CTRL, left, movewindow, l
|
||||
bind = $mainMod CTRL, right, movewindow, r
|
||||
bind = $mainMod CTRL, up, movewindow, u
|
||||
bind = $mainMod CTRL, down, movewindow, d
|
||||
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
# Special workspace
|
||||
bind = $mainMod SHIFT, U, movetoworkspace, special
|
||||
bind = $mainMod, U, togglespecialworkspace,
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
# Move active window and follow to workspace
|
||||
bind = $mainMod CTRL, 1, movetoworkspace, 1
|
||||
bind = $mainMod CTRL, 2, movetoworkspace, 2
|
||||
bind = $mainMod CTRL, 3, movetoworkspace, 3
|
||||
bind = $mainMod CTRL, 4, movetoworkspace, 4
|
||||
bind = $mainMod CTRL, 5, movetoworkspace, 5
|
||||
bind = $mainMod CTRL, 6, movetoworkspace, 6
|
||||
bind = $mainMod CTRL, 7, movetoworkspace, 7
|
||||
bind = $mainMod CTRL, 8, movetoworkspace, 8
|
||||
bind = $mainMod CTRL, 9, movetoworkspace, 9
|
||||
bind = $mainMod CTRL, 0, movetoworkspace, 10
|
||||
bind = $mainMod CTRL, bracketleft, movetoworkspace, -1
|
||||
bind = $mainMod CTRL, bracketright, movetoworkspace, +1
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
|
||||
bind = $mainMod SHIFT, bracketleft, movetoworkspacesilent, -1
|
||||
bind = $mainMod SHIFT, bracketright, movetoworkspacesilent, +1
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
bind = $mainMod, period, workspace, e+1
|
||||
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:
|
||||
#bind = , Print, exec, $screenshot --now
|
||||
bind = $mainMod, Print, exec, $screenshot --now
|
||||
bind = $mainMod CTRL SHIFT, Print, exec, $screenshot --in5
|
||||
bind = $mainMod ALT, Print, exec, $screenshot --in10
|
||||
#bind = CTRL, Print, exec, $screenshot --win
|
||||
#bind = SHIFT, Print, exec, $screenshot --area
|
||||
bind = $mainMod SHIFT, Print, exec, $screenshot --area
|
||||
|
||||
# screenshot with swappy
|
||||
bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | swappy -f -
|
||||
|
||||
# Screenshot keybindings for Asus G15 (no PrinSrc button)
|
||||
bind = $mainMod, F6, exec, $screenshot --now
|
||||
bind = $mainMod SHIFT, F6, exec, $screenshot --area
|
||||
bind = $mainMod CTRL SHIFT, F6, exec, $screenshot --in5
|
||||
bind = $mainMod ALT, F6, exec, $screenshot --in10
|
||||
|
||||
26
config/hypr/configs/Monitors.conf
Normal file
@ -0,0 +1,26 @@
|
||||
# Monitor Configuration
|
||||
# Configure your Display resolution, offset, scale and Monitors here, use `hyprctl monitors` to get the info.
|
||||
|
||||
# Monitors
|
||||
monitor=,preferred,auto,1
|
||||
|
||||
# my G15 Laptop
|
||||
# monitor = eDP-1, preferred, auto, 1
|
||||
#monitor = eDP-1, 2560x1440@165, 0x0, 1 #own screen
|
||||
#monitor = DP-2, preferred, auto, 1 #my Samsung Odyssey-G7
|
||||
#monitor = DP-1, preferred, auto, 1
|
||||
#monitor = HDMI-A-1, preferred,auto,1
|
||||
|
||||
# QEMU
|
||||
#monitor = Virtual-1, 1920x1080@60,auto,1
|
||||
|
||||
# Example :
|
||||
#monitor=eDP-1,2560x1440@165,0x0,1
|
||||
#workspace=HDMI-A-1,1
|
||||
#monitor=HDMI-A-1,2560x1440@144,0x0,1,mirror,eDP-1
|
||||
#workspace=HDMI-A-2,2
|
||||
|
||||
#monitor=eDP-1,transform,0
|
||||
#monitor=eDP-1,addreserved,10,10,10,49
|
||||
#workspace=eDP-1,1
|
||||
|
||||
145
config/hypr/configs/Settings.conf
Normal file
@ -0,0 +1,145 @@
|
||||
# blurls
|
||||
# blurls = waybar
|
||||
blurls = wofi
|
||||
|
||||
|
||||
dwindle {
|
||||
pseudotile = yes
|
||||
preserve_split = yes
|
||||
special_scale_factor = 0.8
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master=1
|
||||
new_on_top=0
|
||||
mfact = 0.5
|
||||
|
||||
}
|
||||
|
||||
general {
|
||||
sensitivity=1.00
|
||||
apply_sens_to_raw=1
|
||||
gaps_in = 4
|
||||
gaps_out = 8
|
||||
border_size = 1
|
||||
resize_on_border = true
|
||||
|
||||
#one color
|
||||
#col.active_border = rgba(7aa2f7aa)
|
||||
|
||||
#more colors - gradient
|
||||
#col.active_border = rgb(8839ef) rgb(cba6f7) rgb(ca9ee6) rgb(c6a0f6) 45deg
|
||||
col.active_border = rgb(7287fd) rgb(74c7ec) rgb(89b4fa) 45deg
|
||||
col.inactive_border = rgb(6c7086)
|
||||
|
||||
layout = master
|
||||
}
|
||||
|
||||
#group {
|
||||
#col.border_active = rgba(7aa2f7aa)
|
||||
|
||||
#groupbar {
|
||||
#col.active = rgba(7aa2f7aa)
|
||||
#}
|
||||
#}
|
||||
|
||||
decoration {
|
||||
rounding = 8
|
||||
|
||||
active_opacity = 1.0
|
||||
inactive_opacity = 0.8
|
||||
fullscreen_opacity = 1.0
|
||||
|
||||
dim_inactive = true
|
||||
dim_strength = 0.1
|
||||
|
||||
drop_shadow=true
|
||||
shadow_range=4
|
||||
shadow_render_power = 1
|
||||
col.shadow = rgb(df8e1d)
|
||||
col.shadow_inactive = 0x50000000
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
size = 5
|
||||
passes = 1
|
||||
ignore_opacity = true
|
||||
new_optimizations = true
|
||||
}
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = liner, 0, 0, 1, 1
|
||||
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 = liner, 1, 1, 1, 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, 20, nice
|
||||
animation = borderangle, 1, 30, liner, 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=0
|
||||
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 = 2
|
||||
enable_swallow = true
|
||||
no_direct_scanout = true #for fullscreen games
|
||||
focus_on_activate = false
|
||||
swallow_regex = ^(foot)$
|
||||
}
|
||||
|
||||
binds {
|
||||
workspace_back_and_forth=1
|
||||
allow_workspace_cycles=1
|
||||
pass_mouse_when_bound=0
|
||||
}
|
||||
47
config/hypr/configs/WindowRules.conf
Normal file
@ -0,0 +1,47 @@
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
|
||||
windowrule = float, org.kde.polkit-kde-authentication-agent-1
|
||||
windowrule = float, nm-connection-editor|blueman-manager
|
||||
windowrule = float, swayimg|Viewnior|pavucontrol
|
||||
windowrule = float, nwg-look|qt5ct|mpv
|
||||
windowrule = float, onedriver|onedriver-launcher
|
||||
windowrule = float, zoom
|
||||
windowrule = float, wofi
|
||||
windowrule = float, gnome-system-monitor
|
||||
|
||||
# mission center (windows task manager look alike)
|
||||
windowrule = float, missioncenter
|
||||
windowrule = center, missioncenter
|
||||
windowrule = size 1000 700, missioncenter
|
||||
#windowrule = noblur,gamescope
|
||||
#windowrule = fullscreen,gamescope
|
||||
#windowrule = workspace 6 silent,^(gamescope)$
|
||||
|
||||
# windowrule = move 1380 495,^(pavucontrol) # Make sure to change these valuers
|
||||
windowrule = center,^(pavucontrol) # Make sure to delete this line if uncommen the line above
|
||||
#windowrule = size 533 533,^(pavucontrol) # These are optionals. But recommended
|
||||
|
||||
# windowrule v2
|
||||
windowrulev2 = workspace 2, class:^(firefox)$
|
||||
windowrulev2 = workspace 2, class:^(Microsoft-edge-beta)$ #this is on arch
|
||||
windowrulev2 = workspace 3, class:^(thunar)$
|
||||
windowrulev2 = workspace 1, class:^(thunderbird)$
|
||||
windowrulev2 = workspace 4, class:^(com.obsproject.Studio)$
|
||||
windowrulev2 = workspace 5 silent, class:^(Steam)$,title:^(Steam)$
|
||||
windowrulev2 = workspace 5 silent, class:^(lutris)$
|
||||
windowrulev2 = workspace 6, class:^(virt-manager)$
|
||||
windowrulev2 = workspace 7 silent, class:^(discord)$
|
||||
windowrulev2 = workspace 9 silent, class:^(audacious)$
|
||||
|
||||
#opacity (transparent) #enable as desired
|
||||
windowrulev2 = opacity 0.9 0.7, class:^(firefox)$
|
||||
windowrulev2 = opacity 0.9 0.7, class:^(thunar)$
|
||||
#windowrulev2 = opacity 0.8 0.7, class:^(foot)$
|
||||
#windowrulev2 = opacity 0.9 0.7, class:^(mousepad)$
|
||||
windowrulev2 = opacity 0.9 0.7, class:^(codium-url-handler)$
|
||||
windowrulev2 = opacity 0.9 0.7, class:^(VSCodium)$
|
||||
|
||||
#windowrulev2 = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1
|
||||
#windowrulev2 = bordercolor rgb(282737) rgb(1E1D2D), floating:1
|
||||
#windowrulev2 = opacity 0.8 0.8, pinned:1
|
||||
|
||||
0
config/hypr/dunst/dunstrc
Normal file
BIN
config/hypr/dunst/icons/backup.png
Normal file
|
After Width: | Height: | Size: 19 KiB |
1
config/hypr/dunst/icons/battery-quarter-solid.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Pro 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path d="M0 176c0-44.2 35.8-80 80-80H464c44.2 0 80 35.8 80 80v16c17.7 0 32 14.3 32 32v64c0 17.7-14.3 32-32 32v16c0 44.2-35.8 80-80 80H80c-44.2 0-80-35.8-80-80V176zm80-16c-8.8 0-16 7.2-16 16V336c0 8.8 7.2 16 16 16H464c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H80zm112 32V320H96V192h96z"/></svg>
|
||||
|
After Width: | Height: | Size: 523 B |
BIN
config/hypr/dunst/icons/battery-status.png
Normal file
|
After Width: | Height: | Size: 8.5 KiB |
BIN
config/hypr/dunst/icons/brightness-100.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
config/hypr/dunst/icons/brightness-20.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
config/hypr/dunst/icons/brightness-40.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
config/hypr/dunst/icons/brightness-60.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
config/hypr/dunst/icons/brightness-80.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
config/hypr/dunst/icons/dropper.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
config/hypr/dunst/icons/microphone-mute.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
config/hypr/dunst/icons/microphone.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
config/hypr/dunst/icons/music.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
config/hypr/dunst/icons/palette.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
BIN
config/hypr/dunst/icons/picture.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
config/hypr/dunst/icons/timer.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
config/hypr/dunst/icons/uptime.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
config/hypr/dunst/icons/volume-high.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
config/hypr/dunst/icons/volume-low.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
config/hypr/dunst/icons/volume-mid.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
config/hypr/dunst/icons/volume-mute.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
config/hypr/dunst/icons/vpn.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
config/hypr/dunst/images/notification.png
Normal file
|
After Width: | Height: | Size: 155 KiB |
BIN
config/hypr/dunst/images/notification2.png
Normal file
|
After Width: | Height: | Size: 270 KiB |
BIN
config/hypr/dunst/images/notification3.png
Normal file
|
After Width: | Height: | Size: 244 KiB |
BIN
config/hypr/dunst/images/notification4.png
Executable file
|
After Width: | Height: | Size: 18 KiB |
13
config/hypr/dunst/reload
Executable file
@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
pkill dunst
|
||||
dunst -config ~/.config/dunst/dunstrc &
|
||||
|
||||
notify-send -u critical "Test message: critical test 1"
|
||||
notify-send -u normal "Test message: normal test 2"
|
||||
notify-send -u low "Test message: low test 3"
|
||||
notify-send -u critical "Test message: critical test 4"
|
||||
notify-send -u normal "Test message: normal test 5"
|
||||
notify-send -u low "Test message: low test 6"
|
||||
notify-send -u critical "Test message: critical test 7"
|
||||
notify-send -u normal "Test message: normal test 8"
|
||||
notify-send -u low "Test message: low test 9"
|
||||
422
config/hypr/dunst/styles/dunstrc-dark
Executable file
@ -0,0 +1,422 @@
|
||||
[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
|
||||
|
||||
# The geometry of the window:
|
||||
# [{width}]x{height}[+/-{x}+/-{y}]
|
||||
# The geometry of the message window.
|
||||
# The height is measured in number of notifications everything else
|
||||
# in pixels. If the width is omitted but the height is given
|
||||
# ("-geometry x2"), the message window expands over the whole screen
|
||||
# (dmenu-like). If width is 0, the window expands to the longest
|
||||
# message displayed. A positive x is measured from the left, a
|
||||
# negative from the right side of the screen. Y is measured from
|
||||
# the top and down respectively.
|
||||
# The width can be negative. In this case the actual width is the
|
||||
# screen width minus the width defined in within the geometry option.
|
||||
#geometry = "300x60+15+46"
|
||||
width = (250, 350)
|
||||
height = 350
|
||||
origin = top-center
|
||||
offset = 10x10
|
||||
|
||||
notification_limit = 9
|
||||
|
||||
# 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].
|
||||
# This option will only work if a compositing window manager is
|
||||
# present (e.g. xcompmgr, compiz, etc.).
|
||||
transparency = 20
|
||||
|
||||
# The height of the entire notification. If the height is smaller
|
||||
# than the font height and padding combined, it will be raised
|
||||
# to the font height and padding.
|
||||
notification_height = 15
|
||||
|
||||
# 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 = 1
|
||||
|
||||
# Defines color of the frame around the notification window.
|
||||
frame_color = "#cdd6f4"
|
||||
|
||||
# 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 = frame
|
||||
|
||||
# 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 = Fantasque Sans Mono 15
|
||||
|
||||
# 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:
|
||||
# <b>bold</b>
|
||||
# <i>italic</i>
|
||||
# <s>strikethrough</s>
|
||||
# <u>underline</u>
|
||||
#
|
||||
# For a complete reference see
|
||||
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
|
||||
#
|
||||
# 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 = "<b>%s</b>\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/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
|
||||
|
||||
# Print a notification on startup.
|
||||
# This is mainly for error detection, since dbus (re-)starts dunst
|
||||
# automatically after a crash.
|
||||
startup_notification = false
|
||||
|
||||
# Manage dunst's desire for talking
|
||||
# Can be one of the following values:
|
||||
# crit: Critical features. Dunst aborts
|
||||
# warn: Only non-fatal warnings
|
||||
# mesg: Important Messages
|
||||
# info: all unimportant stuff
|
||||
# debug: all less than unimportant stuff
|
||||
verbosity = mesg
|
||||
|
||||
# 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 = 8
|
||||
|
||||
### 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
|
||||
|
||||
[shortcuts]
|
||||
|
||||
# Shortcuts are specified as [modifier+][modifier+]...key
|
||||
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
|
||||
# "mod3" and "mod4" (windows-key).
|
||||
# Xev might be helpful to find names for keys.
|
||||
|
||||
# Close notification.
|
||||
close = ctrl+space
|
||||
|
||||
# Close all notifications.
|
||||
close_all = ctrl+shift+space
|
||||
|
||||
# Redisplay last message(s).
|
||||
# On the US keyboard layout "grave" is normally above TAB and left
|
||||
# of "1". Make sure this key actually exists on your keyboard layout,
|
||||
# e.g. check output of 'xmodmap -pke'
|
||||
history = ctrl+grave
|
||||
|
||||
# Context menu.
|
||||
context = ctrl+shift+grave
|
||||
|
||||
[urgency_low]
|
||||
# IMPORTANT: colors have to be defined in quotation marks.
|
||||
# Otherwise the "#" and following would be interpreted as a comment.
|
||||
background = "#1e1e2e"
|
||||
foreground = "#cdd6f4"
|
||||
#frame_color = "#2c2c2c"
|
||||
timeout = 2
|
||||
# Icon for notifications with low urgency, uncomment to enable
|
||||
icon = ~/.config/hypr/dunst/images/notification.png
|
||||
|
||||
[urgency_normal]
|
||||
background = "#1e1e2e"
|
||||
foreground = "#cdd6f4"
|
||||
#frame_color = "#2c2c2c"
|
||||
timeout = 5
|
||||
# Icon for notifications with normal urgency, uncomment to enable
|
||||
icon = ~/.config/hypr/dunst/images/notification.png
|
||||
|
||||
[urgency_critical]
|
||||
background = "#131313"
|
||||
foreground = "#f5cb42"
|
||||
frame_color = "#f38ba8"
|
||||
timeout = 0
|
||||
# Icon for notifications with critical urgency, uncomment to enable
|
||||
icon = ~/.config/hypr/dunst/images/notification.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
|
||||
# background = "#1e1e2e"
|
||||
# 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
|
||||
422
config/hypr/dunst/styles/dunstrc-light
Executable file
@ -0,0 +1,422 @@
|
||||
[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
|
||||
|
||||
# The geometry of the window:
|
||||
# [{width}]x{height}[+/-{x}+/-{y}]
|
||||
# The geometry of the message window.
|
||||
# The height is measured in number of notifications everything else
|
||||
# in pixels. If the width is omitted but the height is given
|
||||
# ("-geometry x2"), the message window expands over the whole screen
|
||||
# (dmenu-like). If width is 0, the window expands to the longest
|
||||
# message displayed. A positive x is measured from the left, a
|
||||
# negative from the right side of the screen. Y is measured from
|
||||
# the top and down respectively.
|
||||
# The width can be negative. In this case the actual width is the
|
||||
# screen width minus the width defined in within the geometry option.
|
||||
#geometry = "300x60+15+46"
|
||||
width = (250, 350)
|
||||
height = 350
|
||||
origin = top-center
|
||||
offset = 10x10
|
||||
|
||||
notification_limit = 9
|
||||
|
||||
# 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].
|
||||
# This option will only work if a compositing window manager is
|
||||
# present (e.g. xcompmgr, compiz, etc.).
|
||||
transparency = 20
|
||||
|
||||
# The height of the entire notification. If the height is smaller
|
||||
# than the font height and padding combined, it will be raised
|
||||
# to the font height and padding.
|
||||
notification_height = 15
|
||||
|
||||
# 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 = 1
|
||||
|
||||
# Defines color of the frame around the notification window.
|
||||
frame_color = "#313244"
|
||||
|
||||
# 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 = frame
|
||||
|
||||
# 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 = Fantasque Sans Mono 15
|
||||
|
||||
# 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:
|
||||
# <b>bold</b>
|
||||
# <i>italic</i>
|
||||
# <s>strikethrough</s>
|
||||
# <u>underline</u>
|
||||
#
|
||||
# For a complete reference see
|
||||
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
|
||||
#
|
||||
# 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 = "<b>%s</b>\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/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
|
||||
|
||||
# Print a notification on startup.
|
||||
# This is mainly for error detection, since dbus (re-)starts dunst
|
||||
# automatically after a crash.
|
||||
startup_notification = false
|
||||
|
||||
# Manage dunst's desire for talking
|
||||
# Can be one of the following values:
|
||||
# crit: Critical features. Dunst aborts
|
||||
# warn: Only non-fatal warnings
|
||||
# mesg: Important Messages
|
||||
# info: all unimportant stuff
|
||||
# debug: all less than unimportant stuff
|
||||
verbosity = mesg
|
||||
|
||||
# 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 = 8
|
||||
|
||||
### 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
|
||||
|
||||
[shortcuts]
|
||||
|
||||
# Shortcuts are specified as [modifier+][modifier+]...key
|
||||
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
|
||||
# "mod3" and "mod4" (windows-key).
|
||||
# Xev might be helpful to find names for keys.
|
||||
|
||||
# Close notification.
|
||||
close = ctrl+space
|
||||
|
||||
# Close all notifications.
|
||||
close_all = ctrl+shift+space
|
||||
|
||||
# Redisplay last message(s).
|
||||
# On the US keyboard layout "grave" is normally above TAB and left
|
||||
# of "1". Make sure this key actually exists on your keyboard layout,
|
||||
# e.g. check output of 'xmodmap -pke'
|
||||
history = ctrl+grave
|
||||
|
||||
# Context menu.
|
||||
context = ctrl+shift+grave
|
||||
|
||||
[urgency_low]
|
||||
# IMPORTANT: colors have to be defined in quotation marks.
|
||||
# Otherwise the "#" and following would be interpreted as a comment.
|
||||
background = "#e7e7ec"
|
||||
foreground = "#1e1e2e"
|
||||
#frame_color = "#2c2c2c"
|
||||
timeout = 2
|
||||
# Icon for notifications with low urgency, uncomment to enable
|
||||
icon = ~/.config/hypr/dunst/images/notification2.png
|
||||
|
||||
[urgency_normal]
|
||||
background = "#e7e7ec"
|
||||
foreground = "#1e1e2e"
|
||||
#frame_color = "#2c2c2c"
|
||||
timeout = 5
|
||||
# Icon for notifications with normal urgency, uncomment to enable
|
||||
icon = ~/.config/hypr/dunst/images/notification2.png
|
||||
|
||||
[urgency_critical]
|
||||
background = "#e7e7ec"
|
||||
foreground = "#f5cb42"
|
||||
frame_color = "#f38ba8"
|
||||
timeout = 0
|
||||
# Icon for notifications with critical urgency, uncomment to enable
|
||||
icon = ~/.config/hypr/dunst/images/notification2.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
|
||||
# background = "#e7e7ec"
|
||||
# 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
|
||||
15
config/hypr/hyprland.conf
Normal file
@ -0,0 +1,15 @@
|
||||
# Sourcing external config files
|
||||
$configs = $HOME/.config/hypr/configs
|
||||
|
||||
source=$configs/ENVariables.conf
|
||||
source=$configs/Execs.conf
|
||||
source=$configs/Keybinds.conf
|
||||
source=$configs/Monitors.conf
|
||||
source=$configs/WindowRules.conf
|
||||
source=$configs/Settings.conf
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
9
config/hypr/scripts/AirplaneMode.sh
Normal file
@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
wifi="$(nmcli r wifi | awk 'FNR = 2 {print $1}')"
|
||||
if [ "$wifi" == "enabled" ]; then
|
||||
rfkill block all &
|
||||
notify-send -t 1000 'airplane mode: active'
|
||||
else
|
||||
rfkill unblock all &
|
||||
notify-send -t 1000 'airplane mode: inactive'
|
||||
fi
|
||||
23
config/hypr/scripts/AppAutoClose.sh
Executable file
@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Variables: put the process names you want to auto close here. Make sure to add "" and inside the ()
|
||||
processes=("pavucontrol")
|
||||
|
||||
# Loop through each process name
|
||||
while true; do
|
||||
active_window=$(hyprctl activewindow | grep class | awk '{print $2}')
|
||||
|
||||
# Loop through each process name in the array
|
||||
for process in "${processes[@]}"; do
|
||||
if [ "$active_window" == "$process" ]; then
|
||||
# If the active window matches the process, mark it as active
|
||||
process_active=true
|
||||
else
|
||||
# If not, mark it as inactive and try to kill the process
|
||||
process_active=false
|
||||
pkill "$process"
|
||||
fi
|
||||
done
|
||||
|
||||
sleep 2
|
||||
done
|
||||
51
config/hypr/scripts/Brightness.sh
Executable file
@ -0,0 +1,51 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
iDIR="$HOME/.config/hypr/dunst/icons"
|
||||
notification_timeout=1000
|
||||
|
||||
# Get brightness
|
||||
get_backlight() {
|
||||
echo $(brightnessctl -m | cut -d, -f4)
|
||||
}
|
||||
|
||||
# Get icons
|
||||
get_icon() {
|
||||
current=$(get_backlight | sed 's/%//')
|
||||
if [ "$current" -le "20" ]; then
|
||||
icon="$iDIR/brightness-20.png"
|
||||
elif [ "$current" -le "40" ]; then
|
||||
icon="$iDIR/brightness-40.png"
|
||||
elif [ "$current" -le "60" ]; then
|
||||
icon="$iDIR/brightness-60.png"
|
||||
elif [ "$current" -le "80" ]; then
|
||||
icon="$iDIR/brightness-80.png"
|
||||
else
|
||||
icon="$iDIR/brightness-100.png"
|
||||
fi
|
||||
}
|
||||
|
||||
# Notify
|
||||
notify_user() {
|
||||
notify-send -h string:x-dunst-stack-tag:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness : $current%"
|
||||
}
|
||||
|
||||
# Change brightness
|
||||
change_backlight() {
|
||||
brightnessctl set "$1" && get_icon && notify_user
|
||||
}
|
||||
|
||||
# Execute accordingly
|
||||
case "$1" in
|
||||
"--get")
|
||||
get_backlight
|
||||
;;
|
||||
"--inc")
|
||||
change_backlight "+10%"
|
||||
;;
|
||||
"--dec")
|
||||
change_backlight "10%-"
|
||||
;;
|
||||
*)
|
||||
get_backlight
|
||||
;;
|
||||
esac
|
||||
49
config/hypr/scripts/BrightnessKbd.sh
Executable file
@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
iDIR="$HOME/.config/hypr/dunst/icons"
|
||||
|
||||
# Get keyboard brightness
|
||||
get_kbd_backlight() {
|
||||
echo $(brightnessctl -d '*::kbd_backlight' -m | cut -d, -f4)
|
||||
}
|
||||
|
||||
# Get icons
|
||||
get_icon() {
|
||||
current=$(get_kbd_backlight | sed 's/%//')
|
||||
if [ "$current" -le "20" ]; then
|
||||
icon="$iDIR/brightness-20.png"
|
||||
elif [ "$current" -le "40" ]; then
|
||||
icon="$iDIR/brightness-40.png"
|
||||
elif [ "$current" -le "60" ]; then
|
||||
icon="$iDIR/brightness-60.png"
|
||||
elif [ "$current" -le "80" ]; then
|
||||
icon="$iDIR/brightness-80.png"
|
||||
else
|
||||
icon="$iDIR/brightness-100.png"
|
||||
fi
|
||||
}
|
||||
# Notify
|
||||
notify_user() {
|
||||
notify-send -h string:x-dunst-stack-tag:brightness_notif -h int:value:$current -u low -i "$icon" "Keyboard Brightness : $current%"
|
||||
}
|
||||
|
||||
# Change brightness
|
||||
change_kbd_backlight() {
|
||||
brightnessctl -d *::kbd_backlight set "$1" && get_icon && notify_user
|
||||
}
|
||||
|
||||
# Execute accordingly
|
||||
case "$1" in
|
||||
"--get")
|
||||
get_kbd_backlight
|
||||
;;
|
||||
"--inc")
|
||||
change_kbd_backlight "+30%"
|
||||
;;
|
||||
"--dec")
|
||||
change_kbd_backlight "30%-"
|
||||
;;
|
||||
*)
|
||||
get_kbd_backlight
|
||||
;;
|
||||
esac
|
||||
13
config/hypr/scripts/ChangeBlur.sh
Normal file
@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
STATE=$(hyprctl -j getoption decoration:blur_passes | jq ".int")
|
||||
|
||||
if [ "${STATE}" == "2" ]; then
|
||||
hyprctl keyword decoration:blur_size 3
|
||||
hyprctl keyword decoration:blur_passes 1
|
||||
notify-send "Less blur"
|
||||
else
|
||||
hyprctl keyword decoration:blur_size 7.8
|
||||
hyprctl keyword decoration:blur_passes 2
|
||||
notify-send "Normal blur"
|
||||
fi
|
||||
26
config/hypr/scripts/ChangeLayout.sh
Normal file
@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
LAYOUT=$(hyprctl -j getoption general:layout | jq '.str' | sed 's/"//g')
|
||||
|
||||
case $LAYOUT in
|
||||
"master")
|
||||
hyprctl keyword general:layout dwindle
|
||||
hyprctl keyword unbind SUPER,J
|
||||
hyprctl keyword unbind SUPER,K
|
||||
hyprctl keyword bind SUPER,J,cyclenext
|
||||
hyprctl keyword bind SUPER,K,cyclenext,prev
|
||||
hyprctl keyword bind SUPER,O,togglesplit
|
||||
notify-send "Dwindle Layout"
|
||||
;;
|
||||
"dwindle")
|
||||
hyprctl keyword general:layout master
|
||||
hyprctl keyword unbind SUPER,J
|
||||
hyprctl keyword unbind SUPER,K
|
||||
hyprctl keyword unbind SUPER,O
|
||||
hyprctl keyword bind SUPER,J,layoutmsg,cyclenext
|
||||
hyprctl keyword bind SUPER,K,layoutmsg,cycleprev
|
||||
notify-send "Master Layout"
|
||||
;;
|
||||
*) ;;
|
||||
|
||||
esac
|
||||
83
config/hypr/scripts/ChangeLayoutMenu.sh
Normal file
@ -0,0 +1,83 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Files
|
||||
CONFIG="$HOME/.config/hypr/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
|
||||
WAYBARFILE="$HOME/.config/hypr/waybar/config"
|
||||
WOFIFILE="$HOME/.config/hypr/wofi/config"
|
||||
|
||||
# wofi window config (in %)
|
||||
WIDTH=10
|
||||
HEIGHT=30
|
||||
|
||||
## Wofi Command
|
||||
wofi_command="wofi --show dmenu \
|
||||
--prompt choose...
|
||||
--conf $CONFIG --style $STYLE --color $COLORS \
|
||||
--width=$WIDTH% --height=$HEIGHT% \
|
||||
--cache-file=/dev/null \
|
||||
--hide-scroll --no-actions \
|
||||
--matching=fuzzy"
|
||||
|
||||
|
||||
menu(){
|
||||
printf "1. default\n"
|
||||
printf "2. plasma-style\n"
|
||||
printf "3. gnome-style\n"
|
||||
printf "4. dual-panel\n"
|
||||
printf "5. simple\n"
|
||||
printf "6. no panel"
|
||||
}
|
||||
|
||||
main() {
|
||||
choice=$(menu | ${wofi_command} | cut -d. -f1)
|
||||
case $choice in
|
||||
1)
|
||||
ln -sf "$HOME/.config/hypr/waybar/configs/config-default" "$WAYBARFILE"
|
||||
ln -sf "$HOME/.config/hypr/wofi/configs/config-default" "$WOFIFILE"
|
||||
;;
|
||||
2)
|
||||
ln -sf "$HOME/.config/hypr/waybar/configs/config-plasma" "$WAYBARFILE"
|
||||
ln -sf "$HOME/.config/hypr/wofi/configs/config-plasma" "$WOFIFILE"
|
||||
;;
|
||||
3)
|
||||
ln -sf "$HOME/.config/hypr/waybar/configs/config-gnome" "$WAYBARFILE"
|
||||
ln -sf "$HOME/.config/hypr/wofi/configs/config-gnome" "$WOFIFILE"
|
||||
;;
|
||||
4)
|
||||
ln -sf "$HOME/.config/hypr/waybar/configs/config-dual" "$WAYBARFILE"
|
||||
ln -sf "$HOME/.config/hypr/wofi/configs/config-default" "$WOFIFILE"
|
||||
;;
|
||||
5)
|
||||
ln -sf "$HOME/.config/hypr/waybar/configs/config-simple" "$WAYBARFILE"
|
||||
ln -sf "$HOME/.config/hypr/wofi/configs/config-default" "$WOFIFILE"
|
||||
;;
|
||||
6)
|
||||
if pgrep -x "waybar" >/dev/null; then
|
||||
killall waybar
|
||||
exit
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Check if wofi is already running
|
||||
if pidof wofi >/dev/null; then
|
||||
killall wofi
|
||||
exit 0
|
||||
else
|
||||
main
|
||||
fi
|
||||
|
||||
# Restart Waybar and run other scripts if a choice was made
|
||||
if [[ -n "$choice" ]]; then
|
||||
# Restart Waybar
|
||||
killall waybar
|
||||
fi
|
||||
|
||||
exec ~/.config/hypr/scripts/Startup.sh &
|
||||
|
||||
14
config/hypr/scripts/ClipManager.sh
Executable file
@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
|
||||
# WOFI STYLES
|
||||
CONFIG="$HOME/.config/hypr/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
|
||||
if [[ ! $(pidof wofi) ]]; then
|
||||
cliphist list | wofi --show dmenu --prompt 'Search...' \
|
||||
--conf ${CONFIG} --style ${STYLE} --color ${COLORS} \
|
||||
--width=600 --height=400 | cliphist decode | wl-copy
|
||||
else
|
||||
pkill wofi
|
||||
fi
|
||||
54
config/hypr/scripts/DarkLight-swaybg.sh
Executable file
@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
set -x
|
||||
# Define the path
|
||||
wallpaper_path="$HOME/Pictures/wallpapers/Dynamic-Wallpapers"
|
||||
hypr_config_path="$HOME/.config/hypr"
|
||||
|
||||
# Define the GTK themes for light and dark modes
|
||||
light_gtk_theme="Tokyonight-Light-B"
|
||||
dark_gtk_theme="Tokyonight-Dark-B"
|
||||
light_icon_theme="TokyoNight-SE"
|
||||
dark_icon_theme="TokyoNight-SE"
|
||||
|
||||
# Define functions for notifying user and updating symlinks
|
||||
notify_user() {
|
||||
notify-send -h string:x-canonical-private-synchronous:sys-notify -u normal "Switching to $1 mode"
|
||||
}
|
||||
|
||||
# Determine the current wallpaper mode by checking a configuration file
|
||||
if [ "$(cat ~/.wallpaper_mode)" = "light" ]; then
|
||||
current_mode="light"
|
||||
next_mode="dark"
|
||||
else
|
||||
current_mode="dark"
|
||||
next_mode="light"
|
||||
fi
|
||||
path_param=$(echo $next_mode | sed 's/.*/\u&/')
|
||||
|
||||
notify_user "$next_mode"
|
||||
ln -sf "${hypr_config_path}/waybar/style/style-${next_mode}.css" "${hypr_config_path}/waybar/style.css"
|
||||
ln -sf "${hypr_config_path}/dunst/styles/dunstrc-${next_mode}" "${hypr_config_path}/dunst/dunstrc"
|
||||
ln -sf "${hypr_config_path}/wofi/styles/style-${next_mode}.css" "${hypr_config_path}/wofi/style.css"
|
||||
|
||||
gtk_theme="${next_mode}_gtk_theme"
|
||||
icon_theme="${next_mode}_icon_theme"
|
||||
|
||||
gsettings set org.gnome.desktop.interface gtk-theme "${!gtk_theme}"
|
||||
gsettings set org.gnome.desktop.interface icon-theme "${!icon_theme}"
|
||||
|
||||
# Find the next wallpaper if one exists
|
||||
current_wallpaper="$(cat ~/.current_wallpaper)"
|
||||
next_wallpaper="${current_wallpaper/_"$current_mode"/_"$next_mode"}"
|
||||
|
||||
if ! [ -f "$next_wallpaper" ]; then
|
||||
next_wallpaper="$(find "${wallpaper_path/"${path_param}"}" -type f -iname "*_"${next_mode}".jpg" -print0 | shuf -n1 -z | xargs -0)"
|
||||
fi
|
||||
|
||||
swaybg -m fill -i "${next_wallpaper}" &
|
||||
|
||||
# Update the configuration file to reflect the new wallpaper mode and current wallpaper
|
||||
echo "$next_mode" > ~/.wallpaper_mode
|
||||
echo "$next_wallpaper" > ~/.current_wallpaper
|
||||
|
||||
sleep 2
|
||||
exec ~/.config/hypr/scripts/Startup.sh &
|
||||
63
config/hypr/scripts/DarkLight.sh
Executable file
@ -0,0 +1,63 @@
|
||||
#!/bin/bash
|
||||
set -x
|
||||
# Define the path
|
||||
wallpaper_path="$HOME/Pictures/wallpapers/Dynamic-Wallpapers"
|
||||
hypr_config_path="$HOME/.config/hypr"
|
||||
|
||||
# Tokyo Night
|
||||
light_gtk_theme="Tokyonight-Light-B"
|
||||
dark_gtk_theme="Tokyonight-Dark-B"
|
||||
light_icon_theme="TokyoNight-SE"
|
||||
dark_icon_theme="TokyoNight-SE"
|
||||
|
||||
pkill swaybg
|
||||
|
||||
# Initialize swww if needed
|
||||
swww query || swww init
|
||||
|
||||
# Set swww options
|
||||
swww="swww img"
|
||||
effect="--transition-bezier .43,1.19,1,.4 --transition-fps 60 --transition-type grow --transition-pos 0.925,0.977 --transition-duration 2"
|
||||
|
||||
# Define functions for notifying user and updating symlinks
|
||||
notify_user() {
|
||||
notify-send -h string:x-canonical-private-synchronous:sys-notify -u normal "Switching to $1 mode"
|
||||
}
|
||||
|
||||
# Determine the current wallpaper mode by checking a configuration file
|
||||
if [ "$(cat ~/.wallpaper_mode)" = "light" ]; then
|
||||
current_mode="light"
|
||||
next_mode="dark"
|
||||
else
|
||||
current_mode="dark"
|
||||
next_mode="light"
|
||||
fi
|
||||
path_param=$(echo $next_mode | sed 's/.*/\u&/')
|
||||
|
||||
notify_user "$next_mode"
|
||||
ln -sf "${hypr_config_path}/waybar/style/style-${next_mode}.css" "${hypr_config_path}/waybar/style.css"
|
||||
ln -sf "${hypr_config_path}/dunst/styles/dunstrc-${next_mode}" "${hypr_config_path}/dunst/dunstrc"
|
||||
ln -sf "${hypr_config_path}/wofi/styles/style-${next_mode}.css" "${hypr_config_path}/wofi/style.css"
|
||||
|
||||
gtk_theme="${next_mode}_gtk_theme"
|
||||
icon_theme="${next_mode}_icon_theme"
|
||||
|
||||
gsettings set org.gnome.desktop.interface gtk-theme "${!gtk_theme}"
|
||||
gsettings set org.gnome.desktop.interface icon-theme "${!icon_theme}"
|
||||
|
||||
# Find the next wallpaper if one exists
|
||||
current_wallpaper="$(cat ~/.current_wallpaper)"
|
||||
next_wallpaper="${current_wallpaper/_"$current_mode"/_"$next_mode"}"
|
||||
|
||||
if ! [ -f "$next_wallpaper" ]; then
|
||||
next_wallpaper="$(find "${wallpaper_path/"${path_param}"}" -type f -iname "*_"${next_mode}".jpg" -print0 | shuf -n1 -z | xargs -0)"
|
||||
fi
|
||||
|
||||
$swww "${next_wallpaper}" $effect
|
||||
|
||||
# Update the configuration file to reflect the new wallpaper mode and current wallpaper
|
||||
echo "$next_mode" > ~/.wallpaper_mode
|
||||
echo "$next_wallpaper" > ~/.current_wallpaper
|
||||
|
||||
sleep 2
|
||||
exec ~/.config/hypr/scripts/Startup.sh &
|
||||
7
config/hypr/scripts/Dunst.sh
Executable file
@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
CONFIG="$HOME/.config/hypr/dunst/dunstrc"
|
||||
|
||||
if [[ ! $(pidof dunst) ]]; then
|
||||
dunst -conf ${CONFIG}
|
||||
fi
|
||||
16
config/hypr/scripts/GameMode.sh
Normal file
@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env sh
|
||||
HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==2{print $2}')
|
||||
if [ "$HYPRGAMEMODE" = 1 ] ; then
|
||||
hyprctl --batch "\
|
||||
keyword animations:enabled 0;\
|
||||
keyword decoration:drop_shadow 0;\
|
||||
keyword decoration:blur 0;\
|
||||
keyword general:gaps_in 0;\
|
||||
keyword general:gaps_out 0;\
|
||||
keyword general:border_size 1;\
|
||||
keyword decoration:rounding 0"
|
||||
swww kill
|
||||
notify-send "animations off"
|
||||
exit
|
||||
fi
|
||||
hyprctl reload
|
||||
2
config/hypr/scripts/Help.sh
Normal file
@ -0,0 +1,2 @@
|
||||
#!/bin/sh
|
||||
foot -e vim ~/.config/hypr/HelpFile.md
|
||||
9
config/hypr/scripts/LidSwitch.sh
Normal file
@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
if grep open /proc/acpi/button/lid/LID/state; then
|
||||
hyprctl keyword monitor "eDP-1, preferred, auto, 1"
|
||||
else
|
||||
if [[ `hyprctl monitors | grep "Monitor" | wc -l` != 1 ]]; then
|
||||
hyprctl keyword monitor "eDP-1, disable"
|
||||
fi
|
||||
fi
|
||||
5
config/hypr/scripts/LockScreen.sh
Normal file
@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG="$HOME/.config/hypr/swaylock/config"
|
||||
|
||||
sleep 0.5s; swaylock --config ${CONFIG} & disown
|
||||
59
config/hypr/scripts/MediaCtrl.sh
Executable file
@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
music_icon="$HOME/.config/hypr/dunst/icons/music.png"
|
||||
|
||||
# Play the next track
|
||||
play_next() {
|
||||
playerctl next
|
||||
show_music_notification
|
||||
}
|
||||
|
||||
# Play the previous track
|
||||
play_previous() {
|
||||
playerctl previous
|
||||
show_music_notification
|
||||
}
|
||||
|
||||
# Toggle play/pause
|
||||
toggle_play_pause() {
|
||||
playerctl play-pause
|
||||
show_music_notification
|
||||
}
|
||||
|
||||
# Stop playback
|
||||
stop_playback() {
|
||||
playerctl stop
|
||||
dunstify -r 123 -i "$music_icon" "Playback Stopped"
|
||||
}
|
||||
|
||||
# Display Dunst 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"
|
||||
elif [[ "$status" == "Paused" ]]; then
|
||||
dunstify -r 123 -i "$music_icon" "Playback Paused"
|
||||
fi
|
||||
}
|
||||
|
||||
# Get media control action from command line argument
|
||||
case "$1" in
|
||||
"--nxt")
|
||||
play_next
|
||||
;;
|
||||
"--prv")
|
||||
play_previous
|
||||
;;
|
||||
"--pause")
|
||||
toggle_play_pause
|
||||
;;
|
||||
"--stop")
|
||||
stop_playback
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 [--nxt|--prv|--pause|--stop]"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
8
config/hypr/scripts/PortalHyprlandDebian.sh
Executable file
@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
sleep 1
|
||||
killall xdg-desktop-portal-hyprland
|
||||
killall xdg-desktop-portal-wlr
|
||||
killall xdg-desktop-portal
|
||||
/usr/lib/xdg-desktop-portal-hyprland &
|
||||
sleep 2
|
||||
/usr/libexec/xdg-desktop-portal &
|
||||
58
config/hypr/scripts/QuickEdit.sh
Normal file
@ -0,0 +1,58 @@
|
||||
#!/bin/bash
|
||||
|
||||
# WOFI STYLES
|
||||
CONFIG="$HOME/.config/hypr/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
|
||||
hyprDir="$HOME/.config/hypr/configs"
|
||||
|
||||
# wofi window config (in %)
|
||||
WIDTH=10
|
||||
HEIGHT=20
|
||||
|
||||
## Wofi Command
|
||||
wofi_command="wofi --show dmenu \
|
||||
--prompt choose to view or edit...
|
||||
--conf $CONFIG --style $STYLE --color $COLORS \
|
||||
--width=$WIDTH% --height=$HEIGHT% \
|
||||
--cache-file=/dev/null \
|
||||
--hide-scroll --no-actions \
|
||||
--matching=fuzzy"
|
||||
|
||||
menu(){
|
||||
printf "1. view Env-variables\n"
|
||||
printf "2. view Rules\n"
|
||||
printf "3. view Execs\n"
|
||||
printf "4. view Key-Binds\n"
|
||||
printf "5. view Monitors\n"
|
||||
printf "6. view Hyprland-Settings\n"
|
||||
}
|
||||
|
||||
main() {
|
||||
choice=$(menu | ${wofi_command} | cut -d. -f1)
|
||||
case $choice in
|
||||
1)
|
||||
foot -e vim "$hyprDir/ENVariables.conf"
|
||||
;;
|
||||
2)
|
||||
foot -e vim "$hyprDir/WindowRules.conf"
|
||||
;;
|
||||
3)
|
||||
foot -e vim "$hyprDir/Execs.conf"
|
||||
;;
|
||||
4)
|
||||
foot -e vim "$hyprDir/Keybinds.conf"
|
||||
;;
|
||||
5)
|
||||
foot -e vim "$hyprDir/Monitors.conf"
|
||||
;;
|
||||
6)
|
||||
foot -e vim "$hyprDir/Settings.conf"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
main
|
||||
80
config/hypr/scripts/ScreenShot.sh
Normal file
@ -0,0 +1,80 @@
|
||||
#!/bin/bash
|
||||
|
||||
iDIR="$HOME/.config/hypr/dunst/icons"
|
||||
|
||||
time=$(date +%Y-%m-%d-%H-%M-%S)
|
||||
dir="$(xdg-user-dir)/Pictures/Screenshots"
|
||||
file="Screenshot_${time}_${RANDOM}.png"
|
||||
|
||||
# notify and view screenshot
|
||||
notify_cmd_shot="notify-send -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
|
||||
}
|
||||
|
||||
# countdown
|
||||
countdown() {
|
||||
for sec in $(seq $1 -1 1); do
|
||||
notify-send -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec"
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
# take shots
|
||||
shotnow() {
|
||||
cd ${dir} && grim - | tee "$file" | wl-copy
|
||||
sleep 2
|
||||
notify_view
|
||||
}
|
||||
|
||||
shot5() {
|
||||
countdown '5'
|
||||
sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy
|
||||
sleep 1
|
||||
notify_view
|
||||
|
||||
}
|
||||
|
||||
shot10() {
|
||||
countdown '10'
|
||||
sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy
|
||||
notify_view
|
||||
}
|
||||
|
||||
shotwin() {
|
||||
w_pos=$(hyprctl activewindow | grep 'at:' | cut -d':' -f2 | tr -d ' ' | tail -n1)
|
||||
w_size=$(hyprctl activewindow | grep 'size:' | cut -d':' -f2 | tr -d ' ' | tail -n1 | sed s/,/x/g)
|
||||
cd ${dir} && grim -g "$w_pos $w_size" - | tee "$file" | wl-copy
|
||||
notify_view
|
||||
}
|
||||
|
||||
shotarea() {
|
||||
cd ${dir} && grim -g "$(slurp)" - | tee "$file" | wl-copy
|
||||
notify_view
|
||||
}
|
||||
|
||||
if [[ ! -d "$dir" ]]; then
|
||||
mkdir -p "$dir"
|
||||
fi
|
||||
|
||||
if [[ "$1" == "--now" ]]; then
|
||||
shotnow
|
||||
elif [[ "$1" == "--in5" ]]; then
|
||||
shot5
|
||||
elif [[ "$1" == "--in10" ]]; then
|
||||
shot10
|
||||
elif [[ "$1" == "--win" ]]; then
|
||||
shotwin
|
||||
elif [[ "$1" == "--area" ]]; then
|
||||
shotarea
|
||||
else
|
||||
echo -e "Available Options : --now --in5 --in10 --win --area"
|
||||
fi
|
||||
|
||||
exit 0
|
||||
17
config/hypr/scripts/Startup.sh
Normal file
@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPTSDIR=$HOME/.config/hypr/scripts
|
||||
|
||||
# Kill already running process
|
||||
_ps=(waybar mako dunst)
|
||||
for _prs in "${_ps[@]}"; do
|
||||
if [[ $(pidof ${_prs}) ]]; then
|
||||
killall -9 ${_prs}
|
||||
fi
|
||||
done
|
||||
|
||||
# Lauch notification daemon (dunst)
|
||||
${SCRIPTSDIR}/Dunst.sh &
|
||||
|
||||
# Lauch statusbar (waybar)
|
||||
${SCRIPTSDIR}/Waybar.sh &
|
||||
2
config/hypr/scripts/Sunset.sh
Normal file
@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
wlsunset -t 4000 -T 6500 -d 900 -S 07:00 -s 19:00
|
||||
37
config/hypr/scripts/TouchPad.sh
Normal file
@ -0,0 +1,37 @@
|
||||
#!/bin/sh
|
||||
|
||||
# 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"
|
||||
|
||||
notify-send -u normal "Enabling Touchpad"
|
||||
|
||||
hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" true
|
||||
}
|
||||
|
||||
disable_touchpad() {
|
||||
printf "false" > "$STATUS_FILE"
|
||||
|
||||
notify-send -u normal "Disabling Touchpad"
|
||||
|
||||
hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" false
|
||||
}
|
||||
|
||||
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
|
||||
109
config/hypr/scripts/Volume.sh
Normal file
@ -0,0 +1,109 @@
|
||||
#!/bin/bash
|
||||
|
||||
iDIR="$HOME/.config/hypr/dunst/icons"
|
||||
|
||||
# Get Volume
|
||||
get_volume() {
|
||||
volume=$(pamixer --get-volume)
|
||||
echo "$volume"
|
||||
}
|
||||
|
||||
# Get icons
|
||||
get_icon() {
|
||||
current=$(get_volume)
|
||||
if [[ "$current" -eq "0" ]]; then
|
||||
echo "$iDIR/volume-mute.png"
|
||||
elif [[ ("$current" -ge "0") && ("$current" -le "30") ]]; then
|
||||
echo "$iDIR/volume-low.png"
|
||||
elif [[ ("$current" -ge "30") && ("$current" -le "60") ]]; then
|
||||
echo "$iDIR/volume-mid.png"
|
||||
elif [[ ("$current" -ge "60") && ("$current" -le "100") ]]; then
|
||||
echo "$iDIR/volume-high.png"
|
||||
fi
|
||||
}
|
||||
|
||||
# Notify
|
||||
notify_user() {
|
||||
# notify-send -h string:x-canonical-private-synchronous:sys-notify -u normal -i "$(get_icon)" "Volume : $(get_volume) %"
|
||||
notify-send -h int:value:$(get_volume) -h "string:x-dunst-stack-tag:volume_notif" -u low -i "$(get_icon)" "Volume : $(get_volume) %"
|
||||
|
||||
}
|
||||
|
||||
# Increase Volume
|
||||
inc_volume() {
|
||||
pamixer -i 5 && notify_user
|
||||
}
|
||||
|
||||
# Decrease Volume
|
||||
dec_volume() {
|
||||
pamixer -d 5 && notify_user
|
||||
}
|
||||
|
||||
# Toggle Mute
|
||||
toggle_mute() {
|
||||
if [ "$(pamixer --get-mute)" == "false" ]; then
|
||||
pamixer -m && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF"
|
||||
elif [ "$(pamixer --get-mute)" == "true" ]; then
|
||||
pamixer -u && notify-send -h string:x-canonical-private-synchronous:sys-notify -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 && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF"
|
||||
elif [ "$(pamixer --default-source --get-mute)" == "true" ]; then
|
||||
pamixer -u --default-source u && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone.png" "Microphone Switched ON"
|
||||
fi
|
||||
}
|
||||
# Get icons
|
||||
get_mic_icon() {
|
||||
current=$(pamixer --default-source --get-volume)
|
||||
if [[ "$current" -eq "0" ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
elif [[ ("$current" -ge "0") && ("$current" -le "30") ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
elif [[ ("$current" -ge "30") && ("$current" -le "60") ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
elif [[ ("$current" -ge "60") && ("$current" -le "100") ]]; then
|
||||
echo "$iDIR/microphone.png"
|
||||
fi
|
||||
}
|
||||
# Notify
|
||||
notify_mic_user() {
|
||||
# notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_mic_icon)" "Mic-Level : $(pamixer --default-source --get-volume) %"
|
||||
notify-send -h int:value:$(pamixer --default-source --get-volume) -h "string:x-dunst-stack-tag:volume_notif" -u low -i "$(get_mic_icon)" "Mic-Level : $(pamixer --default-source --get-volume) %"
|
||||
}
|
||||
|
||||
# Increase MIC Volume
|
||||
inc_mic_volume() {
|
||||
pamixer --default-source -i 5 && notify_mic_user
|
||||
}
|
||||
|
||||
# Decrease MIC Volume
|
||||
dec_mic_volume() {
|
||||
pamixer --default-source -d 5 && notify_mic_user
|
||||
}
|
||||
|
||||
# Execute accordingly
|
||||
if [[ "$1" == "--get" ]]; then
|
||||
get_volume
|
||||
elif [[ "$1" == "--inc" ]]; then
|
||||
inc_volume
|
||||
elif [[ "$1" == "--dec" ]]; then
|
||||
dec_volume
|
||||
elif [[ "$1" == "--toggle" ]]; then
|
||||
toggle_mute
|
||||
elif [[ "$1" == "--toggle-mic" ]]; then
|
||||
toggle_mic
|
||||
elif [[ "$1" == "--get-icon" ]]; then
|
||||
get_icon
|
||||
elif [[ "$1" == "--get-mic-icon" ]]; then
|
||||
get_mic_icon
|
||||
elif [[ "$1" == "--mic-inc" ]]; then
|
||||
inc_mic_volume
|
||||
elif [[ "$1" == "--mic-dec" ]]; then
|
||||
dec_mic_volume
|
||||
else
|
||||
get_volume
|
||||
fi
|
||||
48
config/hypr/scripts/Wallpaper.sh
Normal file
@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
DIR=$HOME/Pictures/wallpapers/
|
||||
PICS=($(find ${DIR} -type f \( -name "*.jpg" -o -name "*.jpeg" -o -name "*.png" -o -name "*.gif" \)))
|
||||
RANDOMPICS=${PICS[ $RANDOM % ${#PICS[@]} ]}
|
||||
|
||||
change_swaybg(){
|
||||
pkill swww
|
||||
pkill swaybg
|
||||
swaybg -m fill -i ${RANDOMPICS}
|
||||
}
|
||||
|
||||
change_swww(){
|
||||
pkill swaybg
|
||||
swww query || swww init
|
||||
swww img ${RANDOMPICS} --transition-fps 30 --transition-type any --transition-duration 3
|
||||
}
|
||||
|
||||
change_current(){
|
||||
if pidof swaybg >/dev/null; then
|
||||
change_swaybg
|
||||
else
|
||||
change_swww
|
||||
fi
|
||||
}
|
||||
|
||||
switch(){
|
||||
if pidof swaybg >/dev/null; then
|
||||
change_swww
|
||||
else
|
||||
change_swaybg
|
||||
fi
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
"swaybg")
|
||||
change_swaybg
|
||||
;;
|
||||
"swww")
|
||||
change_swww
|
||||
;;
|
||||
"s")
|
||||
switch
|
||||
;;
|
||||
*)
|
||||
change_current
|
||||
;;
|
||||
esac
|
||||
85
config/hypr/scripts/WallpaperSelect.sh
Normal file
@ -0,0 +1,85 @@
|
||||
#!/bin/bash
|
||||
|
||||
# WALLPAPERS PATH
|
||||
DIR=$HOME/Pictures/wallpapers
|
||||
|
||||
# Transition config (type swww img --help for more settings
|
||||
FPS=30
|
||||
TYPE="simple"
|
||||
DURATION=3
|
||||
|
||||
# wofi window config (in %)
|
||||
WIDTH=20
|
||||
HEIGHT=40
|
||||
|
||||
SWWW_PARAMS="--transition-fps $FPS --transition-type $TYPE --transition-duration $DURATION"
|
||||
|
||||
PICS=($(ls ${DIR} | grep -e ".jpg$" -e ".jpeg$" -e ".png$" -e ".gif$"))
|
||||
#PICS=($(find ${DIR} -type f \( -name "*.jpg" -o -name "*.jpeg" -o -name "*.png" \)))
|
||||
|
||||
RANDOM_PIC=${PICS[ $RANDOM % ${#PICS[@]} ]}
|
||||
RANDOM_PIC_NAME="${#PICS[@]}. random"
|
||||
|
||||
# WOFI STYLES
|
||||
CONFIG="$HOME/.config/hypr/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
|
||||
# to check if swaybg is running
|
||||
if [[ $(pidof swaybg) ]]; then
|
||||
pkill swaybg
|
||||
fi
|
||||
|
||||
## Wofi Command
|
||||
wofi_command="wofi --show dmenu \
|
||||
--prompt choose...
|
||||
--conf $CONFIG --style $STYLE --color $COLORS \
|
||||
--width=$WIDTH% --height=$HEIGHT% \
|
||||
--cache-file=/dev/null \
|
||||
--hide-scroll --no-actions \
|
||||
--matching=fuzzy"
|
||||
|
||||
menu(){
|
||||
# Here we are looping in the PICS array that is composed of all images in the $DIR folder
|
||||
for i in ${!PICS[@]}; do
|
||||
# keeping the .gif to make sue you know it is animated
|
||||
if [[ -z $(echo ${PICS[$i]} | grep .gif$) ]]; then
|
||||
printf "$i. $(echo ${PICS[$i]} | cut -d. -f1)\n" # n°. <name_of_file_without_identifier>
|
||||
else
|
||||
printf "$i. ${PICS[$i]}\n"
|
||||
fi
|
||||
done
|
||||
|
||||
printf "$RANDOM_PIC_NAME"
|
||||
}
|
||||
|
||||
swww query || swww init
|
||||
|
||||
main() {
|
||||
choice=$(menu | ${wofi_command})
|
||||
|
||||
# no choice case
|
||||
if [[ -z $choice ]]; then return; fi
|
||||
|
||||
# random choice case
|
||||
if [ "$choice" = "$RANDOM_PIC_NAME" ]; then
|
||||
swww img ${DIR}/${RANDOM_PIC} $SWWW_PARAMS
|
||||
return
|
||||
fi
|
||||
|
||||
pic_index=$(echo $choice | cut -d. -f1)
|
||||
swww img ${DIR}/${PICS[$pic_index]} $SWWW_PARAMS
|
||||
}
|
||||
|
||||
# Check if wofi is already running
|
||||
if pidof wofi >/dev/null; then
|
||||
killall wofi
|
||||
exit 0
|
||||
else
|
||||
main
|
||||
fi
|
||||
|
||||
# Uncomment to launch something if a choice was made
|
||||
# if [[ -n "$choice" ]]; then
|
||||
# Restart Waybar
|
||||
# fi
|
||||
8
config/hypr/scripts/Waybar.sh
Normal file
@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG="$HOME/.config/hypr/waybar/config"
|
||||
STYLE="$HOME/.config/hypr/waybar/style.css"
|
||||
|
||||
if [[ ! $(pidof waybar) ]]; then
|
||||
waybar --bar main-bar --log-level error --config ${CONFIG} --style ${STYLE}
|
||||
fi
|
||||
38
config/hypr/scripts/WaybarStyles.sh
Normal file
@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Check which waybar theme is set
|
||||
THEMEIS=$(realpath ~/.config/hypr/waybar/style.css | sed 's/.*-\(.*\)\.css/\1/')
|
||||
|
||||
# Change theme
|
||||
if [ "$THEMEIS" == "default" ]; then
|
||||
SWITCHTO="-b&w"
|
||||
elif [ "$THEMEIS" == "b&w" ]; then
|
||||
SWITCHTO="-rgb"
|
||||
elif [ "$THEMEIS" == "rgb" ]; then
|
||||
SWITCHTO="-default_alter"
|
||||
elif [ "$THEMEIS" == "default_alter" ]; then
|
||||
SWITCHTO="-mauve"
|
||||
elif [ "$THEMEIS" == "mauve" ]; then
|
||||
SWITCHTO="-light"
|
||||
elif [ "$THEMEIS" == "light" ]; then
|
||||
SWITCHTO="-dark"
|
||||
else
|
||||
SWITCHTO="-default"
|
||||
fi
|
||||
|
||||
# Set the waybar theme
|
||||
THEMEFILE="$HOME/.config/hypr/waybar/style/style${SWITCHTO}.css"
|
||||
if [ -f "$THEMEFILE" ]; then
|
||||
ln -sf "$THEMEFILE" "$HOME/.config/hypr/waybar/style.css"
|
||||
|
||||
else
|
||||
echo "Error: $THEMEFILE not found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Restart waybar
|
||||
killall waybar
|
||||
exec ~/.config/hypr/scripts/Waybar.sh
|
||||
|
||||
|
||||
|
||||
120
config/hypr/scripts/Weather.py
Normal file
@ -0,0 +1,120 @@
|
||||
#!/usr/bin/env python
|
||||
# From https://raw.githubusercontent.com/rxyhn/dotfiles/main/home/rxyhn/modules/desktop/waybar/scripts/waybar-wttr.py
|
||||
|
||||
import json
|
||||
import requests
|
||||
from datetime import datetime
|
||||
|
||||
WEATHER_CODES = {
|
||||
'113': '☀️',
|
||||
'116': '⛅',
|
||||
'119': '☁️',
|
||||
'122': '☁️',
|
||||
'143': '☁️',
|
||||
'176': '🌧️',
|
||||
'179': '🌧️',
|
||||
'182': '🌧️',
|
||||
'185': '🌧️',
|
||||
'200': '⛈️',
|
||||
'227': '🌨️',
|
||||
'230': '🌨️',
|
||||
'248': '☁️ ',
|
||||
'260': '☁️',
|
||||
'263': '🌧️',
|
||||
'266': '🌧️',
|
||||
'281': '🌧️',
|
||||
'284': '🌧️',
|
||||
'293': '🌧️',
|
||||
'296': '🌧️',
|
||||
'299': '🌧️',
|
||||
'302': '🌧️',
|
||||
'305': '🌧️',
|
||||
'308': '🌧️',
|
||||
'311': '🌧️',
|
||||
'314': '🌧️',
|
||||
'317': '🌧️',
|
||||
'320': '🌨️',
|
||||
'323': '🌨️',
|
||||
'326': '🌨️',
|
||||
'329': '❄️',
|
||||
'332': '❄️',
|
||||
'335': '❄️',
|
||||
'338': '❄️',
|
||||
'350': '🌧️',
|
||||
'353': '🌧️',
|
||||
'356': '🌧️',
|
||||
'359': '🌧️',
|
||||
'362': '🌧️',
|
||||
'365': '🌧️',
|
||||
'368': '🌧️',
|
||||
'371': '❄️',
|
||||
'374': '🌨️',
|
||||
'377': '🌨️',
|
||||
'386': '🌨️',
|
||||
'389': '🌨️',
|
||||
'392': '🌧️',
|
||||
'395': '❄️'
|
||||
}
|
||||
|
||||
data = {}
|
||||
|
||||
|
||||
weather = requests.get("https://wttr.in/?format=j1").json()
|
||||
|
||||
|
||||
def format_time(time):
|
||||
return time.replace("00", "").zfill(2)
|
||||
|
||||
|
||||
def format_temp(temp):
|
||||
return (hour['FeelsLikeC']+"°").ljust(3)
|
||||
|
||||
|
||||
def format_chances(hour):
|
||||
chances = {
|
||||
"chanceoffog": "Fog",
|
||||
"chanceoffrost": "Frost",
|
||||
"chanceofovercast": "Overcast",
|
||||
"chanceofrain": "Rain",
|
||||
"chanceofsnow": "Snow",
|
||||
"chanceofsunshine": "Sunshine",
|
||||
"chanceofthunder": "Thunder",
|
||||
"chanceofwindy": "Wind"
|
||||
}
|
||||
|
||||
conditions = []
|
||||
for event in chances.keys():
|
||||
if int(hour[event]) > 0:
|
||||
conditions.append(chances[event]+" "+hour[event]+"%")
|
||||
return ", ".join(conditions)
|
||||
|
||||
tempint = int(weather['current_condition'][0]['FeelsLikeC'])
|
||||
extrachar = ''
|
||||
if tempint > 0 and tempint < 10:
|
||||
extrachar = '+'
|
||||
|
||||
|
||||
data['text'] = ' '+WEATHER_CODES[weather['current_condition'][0]['weatherCode']] + \
|
||||
" "+extrachar+weather['current_condition'][0]['FeelsLikeC']+"°"
|
||||
|
||||
data['tooltip'] = f"<b>{weather['current_condition'][0]['weatherDesc'][0]['value']} {weather['current_condition'][0]['temp_C']}°</b>\n"
|
||||
data['tooltip'] += f"Feels like: {weather['current_condition'][0]['FeelsLikeC']}°\n"
|
||||
data['tooltip'] += f"Wind: {weather['current_condition'][0]['windspeedKmph']}Km/h\n"
|
||||
data['tooltip'] += f"Humidity: {weather['current_condition'][0]['humidity']}%\n"
|
||||
for i, day in enumerate(weather['weather']):
|
||||
data['tooltip'] += f"\n<b>"
|
||||
if i == 0:
|
||||
data['tooltip'] += "Today, "
|
||||
if i == 1:
|
||||
data['tooltip'] += "Tomorrow, "
|
||||
data['tooltip'] += f"{day['date']}</b>\n"
|
||||
data['tooltip'] += f"⬆️{day['maxtempC']}° ⬇️{day['mintempC']}° "
|
||||
data['tooltip'] += f"🌅{day['astronomy'][0]['sunrise']} 🌇{day['astronomy'][0]['sunset']}\n"
|
||||
for hour in day['hourly']:
|
||||
if i == 0:
|
||||
if int(format_time(hour['time'])) < datetime.now().hour-2:
|
||||
continue
|
||||
data['tooltip'] += f"{format_time(hour['time'])} {WEATHER_CODES[hour['weatherCode']]} {format_temp(hour['FeelsLikeC'])} {hour['weatherDesc'][0]['value']}, {format_chances(hour)}\n"
|
||||
|
||||
|
||||
print(json.dumps(data))
|
||||
79
config/hypr/scripts/Weather.sh
Normal file
@ -0,0 +1,79 @@
|
||||
#!/bin/bash
|
||||
|
||||
cachedir=~/.cache/rbn
|
||||
cachefile=${0##*/}-$1
|
||||
|
||||
if [ ! -d $cachedir ]; then
|
||||
mkdir -p $cachedir
|
||||
fi
|
||||
|
||||
if [ ! -f $cachedir/$cachefile ]; then
|
||||
touch $cachedir/$cachefile
|
||||
fi
|
||||
|
||||
# Save current IFS
|
||||
SAVEIFS=$IFS
|
||||
# Change IFS to new line.
|
||||
IFS=$'\n'
|
||||
|
||||
cacheage=$(($(date +%s) - $(stat -c '%Y' "$cachedir/$cachefile")))
|
||||
if [ $cacheage -gt 1740 ] || [ ! -s $cachedir/$cachefile ]; then
|
||||
data=($(curl -s https://en.wttr.in/$1\?0qnT 2>&1))
|
||||
echo ${data[0]} | cut -f1 -d, > $cachedir/$cachefile
|
||||
echo ${data[1]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile
|
||||
echo ${data[2]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile
|
||||
fi
|
||||
|
||||
weather=($(cat $cachedir/$cachefile))
|
||||
|
||||
# Restore IFSClear
|
||||
IFS=$SAVEIFS
|
||||
|
||||
temperature=$(echo ${weather[2]} | sed -E 's/([[:digit:]]+)\.\./\1 to /g')
|
||||
|
||||
#echo ${weather[1]##*,}
|
||||
|
||||
# https://fontawesome.com/icons?s=solid&c=weather
|
||||
case $(echo ${weather[1]##*,} | tr '[:upper:]' '[:lower:]') in
|
||||
"clear" | "sunny")
|
||||
condition=""
|
||||
;;
|
||||
"partly cloudy")
|
||||
condition=""
|
||||
;;
|
||||
"cloudy")
|
||||
condition=""
|
||||
;;
|
||||
"overcast")
|
||||
condition=""
|
||||
;;
|
||||
"fog" | "freezing fog")
|
||||
condition=""
|
||||
;;
|
||||
"patchy rain possible" | "patchy light drizzle" | "light drizzle" | "patchy light rain" | "light rain" | "light rain shower" | "mist" | "rain")
|
||||
condition=""
|
||||
;;
|
||||
"moderate rain at times" | "moderate rain" | "heavy rain at times" | "heavy rain" | "moderate or heavy rain shower" | "torrential rain shower" | "rain shower")
|
||||
condition=""
|
||||
;;
|
||||
"patchy snow possible" | "patchy sleet possible" | "patchy freezing drizzle possible" | "freezing drizzle" | "heavy freezing drizzle" | "light freezing rain" | "moderate or heavy freezing rain" | "light sleet" | "ice pellets" | "light sleet showers" | "moderate or heavy sleet showers")
|
||||
condition=""
|
||||
;;
|
||||
"blowing snow" | "moderate or heavy sleet" | "patchy light snow" | "light snow" | "light snow showers")
|
||||
condition=""
|
||||
;;
|
||||
"blizzard" | "patchy moderate snow" | "moderate snow" | "patchy heavy snow" | "heavy snow" | "moderate or heavy snow with thunder" | "moderate or heavy snow showers")
|
||||
condition=""
|
||||
;;
|
||||
"thundery outbreaks possible" | "patchy light rain with thunder" | "moderate or heavy rain with thunder" | "patchy light snow with thunder")
|
||||
condition=""
|
||||
;;
|
||||
*)
|
||||
condition=""
|
||||
echo -e "{\"text\":\""$condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}"
|
||||
;;
|
||||
esac
|
||||
|
||||
#echo $temp $condition
|
||||
|
||||
echo -e "{\"text\":\""$temperature $condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}"
|
||||
11
config/hypr/scripts/Wofi.sh
Normal file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG="$HOME/.config/hypr/wofi/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
|
||||
if [[ ! $(pidof wofi) ]]; then
|
||||
wofi --show drun --prompt 'Search...' --conf ${CONFIG} --style ${STYLE} --color ${COLORS}
|
||||
else
|
||||
pkill wofi
|
||||
fi
|
||||
90
config/hypr/scripts/WofiBeats.sh
Normal file
@ -0,0 +1,90 @@
|
||||
#!/bin/bash
|
||||
|
||||
## Files
|
||||
CONFIG="$HOME/.config/hypr/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
iDIR="$HOME/.config/hypr/dunst/icons"
|
||||
|
||||
|
||||
# wofi window config (in %)
|
||||
WIDTH=20
|
||||
HEIGHT=40
|
||||
|
||||
## Wofi Command
|
||||
wofi_command="wofi --show dmenu \
|
||||
--prompt choose...
|
||||
--conf $CONFIG --style $STYLE --color $COLORS \
|
||||
--width=$WIDTH% --height=$HEIGHT% \
|
||||
--cache-file=/dev/null \
|
||||
--hide-scroll --no-actions \
|
||||
--matching=fuzzy"
|
||||
|
||||
|
||||
notification(){
|
||||
notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/music.png" "Now Playing: Online Music"
|
||||
}
|
||||
|
||||
menu(){
|
||||
printf "1. Lofi Girl\n"
|
||||
printf "2. 96.3 Easy Rock - FM Radio\n"
|
||||
printf "3. Box Lofi\n"
|
||||
printf "4. Top Music 2023\n"
|
||||
printf "5. Youtube Global Top 100\n"
|
||||
printf "6. SmoothChill\n"
|
||||
printf "7. Relaxing Music\n"
|
||||
printf "8. Youtube Remix\n"
|
||||
printf "9. K-Drama-OST2"
|
||||
}
|
||||
main() {
|
||||
choice=$(menu | ${wofi_command} | cut -d. -f1)
|
||||
case $choice in
|
||||
1)
|
||||
notification
|
||||
mpv "https://play.streamafrica.net/lofiradio"
|
||||
return
|
||||
;;
|
||||
2)
|
||||
notification
|
||||
mpv "https://tunein.com/radio/Easy-Rock-Manila-963-s120725/"
|
||||
return
|
||||
;;
|
||||
3)
|
||||
notification
|
||||
mpv "http://stream.zeno.fm/f3wvbbqmdg8uv"
|
||||
return
|
||||
;;
|
||||
4)
|
||||
notification ;
|
||||
mpv --shuffle --vid=no "https://youtube.com/playlist?list=PL6k9a6aYB2zk0qSbXR-ZEiwqgdHymsRtQ"
|
||||
return
|
||||
;;
|
||||
5)
|
||||
notification ;
|
||||
mpv --shuffle --vid=no "https://youtube.com/playlist?list=PL4fGSI1pDJn5kI81J1fYWK5eZRl1zJ5kM"
|
||||
return
|
||||
;;
|
||||
6)
|
||||
notification ;
|
||||
mpv "https://media-ssl.musicradio.com/SmoothChill"
|
||||
return
|
||||
;;
|
||||
7)
|
||||
notification ;
|
||||
mpv --shuffle --vid=no "https://youtube.com/playlist?list=PLMIbmfP_9vb8BCxRoraJpoo4q1yMFg4CE"
|
||||
return
|
||||
;;
|
||||
8)
|
||||
notification ;
|
||||
mpv --shuffle --vid=no "https://youtube.com/playlist?list=PLeqTkIUlrZXlSNn3tcXAa-zbo95j0iN-0"
|
||||
return
|
||||
;;
|
||||
9)
|
||||
notification ;
|
||||
mpv --shuffle --vid=no "https://youtube.com/playlist?list=PLUge_o9AIFp4HuA-A3e3ZqENh63LuRRlQ"
|
||||
return
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
pkill -f http && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/music.png" "Online Music stopped" || main
|
||||
11
config/hypr/scripts/WofiBig.sh
Normal file
@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
CONFIG="$HOME/.config/hypr/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
|
||||
if [[ ! $(pidof wofi) ]]; then
|
||||
wofi --show drun --prompt 'Search...' --conf ${CONFIG} --style ${STYLE} --color ${COLORS}
|
||||
else
|
||||
pkill wofi
|
||||
fi
|
||||
1868
config/hypr/scripts/WofiEmoji.sh
Executable file
32
config/hypr/scripts/WofiPower.sh
Executable file
@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# WOFI STYLES
|
||||
CONFIG="$HOME/.config/hypr/wofi/WofiBig/config"
|
||||
STYLE="$HOME/.config/hypr/wofi/style.css"
|
||||
COLORS="$HOME/.config/hypr/wofi/colors"
|
||||
|
||||
# Wofi window config (in %)
|
||||
WOFI_WIDTH=28
|
||||
WOFI_HEIGHT=8
|
||||
|
||||
wofi_command="wofi --show dmenu \
|
||||
--prompt choose... \
|
||||
--conf $CONFIG --style $STYLE --color $COLORS \
|
||||
--width=$WOFI_WIDTH% --height=$WOFI_HEIGHT% \
|
||||
--cache-file=/dev/null \
|
||||
--hide-scroll --no-actions \
|
||||
--matching=fuzzy"
|
||||
|
||||
entries=$(echo -e " Poweroff\n Reboot\n Suspend\n Lock\n Logout" | $wofi_command -i --dmenu | awk '{print tolower($2)}')
|
||||
|
||||
case $entries in
|
||||
poweroff|reboot|suspend)
|
||||
systemctl $entries
|
||||
;;
|
||||
lock)
|
||||
$HOME/.config/hypr/scripts/LockScreen.sh
|
||||
;;
|
||||
logout)
|
||||
hyprctl dispatch exit 0
|
||||
;;
|
||||
esac
|
||||
44
config/hypr/swaylock/config
Normal file
@ -0,0 +1,44 @@
|
||||
daemonize
|
||||
show-failed-attempts
|
||||
clock
|
||||
screenshot
|
||||
effect-blur=9x5
|
||||
effect-vignette=0.5:0.5
|
||||
color=1f1d2e80
|
||||
font="Inter"
|
||||
indicator
|
||||
indicator-radius=200
|
||||
indicator-thickness=20
|
||||
line-color=1f1d2e
|
||||
ring-color=191724
|
||||
inside-color=1f1d2e
|
||||
key-hl-color=eb6f92
|
||||
separator-color=00000000
|
||||
text-color=e0def4
|
||||
text-caps-lock-color=""
|
||||
line-ver-color=eb6f92
|
||||
ring-ver-color=eb6f92
|
||||
inside-ver-color=1f1d2e
|
||||
text-ver-color=e0def4
|
||||
ring-wrong-color=31748f
|
||||
text-wrong-color=31748f
|
||||
inside-wrong-color=1f1d2e
|
||||
inside-clear-color=1f1d2e
|
||||
text-clear-color=e0def4
|
||||
ring-clear-color=9ccfd8
|
||||
line-clear-color=1f1d2e
|
||||
line-wrong-color=1f1d2e
|
||||
bs-hl-color=31748f
|
||||
grace=1
|
||||
grace-no-mouse
|
||||
grace-no-touch
|
||||
fade-in=0.2
|
||||
ignore-empty-password
|
||||
|
||||
# AM/PM formats (American Format)
|
||||
#datestr=%a, %B %e
|
||||
#timestr=%I:%M %p
|
||||
|
||||
#24 HRS clock format and standard Europe Date Format
|
||||
timestr=%H:%M:%S
|
||||
datestr=%d %B, %a
|
||||
61
config/hypr/themes/frappe.conf
Normal file
@ -0,0 +1,61 @@
|
||||
$rosewaterAlpha = fff5e0dc
|
||||
$flamingoAlpha = fff2cdcd
|
||||
$pinkAlpha = fff5c2e7
|
||||
$mauveAlpha = ffcba6f7
|
||||
$redAlpha = fff38ba8
|
||||
$maroonAlpha = ffeba0ac
|
||||
$peachAlpha = fffab387
|
||||
$yellowAlpha = fff9e2af
|
||||
$greenAlpha = ffa6e3a1
|
||||
$tealAlpha = ff94e2d5
|
||||
$skyAlpha = ff89dceb
|
||||
$sapphireAlpha = ff74c7ec
|
||||
$blueAlpha = ff89b4fa
|
||||
$lavenderAlpha = ffb4befe
|
||||
|
||||
$textAlpha = ffcdd6f4
|
||||
$subtext1Alpha = ffbac2de
|
||||
$subtext0Alpha = ffa6adc8
|
||||
|
||||
$overlay2Alpha = ff9399b2
|
||||
$overlay1Alpha = ff7f849c
|
||||
$overlay0Alpha = ff6c7086
|
||||
|
||||
$surface2Alpha = ff585b70
|
||||
$surface1Alpha = ff45475a
|
||||
$surface0Alpha = ff313244
|
||||
|
||||
$baseAlpha = ff1e1e2e
|
||||
$mantleAlpha = ff181825
|
||||
$crustAlpha = ff11111b
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
||||
61
config/hypr/themes/latte.conf
Normal file
@ -0,0 +1,61 @@
|
||||
$rosewaterAlpha = fff5e0dc
|
||||
$flamingoAlpha = fff2cdcd
|
||||
$pinkAlpha = fff5c2e7
|
||||
$mauveAlpha = ffcba6f7
|
||||
$redAlpha = fff38ba8
|
||||
$maroonAlpha = ffeba0ac
|
||||
$peachAlpha = fffab387
|
||||
$yellowAlpha = fff9e2af
|
||||
$greenAlpha = ffa6e3a1
|
||||
$tealAlpha = ff94e2d5
|
||||
$skyAlpha = ff89dceb
|
||||
$sapphireAlpha = ff74c7ec
|
||||
$blueAlpha = ff89b4fa
|
||||
$lavenderAlpha = ffb4befe
|
||||
|
||||
$textAlpha = ffcdd6f4
|
||||
$subtext1Alpha = ffbac2de
|
||||
$subtext0Alpha = ffa6adc8
|
||||
|
||||
$overlay2Alpha = ff9399b2
|
||||
$overlay1Alpha = ff7f849c
|
||||
$overlay0Alpha = ff6c7086
|
||||
|
||||
$surface2Alpha = ff585b70
|
||||
$surface1Alpha = ff45475a
|
||||
$surface0Alpha = ff313244
|
||||
|
||||
$baseAlpha = ff1e1e2e
|
||||
$mantleAlpha = ff181825
|
||||
$crustAlpha = ff11111b
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
||||
61
config/hypr/themes/macchiato.conf
Normal file
@ -0,0 +1,61 @@
|
||||
$rosewaterAlpha = fff5e0dc
|
||||
$flamingoAlpha = fff2cdcd
|
||||
$pinkAlpha = fff5c2e7
|
||||
$mauveAlpha = ffcba6f7
|
||||
$redAlpha = fff38ba8
|
||||
$maroonAlpha = ffeba0ac
|
||||
$peachAlpha = fffab387
|
||||
$yellowAlpha = fff9e2af
|
||||
$greenAlpha = ffa6e3a1
|
||||
$tealAlpha = ff94e2d5
|
||||
$skyAlpha = ff89dceb
|
||||
$sapphireAlpha = ff74c7ec
|
||||
$blueAlpha = ff89b4fa
|
||||
$lavenderAlpha = ffb4befe
|
||||
|
||||
$textAlpha = ffcdd6f4
|
||||
$subtext1Alpha = ffbac2de
|
||||
$subtext0Alpha = ffa6adc8
|
||||
|
||||
$overlay2Alpha = ff9399b2
|
||||
$overlay1Alpha = ff7f849c
|
||||
$overlay0Alpha = ff6c7086
|
||||
|
||||
$surface2Alpha = ff585b70
|
||||
$surface1Alpha = ff45475a
|
||||
$surface0Alpha = ff313244
|
||||
|
||||
$baseAlpha = ff1e1e2e
|
||||
$mantleAlpha = ff181825
|
||||
$crustAlpha = ff11111b
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
||||
61
config/hypr/themes/mocha.conf
Normal file
@ -0,0 +1,61 @@
|
||||
$rosewaterAlpha = fff5e0dc
|
||||
$flamingoAlpha = fff2cdcd
|
||||
$pinkAlpha = fff5c2e7
|
||||
$mauveAlpha = ffcba6f7
|
||||
$redAlpha = fff38ba8
|
||||
$maroonAlpha = ffeba0ac
|
||||
$peachAlpha = fffab387
|
||||
$yellowAlpha = fff9e2af
|
||||
$greenAlpha = ffa6e3a1
|
||||
$tealAlpha = ff94e2d5
|
||||
$skyAlpha = ff89dceb
|
||||
$sapphireAlpha = ff74c7ec
|
||||
$blueAlpha = ff89b4fa
|
||||
$lavenderAlpha = ffb4befe
|
||||
|
||||
$textAlpha = ffcdd6f4
|
||||
$subtext1Alpha = ffbac2de
|
||||
$subtext0Alpha = ffa6adc8
|
||||
|
||||
$overlay2Alpha = ff9399b2
|
||||
$overlay1Alpha = ff7f849c
|
||||
$overlay0Alpha = ff6c7086
|
||||
|
||||
$surface2Alpha = ff585b70
|
||||
$surface1Alpha = ff45475a
|
||||
$surface0Alpha = ff313244
|
||||
|
||||
$baseAlpha = ff1e1e2e
|
||||
$mantleAlpha = ff181825
|
||||
$crustAlpha = ff11111b
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
||||
0
config/hypr/waybar/config
Normal file
44
config/hypr/waybar/configs/config-default
Normal file
@ -0,0 +1,44 @@
|
||||
{
|
||||
|
||||
"include": "~/.config/hypr/waybar/modules",
|
||||
"layer": "top",
|
||||
//"mode": "dock",
|
||||
"exclusive": true,
|
||||
"passthrough": false,
|
||||
"position": "top",
|
||||
"spacing": 3,
|
||||
"fixed-center": true,
|
||||
"ipc": true,
|
||||
"margin-top": 6,
|
||||
"margin-left": 8,
|
||||
"margin-right": 8,
|
||||
|
||||
"modules-left": [
|
||||
"hyprland/workspaces",
|
||||
"cpu",
|
||||
"temperature",
|
||||
"memory",
|
||||
"custom/weather",
|
||||
],
|
||||
|
||||
"modules-center": [
|
||||
"custom/menu",
|
||||
"idle_inhibitor",
|
||||
"clock",
|
||||
"custom/light_dark",
|
||||
"custom/lock",
|
||||
],
|
||||
|
||||
"modules-right": [
|
||||
//"hyprland/window",
|
||||
"tray",
|
||||
"cava",
|
||||
"battery",
|
||||
"backlight",
|
||||
"pulseaudio",
|
||||
//"wireplumber",
|
||||
"pulseaudio#microphone",
|
||||
"keyboard-state",
|
||||
"custom/power",
|
||||
],
|
||||
}
|
||||
74
config/hypr/waybar/configs/config-dual
Normal file
@ -0,0 +1,74 @@
|
||||
[{
|
||||
"include": "~/.config/hypr/waybar/modules",
|
||||
"layer": "top",
|
||||
//"mode": "dock",
|
||||
"exclusive": true,
|
||||
"passthrough": false,
|
||||
"position": "top",
|
||||
"spacing": 3,
|
||||
"fixed-center": true,
|
||||
"ipc": true,
|
||||
"margin-left": 6,
|
||||
"margin-right": 10,
|
||||
"margin-top": 10,
|
||||
|
||||
"modules-left": [
|
||||
"hyprland/workspaces",
|
||||
"cpu",
|
||||
"temperature",
|
||||
"memory",
|
||||
"disk",
|
||||
],
|
||||
|
||||
"modules-center": [
|
||||
"idle_inhibitor",
|
||||
"clock",
|
||||
"custom/light_dark",
|
||||
],
|
||||
|
||||
"modules-right": [
|
||||
"custom/weather",
|
||||
"battery",
|
||||
"backlight",
|
||||
"bluetooth",
|
||||
"network",
|
||||
"custom/updater",
|
||||
"custom/cycle_wall",
|
||||
"custom/lock",
|
||||
],
|
||||
},
|
||||
|
||||
{
|
||||
"include": "~/.config/hypr/waybar/modules",
|
||||
"layer": "top",
|
||||
"mode": "dock",
|
||||
"exclusive": true,
|
||||
"passthrough": false,
|
||||
"position": "bottom",
|
||||
"spacing": 3,
|
||||
"fixed-center": true,
|
||||
"ipc": true,
|
||||
"margin-left": 6,
|
||||
"margin-right": 10,
|
||||
"margin-bottom": 6,
|
||||
|
||||
"modules-left": [
|
||||
"custom/menu",
|
||||
"wlr/taskbar",
|
||||
],
|
||||
|
||||
"modules-center": [
|
||||
"cava",
|
||||
],
|
||||
|
||||
"modules-right": [
|
||||
"hyprland/window",
|
||||
"tray",
|
||||
"keyboard-state",
|
||||
"pulseaudio",
|
||||
//"wireplumber",
|
||||
"pulseaudio#microphone",
|
||||
"custom/power",
|
||||
],
|
||||
|
||||
}]
|
||||
46
config/hypr/waybar/configs/config-gnome
Normal file
@ -0,0 +1,46 @@
|
||||
{
|
||||
|
||||
"include": "~/.config/hypr/waybar/modules",
|
||||
"layer": "top",
|
||||
//"mode": "dock",
|
||||
"exclusive": true,
|
||||
"passthrough": false,
|
||||
"position": "top",
|
||||
"spacing": 3,
|
||||
"fixed-center": true,
|
||||
"ipc": true,
|
||||
"margin-left": 10,
|
||||
"margin-right": 10,
|
||||
"margin-top": 6,
|
||||
|
||||
"modules-left": [
|
||||
"custom/menu",
|
||||
"hyprland/workspaces",
|
||||
"custom/updater",
|
||||
"hyprland/window",
|
||||
],
|
||||
|
||||
"modules-center": [
|
||||
"clock",
|
||||
"custom/light_dark",
|
||||
"cava",
|
||||
"custom/weather",
|
||||
],
|
||||
|
||||
"modules-right": [
|
||||
"tray",
|
||||
"network",
|
||||
"bluetooth",
|
||||
"cpu",
|
||||
"temperature",
|
||||
"memory",
|
||||
"battery",
|
||||
"backlight",
|
||||
"keyboard-state",
|
||||
"pulseaudio",
|
||||
//"wireplumber",
|
||||
"pulseaudio#microphone",
|
||||
"custom/cycle_wall",
|
||||
"custom/power",
|
||||
],
|
||||
}
|
||||