Compare commits
37 Commits
main
...
e9623a96b0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9623a96b0 | ||
|
|
75b43f669d | ||
|
|
64592c7af5 | ||
|
|
596f28512d | ||
|
|
a4b8af382a | ||
|
|
83212ea9f2 | ||
|
|
16ab7006c6 | ||
|
|
07795b9f04 | ||
|
|
07dfd8687a | ||
|
|
f81fb6d3fe | ||
|
|
d2a3fa082e | ||
|
|
e0487c8e2e | ||
|
|
fa1928af8d | ||
|
|
049c76c04a | ||
|
|
c375986e05 | ||
|
|
a18be1d18c | ||
|
|
5045102b6b | ||
|
|
9b0bdd7fc6 | ||
|
|
80e6cc23c3 | ||
|
|
aa1364ef29 | ||
|
|
32bf8c73a8 | ||
|
|
39000ec304 | ||
|
|
a3de598466 | ||
|
|
4915a1fce2 | ||
|
|
58773ba594 | ||
|
|
7b0d1bf03a | ||
|
|
fc1478567e | ||
|
|
44a425d2df | ||
|
|
16ca912724 | ||
|
|
babbceb247 | ||
|
|
f4d92f747e | ||
|
|
ca92392993 | ||
|
|
8a6e022bd6 | ||
|
|
366ea24fb5 | ||
|
|
385d306017 | ||
|
|
dd7498294a | ||
|
|
cd1a6c1252 |
12
README.md
12
README.md
@@ -13,7 +13,7 @@ Each directory in this repository corresponds to a specific application or tool,
|
|||||||
> ```bash
|
> ```bash
|
||||||
> stow bash
|
> stow bash
|
||||||
> stow i3
|
> stow i3
|
||||||
> stow emacs
|
> stow doom
|
||||||
> ```
|
> ```
|
||||||
|
|
||||||
### 🧩 Included Tools & Configurations
|
### 🧩 Included Tools & Configurations
|
||||||
@@ -24,17 +24,16 @@ This repository contains my configuration files for the following tools:
|
|||||||
- `bash` (Oh My Bash)
|
- `bash` (Oh My Bash)
|
||||||
- `starship`
|
- `starship`
|
||||||
- **Terminal Emulators & Multiplexer**
|
- **Terminal Emulators & Multiplexer**
|
||||||
- `xfce4-terminal`
|
|
||||||
- `alacritty`
|
- `alacritty`
|
||||||
- `kitty`
|
|
||||||
- `foot`
|
|
||||||
- `tmux`
|
- `tmux`
|
||||||
- **Editors & CLI Tools**
|
- **Editors & CLI Tools**
|
||||||
- `emacs`
|
- `doom` (Doom Emacs config)
|
||||||
|
- `emacs` (Custom config)
|
||||||
- `git`
|
- `git`
|
||||||
- **X11 Environment**
|
- **X11 Environment**
|
||||||
- `xfce4` (Desktop Environment)
|
|
||||||
- `i3` (Window Manager)
|
- `i3` (Window Manager)
|
||||||
|
- `picom` (X11 compositor)
|
||||||
|
- `polybar` (status bar)
|
||||||
- `rofi` (launcher)
|
- `rofi` (launcher)
|
||||||
- `dunst` (notification daemon)
|
- `dunst` (notification daemon)
|
||||||
- **Wayland Environment**
|
- **Wayland Environment**
|
||||||
@@ -44,6 +43,7 @@ This repository contains my configuration files for the following tools:
|
|||||||
- `dunst` (notification daemon)
|
- `dunst` (notification daemon)
|
||||||
- **Utilities**
|
- **Utilities**
|
||||||
- `fastfetch`
|
- `fastfetch`
|
||||||
|
- `zoxide`
|
||||||
- `yt-dlp`
|
- `yt-dlp`
|
||||||
- `flameshot`
|
- `flameshot`
|
||||||
|
|
||||||
|
|||||||
@@ -187,6 +187,9 @@ alias paths='echo -e ${PATH//:/\\n}' # path: Echo all executable Paths
|
|||||||
alias userlist="cut -d: -f1 /etc/passwd | sort"
|
alias userlist="cut -d: -f1 /etc/passwd | sort"
|
||||||
alias ip='ip -color'
|
alias ip='ip -color'
|
||||||
alias stow='stow -d $DOTFILES '
|
alias stow='stow -d $DOTFILES '
|
||||||
|
alias em='emacsclient -t'
|
||||||
|
alias ssh='ssh.exe'
|
||||||
|
alias ssh-add='ssh-add.exe'
|
||||||
|
|
||||||
# User specific aliases and functions
|
# User specific aliases and functions
|
||||||
if [ -d ~/.bashrc.d ]; then
|
if [ -d ~/.bashrc.d ]; then
|
||||||
|
|||||||
5
bash/.bashrc.d/cargo.sh
Executable file
5
bash/.bashrc.d/cargo.sh
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if [ -e "$HOME/.cargo" ]; then
|
||||||
|
source "$HOME/.cargo/env"
|
||||||
|
fi
|
||||||
6
bash/.bashrc.d/java.sh
Executable file
6
bash/.bashrc.d/java.sh
Executable file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if command -v java > /dev/null 2>&1; then
|
||||||
|
JAVA_HOME="$(dirname $(mise bin-paths | grep -i java))"
|
||||||
|
export JAVA_HOME
|
||||||
|
fi
|
||||||
@@ -3,9 +3,4 @@
|
|||||||
# Load Mise en dev
|
# Load Mise en dev
|
||||||
if command -v mise > /dev/null 2>&1; then
|
if command -v mise > /dev/null 2>&1; then
|
||||||
eval "$(mise activate bash)"
|
eval "$(mise activate bash)"
|
||||||
|
|
||||||
if mise ls | grep -i java; then
|
|
||||||
JAVA_HOME="$(dirname $(mise bin-paths | grep -i java))"
|
|
||||||
export JAVA_HOME
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
if command -v zoxide >/dev/null 2>&1; then
|
if command -v /home/linuxbrew/.linuxbrew/bin/zoxide >/dev/null 2>&1; then
|
||||||
eval "$(zoxide init bash)"
|
eval "$(/home/linuxbrew/.linuxbrew/bin/zoxide init bash)"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -15,10 +15,10 @@ export QT_STYLE_OVERRIDE=kvantum
|
|||||||
export QT_AUTO_SCREEN_SCALE_FACTOR=1
|
export QT_AUTO_SCREEN_SCALE_FACTOR=1
|
||||||
|
|
||||||
export DOTFILES="$HOME/.dotfiles"
|
export DOTFILES="$HOME/.dotfiles"
|
||||||
export EDITOR=vim
|
export EDITOR=nano
|
||||||
|
|
||||||
# SSH socket
|
# SSH socket
|
||||||
#export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/gcr/ssh"
|
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/gcr/ssh"
|
||||||
|
|
||||||
# export FZF_DEFAULT_COMMAND="fdfind --hidden --type file --strip-cwd-prefix --exclude .git"
|
# export FZF_DEFAULT_COMMAND="fdfind --hidden --type file --strip-cwd-prefix --exclude .git"
|
||||||
# export FZF_CTRL_T_COMMAND="fdfind --hidden --type file --strip-cwd-prefix --exclude .git"
|
# export FZF_CTRL_T_COMMAND="fdfind --hidden --type file --strip-cwd-prefix --exclude .git"
|
||||||
@@ -46,6 +46,8 @@ appendpath() {
|
|||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# appendpath "/home/linuxbrew/.linuxbrew/bin"
|
||||||
appendpath "$HOME/.local/bin"
|
appendpath "$HOME/.local/bin"
|
||||||
appendpath "$GOBIN"
|
appendpath "$GOBIN"
|
||||||
|
# appendpath "$HOME/.cargo/bin"
|
||||||
unset appendpath
|
unset appendpath
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
# for a list of all available themes
|
# for a list of all available themes
|
||||||
|
|
||||||
# Theme
|
# Theme
|
||||||
--theme="Coldark-Dark"
|
--theme="Catppuccin Mocha"
|
||||||
|
|
||||||
# Style
|
# Style
|
||||||
--style="header,changes,numbers"
|
--style="header,changes,numbers"
|
||||||
|
|||||||
156
doom/.config/doom/config.el
Normal file
156
doom/.config/doom/config.el
Normal file
@@ -0,0 +1,156 @@
|
|||||||
|
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
|
;; Place your private configuration here! Remember, you do not need to run 'doom
|
||||||
|
;; sync' after modifying this file!
|
||||||
|
|
||||||
|
|
||||||
|
;; Some functionality uses this to identify you, e.g. GPG configuration, email
|
||||||
|
;; clients, file templates and snippets. It is optional.
|
||||||
|
;; (setq user-full-name "John Doe"
|
||||||
|
;; user-mail-address "john@doe.com")
|
||||||
|
|
||||||
|
;; Doom exposes five (optional) variables for controlling fonts in Doom:
|
||||||
|
;;
|
||||||
|
;; - `doom-font' -- the primary font to use
|
||||||
|
;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable)
|
||||||
|
;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for
|
||||||
|
;; presentations or streaming.
|
||||||
|
;; - `doom-symbol-font' -- for symbols
|
||||||
|
;; - `doom-serif-font' -- for the `fixed-pitch-serif' face
|
||||||
|
;;
|
||||||
|
;; See 'C-h v doom-font' for documentation and more examples of what they
|
||||||
|
;; accept. For example:
|
||||||
|
;;
|
||||||
|
;;(setq doom-font (font-spec :family "Fira Code" :size 12 :weight 'semi-light)
|
||||||
|
;; doom-variable-pitch-font (font-spec :family "Fira Sans" :size 13))
|
||||||
|
;;
|
||||||
|
;; If you or Emacs can't find your font, use 'M-x describe-font' to look them
|
||||||
|
;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to
|
||||||
|
;; refresh your font settings. If Emacs still can't find your font, it likely
|
||||||
|
;; wasn't installed correctly. Font issues are rarely Doom issues!
|
||||||
|
(setq doom-font (font-spec :family "FiraCode Nerd Font" :size 16 :weight 'regular)
|
||||||
|
doom-big-font (font-spec :family "FiraCode Nerd Font" :size 18 :weight 'bold)
|
||||||
|
doom-variable-pitch-font (font-spec :family "Noto Sans" :size 16 :weight 'regular))
|
||||||
|
|
||||||
|
;; There are two ways to load a theme. Both assume the theme is installed and
|
||||||
|
;; available. You can either set `doom-theme' or manually load a theme with the
|
||||||
|
;; `load-theme' function. This is the default:
|
||||||
|
(setq doom-theme 'catppuccin)
|
||||||
|
|
||||||
|
;; This determines the style of line numbers in effect. If set to `nil', line
|
||||||
|
;; numbers are disabled. For relative line numbers, set this to `relative'.
|
||||||
|
(setq display-line-numbers-type t)
|
||||||
|
|
||||||
|
;; If you use `org' and don't want your org files in the default location below,
|
||||||
|
;; change `org-directory'. It must be set before org loads!
|
||||||
|
(setq org-directory "~/Remotes/pCloud/Org")
|
||||||
|
|
||||||
|
;; Whenever you reconfigure a package, make sure to wrap your config in an
|
||||||
|
;; `after!' block, otherwise Doom's defaults may override your settings. E.g.
|
||||||
|
;;
|
||||||
|
;; (after! PACKAGE
|
||||||
|
;; (setq x y))
|
||||||
|
;;
|
||||||
|
;; The exceptions to this rule:
|
||||||
|
;;
|
||||||
|
;; - Setting file/directory variables (like `org-directory')
|
||||||
|
;; - Setting variables which explicitly tell you to set them before their
|
||||||
|
;; package is loaded (see 'C-h v VARIABLE' to look up their documentation).
|
||||||
|
;; - Setting doom variables (which start with 'doom-' or '+').
|
||||||
|
;;
|
||||||
|
;; Here are some additional functions/macros that will help you configure Doom.
|
||||||
|
;;
|
||||||
|
;; - `load!' for loading external *.el files relative to this one
|
||||||
|
;; - `use-package!' for configuring packages
|
||||||
|
;; - `after!' for running code after a package has loaded
|
||||||
|
;; - `add-load-path!' for adding directories to the `load-path', relative to
|
||||||
|
;; this file. Emacs searches the `load-path' when you load packages with
|
||||||
|
;; `require' or `use-package'.
|
||||||
|
;; - `map!' for binding new keys
|
||||||
|
;;
|
||||||
|
;; To get information about any of these functions/macros, move the cursor over
|
||||||
|
;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
|
||||||
|
;; This will open documentation for it, including demos of how they are used.
|
||||||
|
;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces,
|
||||||
|
;; etc).
|
||||||
|
;;
|
||||||
|
;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
|
||||||
|
;; they are implemented.
|
||||||
|
|
||||||
|
;; Maximize each Emacs frames at startup
|
||||||
|
(add-to-list 'default-frame-alist '(fullscreen . maximized))
|
||||||
|
|
||||||
|
(after! mu4e
|
||||||
|
|
||||||
|
;; This is set to 't' to avoid mail syncing issues when using mbsync
|
||||||
|
(setq mu4e-change-filenames-when-moving t)
|
||||||
|
|
||||||
|
;; Refresh mail using isync every 10 minutes
|
||||||
|
(setq mu4e-update-interval (* 10 60))
|
||||||
|
(setq mu4e-get-mail-command "~/.config/doom/scripts/email_sync.sh")
|
||||||
|
(setq mu4e-maildir "~/Maildir")
|
||||||
|
|
||||||
|
;; Configure email accounts
|
||||||
|
(setq mu4e-contexts
|
||||||
|
(list
|
||||||
|
;; Protonmail Account
|
||||||
|
(make-mu4e-context
|
||||||
|
:name "Protonmail"
|
||||||
|
:match-func
|
||||||
|
(lambda (msg)
|
||||||
|
(when msg
|
||||||
|
(string-prefix-p "/ProtonMailAccount" (mu4e-message-field msg :maildir))))
|
||||||
|
:vars '((user-mail-address . "fscottodisantolo@protonmail.com")
|
||||||
|
(user-full-name . "Fabio Scotto di Santolo")
|
||||||
|
(mu4e-drafts-folder . "/ProtonMailAccount/Drafts")
|
||||||
|
(mu4e-sent-folder . "/ProtonMailAccount/Sent")
|
||||||
|
(mu4e-refile-folder . "/ProtonMailAccount/All Mail")
|
||||||
|
(mu4e-trash-folder . "/ProtonMailAccount/Trash")))
|
||||||
|
|
||||||
|
;; iCloud Account
|
||||||
|
(make-mu4e-context
|
||||||
|
:name "iCloud Mail"
|
||||||
|
:match-func
|
||||||
|
(lambda (msg)
|
||||||
|
(when msg
|
||||||
|
(string-prefix-p "/iCloudAccount" (mu4e-message-field msg :maildir))))
|
||||||
|
:vars '((user-mail-address . "fscottodisantolo@icloud.com")
|
||||||
|
(user-full-name . "Fabio Scotto di Santolo")
|
||||||
|
(mu4e-drafts-folder . "/iCloudAccount/Drafts")
|
||||||
|
(mu4e-sent-folder . "/iCloudAccount/Sent Messages")
|
||||||
|
(mu4e-refile-folder . "/iCloudAccount/INBOX")
|
||||||
|
(mu4e-trash-folder . "/iCloudAccount/Junk")))))
|
||||||
|
|
||||||
|
;; Configure SMTP client for send emails
|
||||||
|
(setq sendmail-program "/usr/bin/msmtp"
|
||||||
|
send-mail-function 'sendmail-send-it
|
||||||
|
message-sendmail-f-is-evil t
|
||||||
|
message-sendmail-extra-arguments '("--read-envelope-from")
|
||||||
|
message-send-mail-function 'message-send-mail-with-sendmail))
|
||||||
|
|
||||||
|
;; Configure Elfeed
|
||||||
|
(after! elfeed
|
||||||
|
(setq rmh-elfeed-org-files '("~/.config/doom/elfeed.org"))
|
||||||
|
(setq elfeed-db-directory "~/.elfeed")
|
||||||
|
(setq elfeed-enclosure-default-dir "~/Downloads/")
|
||||||
|
(setq elfeed-sort-order 'descending)
|
||||||
|
(setq elfeed-search-filter "6-months-ago +unread")
|
||||||
|
|
||||||
|
;; Key bindings
|
||||||
|
(map! :map elfeed-search-mode-map
|
||||||
|
:n "d" #'elfeed-download-current-entry
|
||||||
|
:n "O" #'elfeed-search-browse-url)
|
||||||
|
|
||||||
|
;; Update hourly
|
||||||
|
(run-at-time nil (* 60 60) #'elfeed-update))
|
||||||
|
|
||||||
|
(after! elfeed-tube
|
||||||
|
(elfeed-tube-setup))
|
||||||
|
|
||||||
|
;; PDF config
|
||||||
|
(after! pdf-tools
|
||||||
|
:defer t
|
||||||
|
:commands (pdf-loader-install)
|
||||||
|
:mode "\\.pdf\\'"
|
||||||
|
:init (pdf-loader-install)
|
||||||
|
:config (add-to-list 'revert-without-query ".pdf"))
|
||||||
21
doom/.config/doom/custom.el
Normal file
21
doom/.config/doom/custom.el
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
(custom-set-variables
|
||||||
|
;; custom-set-variables was added by Custom.
|
||||||
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
|
;; Your init file should contain only one such instance.
|
||||||
|
;; If there is more than one, they won't work right.
|
||||||
|
'(elfeed-feeds
|
||||||
|
'("https://www.youtube.com/feeds/videos.xml?channel_id=UCqZe2cxQNCvgkQxUuqsIaig" "https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg"
|
||||||
|
("https://www.youtube.com/feeds/videos.xml?channel_id=UCrqM0Ym_NbK1fqeQG2VIohg" youtube programming)
|
||||||
|
("https://www.youtube.com/feeds/videos.xml?channel_id=UCDDG9vOcmgwlslJJpCWjqOg" youtube programming)
|
||||||
|
("https://www.youtube.com/feeds/videos.xml?channel_id=UCnDDucQDLncrauOCmanCIgw" youtube foss)
|
||||||
|
("https://www.youtube.com/feeds/videos.xml?channel_id=UCqZe2cxQNCvgkQxUuqsIaig" youtube programming)
|
||||||
|
("https://www.youtube.com/feeds/videos.xml?channel_id=UCABhVAlCkcEG9a2UVruq9vw" youtube fashion)
|
||||||
|
("https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg" youtube linux)
|
||||||
|
("https://blog.linuxmint.com/?feed=rss2" news linuxmint)
|
||||||
|
("https://feeds.feedburner.com/TheHackersNews" programming security))))
|
||||||
|
(custom-set-faces
|
||||||
|
;; custom-set-faces was added by Custom.
|
||||||
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
|
;; Your init file should contain only one such instance.
|
||||||
|
;; If there is more than one, they won't work right.
|
||||||
|
)
|
||||||
16
doom/.config/doom/elfeed.org
Normal file
16
doom/.config/doom/elfeed.org
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
#+TITLE: RSS Urls
|
||||||
|
#+AUTHOR: Fabio Scotto di Santolo
|
||||||
|
#+DATE: <2025-10-25 Sat>
|
||||||
|
|
||||||
|
* root :elfeed:
|
||||||
|
** Programming :programming:
|
||||||
|
*** [[https://feeds.feedburner.com/TheHackersNews][Hacker News]] :news: :security:
|
||||||
|
** FOSS News :news:
|
||||||
|
*** [[https://blog.linuxmint.com/?feed=rss2][Linux Mint Blog]] :blog: :linux: :linuxmint:
|
||||||
|
** Youtube :youtube:
|
||||||
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg][DistroTube]] :emacs: :foss: :linux:
|
||||||
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCABhVAlCkcEG9a2UVruq9vw][Douglas Mortimer]] :fashion:
|
||||||
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCqZe2cxQNCvgkQxUuqsIaig][Esadecimale]] :emacs: :programming:
|
||||||
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCnDDucQDLncrauOCmanCIgw][MorroLinux]] :linux: :foss:
|
||||||
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCDDG9vOcmgwlslJJpCWjqOg][Salvatore Sanfilippo]] :programming:
|
||||||
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCrqM0Ym_NbK1fqeQG2VIohg][Tsoding Daily]] :emacs: :programming:
|
||||||
201
doom/.config/doom/init.el
Normal file
201
doom/.config/doom/init.el
Normal file
@@ -0,0 +1,201 @@
|
|||||||
|
;;; init.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
|
;; This file controls what Doom modules are enabled and what order they load
|
||||||
|
;; in. Remember to run 'doom sync' after modifying it!
|
||||||
|
|
||||||
|
;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's
|
||||||
|
;; documentation. There you'll find a link to Doom's Module Index where all
|
||||||
|
;; of our modules are listed, including what flags they support.
|
||||||
|
|
||||||
|
;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or
|
||||||
|
;; 'C-c c k' for non-vim users) to view its documentation. This works on
|
||||||
|
;; flags as well (those symbols that start with a plus).
|
||||||
|
;;
|
||||||
|
;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its
|
||||||
|
;; directory (for easy access to its source code).
|
||||||
|
|
||||||
|
(doom! :input
|
||||||
|
;;bidi ; (tfel ot) thgir etirw uoy gnipleh
|
||||||
|
;;chinese
|
||||||
|
;;japanese
|
||||||
|
;;layout ; auie,ctsrnm is the superior home row
|
||||||
|
|
||||||
|
:completion
|
||||||
|
company ; the ultimate code completion backend
|
||||||
|
;;(corfu +orderless) ; complete with cap(f), cape and a flying feather!
|
||||||
|
;;helm ; the *other* search engine for love and life
|
||||||
|
;;ido ; the other *other* search engine...
|
||||||
|
ivy ; a search engine for love and life
|
||||||
|
;;vertico ; the search engine of the future
|
||||||
|
|
||||||
|
:ui
|
||||||
|
;;deft ; notational velocity for Emacs
|
||||||
|
doom ; what makes DOOM look the way it does
|
||||||
|
doom-dashboard ; a nifty splash screen for Emacs
|
||||||
|
;;doom-quit ; DOOM quit-message prompts when you quit Emacs
|
||||||
|
(emoji +unicode) ; 🙂
|
||||||
|
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
|
||||||
|
;;indent-guides ; highlighted indent columns
|
||||||
|
ligatures ; ligatures and symbols to make your code pretty again
|
||||||
|
;;minimap ; show a map of the code on the side
|
||||||
|
modeline ; snazzy, Atom-inspired modeline, plus API
|
||||||
|
;;nav-flash ; blink cursor line after big motions
|
||||||
|
;;neotree ; a project drawer, like NERDTree for vim
|
||||||
|
ophints ; highlight the region an operation acts on
|
||||||
|
(popup +defaults) ; tame sudden yet inevitable temporary windows
|
||||||
|
;;smooth-scroll ; So smooth you won't believe it's not butter
|
||||||
|
;;tabs ; a tab bar for Emacs
|
||||||
|
treemacs ; a project drawer, like neotree but cooler
|
||||||
|
unicode ; extended unicode support for various languages
|
||||||
|
(vc-gutter +pretty) ; vcs diff in the fringe
|
||||||
|
vi-tilde-fringe ; fringe tildes to mark beyond EOB
|
||||||
|
;;window-select ; visually switch windows
|
||||||
|
workspaces ; tab emulation, persistence & separate workspaces
|
||||||
|
;;zen ; distraction-free coding or writing
|
||||||
|
|
||||||
|
:editor
|
||||||
|
;;(evil +everywhere); come to the dark side, we have cookies
|
||||||
|
file-templates ; auto-snippets for empty files
|
||||||
|
fold ; (nigh) universal code folding
|
||||||
|
;;(format +onsave) ; automated prettiness
|
||||||
|
;;god ; run Emacs commands without modifier keys
|
||||||
|
;;lispy ; vim for lisp, for people who don't like vim
|
||||||
|
multiple-cursors ; editing in many places at once
|
||||||
|
;;objed ; text object editing for the innocent
|
||||||
|
;;parinfer ; turn lisp into python, sort of
|
||||||
|
;;rotate-text ; cycle region at point between text candidates
|
||||||
|
snippets ; my elves. They type so I don't have to
|
||||||
|
(whitespace +guess +trim) ; a butler for your whitespace
|
||||||
|
;;word-wrap ; soft wrapping with language-aware indent
|
||||||
|
|
||||||
|
:emacs
|
||||||
|
dired ; making dired pretty [functional]
|
||||||
|
electric ; smarter, keyword-based electric-indent
|
||||||
|
eww ; the internet is gross
|
||||||
|
ibuffer ; interactive buffer management
|
||||||
|
tramp ; remote files at your arthritic fingertips
|
||||||
|
undo ; persistent, smarter undo for your inevitable mistakes
|
||||||
|
vc ; version-control and Emacs, sitting in a tree
|
||||||
|
|
||||||
|
:term
|
||||||
|
eshell ; the elisp shell that works everywhere
|
||||||
|
;;shell ; simple shell REPL for Emacs
|
||||||
|
;;term ; basic terminal emulator for Emacs
|
||||||
|
vterm ; the best terminal emulation in Emacs
|
||||||
|
|
||||||
|
:checkers
|
||||||
|
syntax ; tasing you for every semicolon you forget
|
||||||
|
(spell +flyspell) ; tasing you for misspelling mispelling
|
||||||
|
grammar ; tasing grammar mistake every you make
|
||||||
|
|
||||||
|
:tools
|
||||||
|
ansible
|
||||||
|
;;biblio ; Writes a PhD for you (citation needed)
|
||||||
|
;;collab ; buffers with friends
|
||||||
|
debugger ; FIXME stepping through code, to help you add bugs
|
||||||
|
;;direnv
|
||||||
|
docker
|
||||||
|
editorconfig ; let someone else argue about tabs vs spaces
|
||||||
|
;;ein ; tame Jupyter notebooks with emacs
|
||||||
|
(eval +overlay) ; run code, run (also, repls)
|
||||||
|
lookup ; navigate your code and its documentation
|
||||||
|
;;llm ; when I said you needed friends, I didn't mean...
|
||||||
|
;;(lsp +eglot) ; M-x vscode
|
||||||
|
magit ; a git porcelain for Emacs
|
||||||
|
make ; run make tasks from Emacs
|
||||||
|
pass ; password manager for nerds
|
||||||
|
pdf ; pdf enhancements
|
||||||
|
;;terraform ; infrastructure as code
|
||||||
|
;;tmux ; an API for interacting with tmux
|
||||||
|
tree-sitter ; syntax and parsing, sitting in a tree...
|
||||||
|
;;upload ; map local to remote projects via ssh/ftp
|
||||||
|
|
||||||
|
:os
|
||||||
|
(:if (featurep :system 'macos) macos) ; improve compatibility with macOS
|
||||||
|
;;tty ; improve the terminal Emacs experience
|
||||||
|
|
||||||
|
:lang
|
||||||
|
;;ada ; In strong typing we (blindly) trust
|
||||||
|
;;agda ; types of types of types of types...
|
||||||
|
;;beancount ; mind the GAAP
|
||||||
|
(cc +lsp) ; C > C++ == 1
|
||||||
|
clojure ; java with a lisp
|
||||||
|
;;common-lisp ; if you've seen one lisp, you've seen them all
|
||||||
|
;;coq ; proofs-as-programs
|
||||||
|
;;crystal ; ruby at the speed of c
|
||||||
|
;;csharp ; unity, .NET, and mono shenanigans
|
||||||
|
data ; config/data formats
|
||||||
|
;;(dart +flutter) ; paint ui and not much else
|
||||||
|
;;dhall
|
||||||
|
;;elixir ; erlang done right
|
||||||
|
;;elm ; care for a cup of TEA?
|
||||||
|
emacs-lisp ; drown in parentheses
|
||||||
|
;;erlang ; an elegant language for a more civilized age
|
||||||
|
;;ess ; emacs speaks statistics
|
||||||
|
;;factor
|
||||||
|
;;faust ; dsp, but you get to keep your soul
|
||||||
|
;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
|
||||||
|
;;fsharp ; ML stands for Microsoft's Language
|
||||||
|
;;fstar ; (dependent) types and (monadic) effects and Z3
|
||||||
|
;;gdscript ; the language you waited for
|
||||||
|
(go +lsp) ; the hipster dialect
|
||||||
|
;;(graphql +lsp) ; Give queries a REST
|
||||||
|
;;(haskell +lsp) ; a language that's lazier than I am
|
||||||
|
;;hy ; readability of scheme w/ speed of python
|
||||||
|
;;idris ; a language you can depend on
|
||||||
|
json ; At least it ain't XML
|
||||||
|
;;janet ; Fun fact: Janet is me!
|
||||||
|
;;(java +lsp) ; the poster child for carpal tunnel syndrome
|
||||||
|
;;javascript ; all(hope(abandon(ye(who(enter(here))))))
|
||||||
|
;;julia ; a better, faster MATLAB
|
||||||
|
;;kotlin ; a better, slicker Java(Script)
|
||||||
|
latex ; writing papers in Emacs has never been so fun
|
||||||
|
;;lean ; for folks with too much to prove
|
||||||
|
;;ledger ; be audit you can be
|
||||||
|
lua ; one-based indices? one-based indices
|
||||||
|
markdown ; writing docs for people to ignore
|
||||||
|
;;nim ; python + lisp at the speed of c
|
||||||
|
;;nix ; I hereby declare "nix geht mehr!"
|
||||||
|
;;ocaml ; an objective camel
|
||||||
|
org ; organize your plain life in plain text
|
||||||
|
;;php ; perl's insecure younger brother
|
||||||
|
;;plantuml ; diagrams for confusing people more
|
||||||
|
;;graphviz ; diagrams for confusing yourself even more
|
||||||
|
;;purescript ; javascript, but functional
|
||||||
|
python ; beautiful is better than ugly
|
||||||
|
;;qt ; the 'cutest' gui framework ever
|
||||||
|
;;racket ; a DSL for DSLs
|
||||||
|
;;raku ; the artist formerly known as perl6
|
||||||
|
;;rest ; Emacs as a REST client
|
||||||
|
;;rst ; ReST in peace
|
||||||
|
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
|
||||||
|
;;(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
|
||||||
|
;;scala ; java, but good
|
||||||
|
(scheme +guile) ; a fully conniving family of lisps
|
||||||
|
sh ; she sells {ba,z,fi}sh shells on the C xor
|
||||||
|
;;sml
|
||||||
|
;;solidity ; do you need a blockchain? No.
|
||||||
|
;;swift ; who asked for emoji variables?
|
||||||
|
;;terra ; Earth and Moon in alignment for performance.
|
||||||
|
;;web ; the tubes
|
||||||
|
yaml ; JSON, but readable
|
||||||
|
zig ; C, but simpler
|
||||||
|
|
||||||
|
:tools
|
||||||
|
lsp ; lsp mode
|
||||||
|
|
||||||
|
:email
|
||||||
|
(mu4e +org +gmail)
|
||||||
|
;;notmuch
|
||||||
|
;;(wanderlust +gmail)
|
||||||
|
|
||||||
|
:app
|
||||||
|
calendar
|
||||||
|
emms
|
||||||
|
everywhere ; *leave* Emacs!? You must be joking
|
||||||
|
;;irc ; how neckbeards socialize
|
||||||
|
(rss +org) ; emacs as an RSS reader
|
||||||
|
|
||||||
|
:config
|
||||||
|
;;literate
|
||||||
|
(default +bindings +smartparens))
|
||||||
59
doom/.config/doom/packages.el
Normal file
59
doom/.config/doom/packages.el
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
;; -*- no-byte-compile: t; -*-
|
||||||
|
;;; $DOOMDIR/packages.el
|
||||||
|
|
||||||
|
;; To install a package:
|
||||||
|
;;
|
||||||
|
;; 1. Declare them here in a `package!' statement,
|
||||||
|
;; 2. Run 'doom sync' in the shell,
|
||||||
|
;; 3. Restart Emacs.
|
||||||
|
;;
|
||||||
|
;; Use 'C-h f package\!' to look up documentation for the `package!' macro.
|
||||||
|
|
||||||
|
|
||||||
|
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
|
||||||
|
;; (package! some-package)
|
||||||
|
|
||||||
|
;; To install a package directly from a remote git repo, you must specify a
|
||||||
|
;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
|
||||||
|
;; https://github.com/radian-software/straight.el#the-recipe-format
|
||||||
|
;; (package! another-package
|
||||||
|
;; :recipe (:host github :repo "username/repo"))
|
||||||
|
|
||||||
|
;; If the package you are trying to install does not contain a PACKAGENAME.el
|
||||||
|
;; file, or is located in a subdirectory of the repo, you'll need to specify
|
||||||
|
;; `:files' in the `:recipe':
|
||||||
|
;; (package! this-package
|
||||||
|
;; :recipe (:host github :repo "username/repo"
|
||||||
|
;; :files ("some-file.el" "src/lisp/*.el")))
|
||||||
|
|
||||||
|
;; If you'd like to disable a package included with Doom, you can do so here
|
||||||
|
;; with the `:disable' property:
|
||||||
|
;; (package! builtin-package :disable t)
|
||||||
|
|
||||||
|
;; You can override the recipe of a built in package without having to specify
|
||||||
|
;; all the properties for `:recipe'. These will inherit the rest of its recipe
|
||||||
|
;; from Doom or MELPA/ELPA/Emacsmirror:
|
||||||
|
;; (package! builtin-package :recipe (:nonrecursive t))
|
||||||
|
;; (package! builtin-package-2 :recipe (:repo "myfork/package"))
|
||||||
|
|
||||||
|
;; Specify a `:branch' to install a package from a particular branch or tag.
|
||||||
|
;; This is required for some packages whose default branch isn't 'master' (which
|
||||||
|
;; our package manager can't deal with; see radian-software/straight.el#279)
|
||||||
|
;; (package! builtin-package :recipe (:branch "develop"))
|
||||||
|
|
||||||
|
;; Use `:pin' to specify a particular commit to install.
|
||||||
|
;; (package! builtin-package :pin "1a2b3c4d5e")
|
||||||
|
|
||||||
|
|
||||||
|
;; Doom's packages are pinned to a specific commit and updated from release to
|
||||||
|
;; release. The `unpin!' macro allows you to unpin single packages...
|
||||||
|
;; (unpin! pinned-package)
|
||||||
|
;; ...or multiple packages
|
||||||
|
;; (unpin! pinned-package another-pinned-package)
|
||||||
|
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
|
||||||
|
;; (unpin! t)
|
||||||
|
|
||||||
|
(package! catppuccin-theme)
|
||||||
|
(package! org-caldav)
|
||||||
|
(package! elfeed-tube)
|
||||||
|
(package! elfeed-tube-mpv)
|
||||||
7
doom/.config/doom/scripts/email_sync.sh
Executable file
7
doom/.config/doom/scripts/email_sync.sh
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
mbsync -a & pid1=$!
|
||||||
|
wait $pid1
|
||||||
|
|
||||||
|
mu index
|
||||||
|
|
||||||
@@ -5,16 +5,12 @@
|
|||||||
* root :elfeed:
|
* root :elfeed:
|
||||||
** Programming :programming:
|
** Programming :programming:
|
||||||
*** [[https://feeds.feedburner.com/TheHackersNews][Hacker News]] :news: :security:
|
*** [[https://feeds.feedburner.com/TheHackersNews][Hacker News]] :news: :security:
|
||||||
*** [[https://lewboski.dev/rss.xml][Lewboski Blog]] :linux: :kernel:
|
|
||||||
** FOSS News :news:
|
** FOSS News :news:
|
||||||
*** [[https://blog.linuxmint.com/?feed=rss2][Linux Mint Blog]] :blog: :linux: :linuxmint:
|
*** [[https://blog.linuxmint.com/?feed=rss2][Linux Mint Blog]] :blog: :linux: :linuxmint:
|
||||||
*** [[https://archlinux.org/feeds/news][Archlinux News]] :linux: :arch:
|
|
||||||
*** [[https://security.archlinux.org/advisory/feed.atom][Arch Security]] :linux: :arch: :security:
|
|
||||||
*** [[https://lwn.net/headlines/rss][LWN News]] :linux: :kernel: :programming: :security:
|
|
||||||
** Youtube :youtube:
|
** Youtube :youtube:
|
||||||
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg][DistroTube]] :emacs: :foss: :linux:
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg][DistroTube]] :emacs: :foss: :linux:
|
||||||
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCABhVAlCkcEG9a2UVruq9vw][Douglas Mortimer]] :fashion:
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCABhVAlCkcEG9a2UVruq9vw][Douglas Mortimer]] :fashion:
|
||||||
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCqZe2cxQNCvgkQxUuqsIaig][Esadecimale]] :emacs: :programming: :security:
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCqZe2cxQNCvgkQxUuqsIaig][Esadecimale]] :emacs: :programming:
|
||||||
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCnDDucQDLncrauOCmanCIgw][MorroLinux]] :linux: :foss:
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCnDDucQDLncrauOCmanCIgw][MorroLinux]] :linux: :foss:
|
||||||
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCDDG9vOcmgwlslJJpCWjqOg][Salvatore Sanfilippo]] :programming:
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCDDG9vOcmgwlslJJpCWjqOg][Salvatore Sanfilippo]] :programming:
|
||||||
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCrqM0Ym_NbK1fqeQG2VIohg][Tsoding Daily]] :emacs: :programming:
|
*** [[https://www.youtube.com/feeds/videos.xml?channel_id=UCrqM0Ym_NbK1fqeQG2VIohg][Tsoding Daily]] :emacs: :programming:
|
||||||
|
|||||||
@@ -7,19 +7,10 @@
|
|||||||
(use-package soothe-theme
|
(use-package soothe-theme
|
||||||
:ensure t)
|
:ensure t)
|
||||||
|
|
||||||
(use-package nordic-night-theme
|
(load-theme 'spolsky t)
|
||||||
:ensure t)
|
|
||||||
|
|
||||||
(use-package timu-caribbean-theme
|
|
||||||
:ensure t)
|
|
||||||
|
|
||||||
(load-theme 'nordic-night t)
|
|
||||||
|
|
||||||
;; Setting default font
|
;; Setting default font
|
||||||
(set-frame-font "Liberation Mono 14" nil t)
|
(set-frame-font "Iosevka Nerd Font 14" nil t)
|
||||||
|
|
||||||
(add-to-list 'default-frame-alist
|
|
||||||
'(font . "Liberation Mono-14"))
|
|
||||||
|
|
||||||
;; Remove toolbar
|
;; Remove toolbar
|
||||||
(tool-bar-mode -1)
|
(tool-bar-mode -1)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
(use-package mu4e
|
(use-package mu4e
|
||||||
:ensure nil
|
:ensure nil
|
||||||
:load-path "/usr/share/emacs/site-lisp/mu4e/"
|
;; :load-path "/usr/share/emacs/site-lisp/mu4e/"
|
||||||
:defer 20 ; Wait until 20 seconds after startup
|
:defer 20 ; Wait until 20 seconds after startup
|
||||||
:config
|
:config
|
||||||
;; This is set to 't' to avoid mail syncing issues when using mbsync
|
;; This is set to 't' to avoid mail syncing issues when using mbsync
|
||||||
|
|||||||
@@ -2,21 +2,6 @@
|
|||||||
|
|
||||||
(use-package elfeed
|
(use-package elfeed
|
||||||
:ensure t
|
:ensure t
|
||||||
:config
|
|
||||||
(defun elfeed-play-with-mpv ()
|
|
||||||
"Open the current elfeed entry link with mpv."
|
|
||||||
(interactive)
|
|
||||||
(let* ((entry (if (eq major-mode 'elfeed-show-mode)
|
|
||||||
elfeed-show-entry
|
|
||||||
(elfeed-search-selected :ignore-region)))
|
|
||||||
(url (and entry (elfeed-entry-link entry))))
|
|
||||||
(if url
|
|
||||||
(progn
|
|
||||||
(message "Opening with mpv: %s" url)
|
|
||||||
(start-process "mpv" nil "mpv" url))
|
|
||||||
(message "No URL found"))))
|
|
||||||
(define-key elfeed-search-mode-map (kbd "v") #'elfeed-play-with-mpv)
|
|
||||||
(define-key elfeed-show-mode-map (kbd "v") #'elfeed-play-with-mpv)
|
|
||||||
:custom
|
:custom
|
||||||
(elfeed-enclosure-default-dir "~/Downloads/")
|
(elfeed-enclosure-default-dir "~/Downloads/")
|
||||||
(elfeed-search-remain-on-entry t)
|
(elfeed-search-remain-on-entry t)
|
||||||
@@ -40,4 +25,3 @@
|
|||||||
|
|
||||||
(with-eval-after-load 'elfeed
|
(with-eval-after-load 'elfeed
|
||||||
(elfeed-org))
|
(elfeed-org))
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
:defer 1
|
:defer 1
|
||||||
:init
|
:init
|
||||||
;; Root detection
|
;; Root detection
|
||||||
(setq projectile-project-search-path '("~/Projects" "~/Work" "~/Progetti" "~/.local/src"))
|
(setq projectile-project-search-path '("~/Projects" "~/Work" "~/Progetti"))
|
||||||
(setq projectile-completion-system 'ivy)
|
(setq projectile-completion-system 'ivy)
|
||||||
:config
|
:config
|
||||||
;; Performance
|
;; Performance
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
mbsync -a & pid1=$!
|
mbsync Gmail & pid1=$!
|
||||||
wait $pid1
|
wait $pid1
|
||||||
|
|
||||||
mu index
|
mu index
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ IMAPStore iCloud-remote
|
|||||||
Host imap.mail.me.com
|
Host imap.mail.me.com
|
||||||
Port 993
|
Port 993
|
||||||
User fscottodisantolo@icloud.com
|
User fscottodisantolo@icloud.com
|
||||||
PassCmd "secret-tool lookup icloud-mail icloud"
|
PassCmd "pass show icloud-mail"
|
||||||
AuthMechs *
|
AuthMechs *
|
||||||
SSLType IMAPS
|
SSLType IMAPS
|
||||||
SSLVersions TLSv1.2 TLSv1.3
|
SSLVersions TLSv1.2 TLSv1.3
|
||||||
@@ -27,7 +27,7 @@ IMAPStore protonmail-remote
|
|||||||
Host 127.0.0.1
|
Host 127.0.0.1
|
||||||
Port 1143
|
Port 1143
|
||||||
User fscottodisantolo@protonmail.com
|
User fscottodisantolo@protonmail.com
|
||||||
PassCmd "secret-tool lookup protonmail-bridge protonmail"
|
PassCmd "pass show protonmail-bridge"
|
||||||
AuthMechs *
|
AuthMechs *
|
||||||
SSLType STARTTLS
|
SSLType STARTTLS
|
||||||
PipelineDepth 1
|
PipelineDepth 1
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
[core]
|
[core]
|
||||||
excludesfile = ~/.gitignore_global
|
excludesfile = ~/.gitignore_global
|
||||||
pager = delta
|
pager = delta
|
||||||
|
sshcommand = ssh.exe
|
||||||
|
|
||||||
[user]
|
[user]
|
||||||
name = Fabio Scotto di Santolo
|
name = Fabio Scotto di Santolo
|
||||||
@@ -24,13 +25,6 @@
|
|||||||
|
|
||||||
[merge]
|
[merge]
|
||||||
conflictstyle = diff3
|
conflictstyle = diff3
|
||||||
tool = meld
|
|
||||||
|
|
||||||
[mergetool]
|
|
||||||
prompt = false
|
|
||||||
|
|
||||||
[diff]
|
|
||||||
tool = meld
|
|
||||||
|
|
||||||
[color]
|
[color]
|
||||||
ui = always
|
ui = always
|
||||||
@@ -81,3 +75,6 @@
|
|||||||
colorMoved = default
|
colorMoved = default
|
||||||
tabs = 4
|
tabs = 4
|
||||||
side-by-side = true
|
side-by-side = true
|
||||||
|
|
||||||
|
[credential]
|
||||||
|
helper = manager-core
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
[Settings]
|
|
||||||
gtk-theme-name=Yaru-blue-dark
|
|
||||||
gtk-icon-theme-name=Yary-blue-dark
|
|
||||||
gtk-font-name=Noto Sans 10
|
|
||||||
gtk-cursor-theme-name=Qogir-dark
|
|
||||||
gtk-cursor-theme-size=24
|
|
||||||
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
|
||||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
|
||||||
gtk-button-images=0
|
|
||||||
gtk-menu-images=0
|
|
||||||
gtk-enable-event-sounds=1
|
|
||||||
gtk-enable-input-feedback-sounds=0
|
|
||||||
gtk-xft-antialias=1
|
|
||||||
gtk-xft-hinting=1
|
|
||||||
gtk-xft-hintstyle=hintslight
|
|
||||||
gtk-xft-rgba=rgb
|
|
||||||
gtk-application-prefer-dark-theme=0
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
[Settings]
|
|
||||||
gtk-theme-name=Yaru-purple-dark
|
|
||||||
@@ -17,11 +17,12 @@ set $down j
|
|||||||
set $up k
|
set $up k
|
||||||
set $right l
|
set $right l
|
||||||
|
|
||||||
set $term 'xfce4-terminal'
|
set $term 'alacritty'
|
||||||
set $editor 'emacs'
|
set $editor 'emacs'
|
||||||
set $filemanager 'thunar'
|
set $filemanager 'nemo'
|
||||||
set $browser 'chromium'
|
set $notification 'dunst'
|
||||||
set $clipboard 'xfce4-clipman'
|
set $browser 'org.mozilla.firefox'
|
||||||
|
set $clipboard 'diodon'
|
||||||
|
|
||||||
# Define names for default workspaces for which we configure key bindings later on.
|
# Define names for default workspaces for which we configure key bindings later on.
|
||||||
# We use variables to avoid repeating the names in multiple places.
|
# We use variables to avoid repeating the names in multiple places.
|
||||||
@@ -42,41 +43,58 @@ set $ws10 "10"
|
|||||||
###############################################################
|
###############################################################
|
||||||
###############################################################
|
###############################################################
|
||||||
|
|
||||||
# Define colors variables:
|
# Import Catppuccin theme defined colors
|
||||||
set $darkbluetrans #08052be6
|
set $rosewater #f5e0dc
|
||||||
set $darkblue #08052b
|
set $flamingo #f2cdcd
|
||||||
set $lightblue #5294e2
|
set $pink #f5c2e7
|
||||||
set $urgentred #e53935
|
set $mauve #cba6f7
|
||||||
set $white #ffffff
|
set $red #f38ba8
|
||||||
set $black #000000
|
set $maroon #eba0ac
|
||||||
set $purple #e345ff
|
set $peach #fab387
|
||||||
set $darkgrey #383c4a
|
set $yellow #f9e2af
|
||||||
set $grey #b0b5bd
|
set $green #a6e3a1
|
||||||
set $mediumgrey #8b8b8b
|
set $teal #94e2d5
|
||||||
set $yellowbrown #e1b700
|
set $sky #89dceb
|
||||||
|
set $sapphire #74c7ec
|
||||||
|
set $blue #89b4fa
|
||||||
|
set $lavender #b4befe
|
||||||
|
set $text #cdd6f4
|
||||||
|
set $subtext1 #bac2de
|
||||||
|
set $subtext0 #a6adc8
|
||||||
|
set $overlay2 #9399b2
|
||||||
|
set $overlay1 #7f849c
|
||||||
|
set $overlay0 #6c7086
|
||||||
|
set $surface2 #585b70
|
||||||
|
set $surface1 #45475a
|
||||||
|
set $surface0 #313244
|
||||||
|
set $base #1e1e2e
|
||||||
|
set $mantle #181825
|
||||||
|
set $crust #11111b
|
||||||
|
|
||||||
# define colors for windows:
|
# target title bg text indicator border
|
||||||
#class border bground text indicator child_border
|
client.focused $lavender $base $text $rosewater $lavender
|
||||||
#client.focused $lightblue $darkblue $white $mediumgrey $mediumgrey
|
client.focused_inactive $overlay0 $base $text $rosewater $overlay0
|
||||||
#client.unfocused $darkblue $darkblue $grey $darkgrey $darkgrey
|
client.unfocused $overlay0 $base $text $rosewater $overlay0
|
||||||
#client.focused_inactive $darkblue $darkblue $grey $black $black
|
client.urgent $peach $base $peach $overlay0 $peach
|
||||||
#client.urgent $urgentred $urgentred $white $yellowbrown $yellowbrown
|
client.placeholder $overlay0 $base $text $overlay0 $overlay0
|
||||||
|
client.background $base
|
||||||
|
|
||||||
# Setting cursor
|
# Setting cursor
|
||||||
# seat seat0 xcursor_theme catppuccin-mocha-lavender-cursors 25
|
# seat seat0 xcursor_theme catppuccin-mocha-lavender-cursors 25
|
||||||
|
|
||||||
# Font for window titles. Will also be used by the bar unless a different font
|
# Font for window titles. Will also be used by the bar unless a different font
|
||||||
# is used in the bar {} block below.
|
# is used in the bar {} block below.
|
||||||
font pango:Liberation Sans Regular 10
|
font pango:Noto Sans Regular 10
|
||||||
|
|
||||||
|
# This font is widely installed, provides lots of unicode glyphs, right-to-left
|
||||||
|
# text rendering and scalability on retina/hidpi displays (thanks to pango).
|
||||||
|
#font pango:DejaVu Sans Mono 8
|
||||||
|
|
||||||
# Windows configuration
|
# Windows configuration
|
||||||
default_border pixel 3
|
default_border pixel 3
|
||||||
default_floating_border pixel 3
|
default_floating_border pixel 3
|
||||||
#gaps inner 5
|
gaps inner 5
|
||||||
#gaps outer 5
|
gaps outer 5
|
||||||
|
|
||||||
# Apply wallpaper
|
|
||||||
exec_always --no-startup-id feh --bg-scale ~/.config/i3/wallpaper.jpg
|
|
||||||
|
|
||||||
###############################################################
|
###############################################################
|
||||||
###############################################################
|
###############################################################
|
||||||
@@ -100,12 +118,11 @@ for_window [class="Authy"] floating enable
|
|||||||
for_window [class="Termfloat"] floating enable, resize set 960 540
|
for_window [class="Termfloat"] floating enable, resize set 960 540
|
||||||
for_window [class="Mpv"] floating enable, resize set 960 540
|
for_window [class="Mpv"] floating enable, resize set 960 540
|
||||||
for_window [class="Spotify"] floating enable, resize set 1280 1024, move scratchpad
|
for_window [class="Spotify"] floating enable, resize set 1280 1024, move scratchpad
|
||||||
for_window [class="xfce4-clipman-history"] floating enable
|
|
||||||
|
|
||||||
# Workspaces
|
# Workspaces
|
||||||
assign [class="Emacs"] 2
|
assign [class="Emacs"] 1
|
||||||
assign [class="Chromium"] 1
|
assign [class="firefox"] 2
|
||||||
assign [class="Telegram"] 2
|
assign [class="Telegram"] 3
|
||||||
assign [class="discord"] 3
|
assign [class="discord"] 3
|
||||||
|
|
||||||
focus_follows_mouse no
|
focus_follows_mouse no
|
||||||
@@ -131,6 +148,7 @@ mode "launcher" {
|
|||||||
bindsym s exec "rofi -show ssh"
|
bindsym s exec "rofi -show ssh"
|
||||||
bindsym w exec "rofi -show window"
|
bindsym w exec "rofi -show window"
|
||||||
bindsym f exec "rofi -show filebrowser"
|
bindsym f exec "rofi -show filebrowser"
|
||||||
|
bindsym q exec ~/.config/i3/scripts/poweroff.sh
|
||||||
|
|
||||||
bindsym $mod+d mode "default"
|
bindsym $mod+d mode "default"
|
||||||
bindsym Return mode "default"
|
bindsym Return mode "default"
|
||||||
@@ -138,16 +156,12 @@ mode "launcher" {
|
|||||||
}
|
}
|
||||||
bindsym $mod+d mode "launcher"
|
bindsym $mod+d mode "launcher"
|
||||||
|
|
||||||
bindsym $mod+Shift+f exec $filemanager
|
bindsym $mod+Shift+f exec "nemo"
|
||||||
bindsym $mod+Shift+b exec $browser
|
bindsym $mod+Shift+b exec "flatpak run org.mozilla.firefox"
|
||||||
bindsym $mod+Shift+t exec "flatpak run org.telegram.desktop"
|
bindsym $mod+Shift+t exec "flatpak run org.telegram.desktop"
|
||||||
bindsym $mod+Shift+e exec $editor
|
bindsym $mod+Shift+e exec $editor
|
||||||
bindsym Print exec xfce4-screenshooter
|
bindsym Print exec flameshot gui
|
||||||
bindsym Shift+Print exec xfce4-screenshooter -r
|
bindsym $mod+Shift+v exec --no-startup-id $clipboard
|
||||||
bindsym Mod1+Print exec xfce4-screenshooter -w
|
|
||||||
bindsym $mod+Shift+v exec --no-startup-id xfce4-clipman-history
|
|
||||||
bindsym $mod+Mod1+l exec ~/.config/i3/scripts/lockscreen.sh
|
|
||||||
bindsym Mod1+Ctrl+q exec ~/.config/i3/scripts/powermenu
|
|
||||||
|
|
||||||
# Use pactl to adjust volume in PulseAudio.
|
# Use pactl to adjust volume in PulseAudio.
|
||||||
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5%
|
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||||
@@ -156,6 +170,7 @@ bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ to
|
|||||||
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
||||||
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set +5%
|
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set +5%
|
||||||
bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set 5%-
|
bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set 5%-
|
||||||
|
bindsym $mod+Mod1+l exec ~/.config/i3/scripts/lockscreen.sh
|
||||||
|
|
||||||
# use Mouse+Mod4 to drag floating windows to their wanted position
|
# use Mouse+Mod4 to drag floating windows to their wanted position
|
||||||
floating_modifier $mod
|
floating_modifier $mod
|
||||||
@@ -178,7 +193,7 @@ bindsym $mod+Right focus right
|
|||||||
|
|
||||||
# move focused window
|
# move focused window
|
||||||
bindsym $mod+Shift+$left move left
|
bindsym $mod+Shift+$left move left
|
||||||
bindsym $mod+Shift+$down move down
|
bindsym $mod4+Shift+$down move down
|
||||||
bindsym $mod+Shift+$up move up
|
bindsym $mod+Shift+$up move up
|
||||||
bindsym $mod+Shift+$right move right
|
bindsym $mod+Shift+$right move right
|
||||||
|
|
||||||
@@ -252,6 +267,8 @@ bindsym $mod+comma workspace prev
|
|||||||
bindsym $mod+Shift+c reload
|
bindsym $mod+Shift+c reload
|
||||||
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
|
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
|
||||||
bindsym $mod+Shift+r restart
|
bindsym $mod+Shift+r restart
|
||||||
|
# exit i3 (logs you out of your X session)
|
||||||
|
#bindsym $mod+Shift+e exec ~/.config/i3/scripts/poweroff.sh
|
||||||
|
|
||||||
# resize window (you can also use the mouse for that)
|
# resize window (you can also use the mouse for that)
|
||||||
mode "resize" {
|
mode "resize" {
|
||||||
@@ -280,50 +297,12 @@ mode "resize" {
|
|||||||
|
|
||||||
bindsym $mod+r mode "resize"
|
bindsym $mod+r mode "resize"
|
||||||
|
|
||||||
|
|
||||||
############################################
|
|
||||||
# bar settings (input comes from i3blocks) #
|
|
||||||
############################################
|
|
||||||
|
|
||||||
# Start i3bar to display a workspace bar
|
|
||||||
# (plus the system information i3status finds out, if available)
|
|
||||||
bar {
|
|
||||||
font pango: Liberation Sans Regular 10
|
|
||||||
status_command i3blocks -c ~/.config/i3/i3blocks.conf
|
|
||||||
position bottom
|
|
||||||
# i3bar_command i3bar --transparency
|
|
||||||
# it could be that you have no primary display set: set one (xrandr --output <output> --primary)
|
|
||||||
# reference: https://i3wm.org/docs/userguide.html#_tray_output
|
|
||||||
tray_output primary
|
|
||||||
tray_padding 0
|
|
||||||
|
|
||||||
# When strip_workspace_numbers is set to yes,
|
|
||||||
# any workspace that has a name of the form
|
|
||||||
# “[n][:][NAME]” will display only the name.
|
|
||||||
strip_workspace_numbers yes
|
|
||||||
##strip_workspace_name no
|
|
||||||
|
|
||||||
#colors {
|
|
||||||
# separator $purple
|
|
||||||
# background $darkgrey
|
|
||||||
# statusline $white
|
|
||||||
# border bg txt indicator
|
|
||||||
# focused_workspace $mediumgrey $grey $darkgrey $purple
|
|
||||||
# active_workspace $lightblue $mediumgrey $darkgrey $purple
|
|
||||||
# inactive_workspace $darkgrey $darkgrey $grey $purple
|
|
||||||
# urgent_workspace $urgentred $urgentred $white $purple
|
|
||||||
#}
|
|
||||||
}
|
|
||||||
|
|
||||||
###############################################################
|
###############################################################
|
||||||
###############################################################
|
###############################################################
|
||||||
################## AUTOSTART ##################
|
################## AUTOSTART ##################
|
||||||
###############################################################
|
###############################################################
|
||||||
###############################################################
|
###############################################################
|
||||||
|
|
||||||
### Run status bar
|
|
||||||
#exec_always --no-startup-id ~/.config/polybar/launch.sh
|
|
||||||
|
|
||||||
# Start XDG autostart .desktop files using dex. See also
|
# Start XDG autostart .desktop files using dex. See also
|
||||||
# https://wiki.archlinux.org/index.php/XDG_Autostart
|
# https://wiki.archlinux.org/index.php/XDG_Autostart
|
||||||
exec --no-startup-id dex --autostart --environment i3
|
exec --no-startup-id dex --autostart --environment i3
|
||||||
@@ -335,33 +314,35 @@ exec --no-startup-id dex --autostart --environment i3
|
|||||||
# screen before suspend. Use loginctl lock-session to lock your screen.
|
# screen before suspend. Use loginctl lock-session to lock your screen.
|
||||||
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
|
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
|
||||||
|
|
||||||
### Enable autolock
|
|
||||||
exec_always xautolock -time 5 -locker ~/.config/i3/scripts/lockscreen.sh -detectsleep
|
|
||||||
|
|
||||||
# NetworkManager is the most popular way to manage wireless networks on Linux,
|
# NetworkManager is the most popular way to manage wireless networks on Linux,
|
||||||
# and nm-applet is a desktop environment-independent system tray GUI for it.
|
# and nm-applet is a desktop environment-independent system tray GUI for it.
|
||||||
exec --no-startup-id nm-applet
|
exec --no-startup-id nm-applet
|
||||||
|
|
||||||
# make sure it loads gtk configs
|
|
||||||
exec_always $HOME/.config/i3/scripts/import-gsettings.sh
|
|
||||||
|
|
||||||
# start ssh-agent
|
|
||||||
#exec --no-startup-id /usr/bin/gnome-keyring-daemon --start --components=secrets
|
|
||||||
|
|
||||||
#################################################################
|
|
||||||
#################################################################
|
|
||||||
################ XFCE SERVICES #################
|
|
||||||
#################################################################
|
|
||||||
#################################################################
|
|
||||||
|
|
||||||
# Polkit Authentication agent
|
# Polkit Authentication agent
|
||||||
exec --no-startup-id /usr/libexec/xfce-polkit
|
exec_always --no-startup-id /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
|
||||||
|
|
||||||
# Notification daemon
|
### Apply wallpaper
|
||||||
exec --no-startup-id /usr/lib64/xfce4/notifyd/xfce4-notifyd
|
exec_always --no-startup-id feh --bg-scale ~/.config/i3/wallpaper.jpg
|
||||||
|
|
||||||
# Power Manager
|
### Run status bar
|
||||||
exec --no-startup-id xfce4-power-manager
|
exec_always --no-startup-id ~/.config/polybar/launch.sh
|
||||||
|
|
||||||
# Clipboard
|
### Run in background X11 compositor
|
||||||
exec_always --no-startup-id xfce4-clipman
|
exec_always --no-startup-id picom --config ~/.config/picom/picom.conf
|
||||||
|
|
||||||
|
### Run in background notification daemon
|
||||||
|
exec_always --no-startup-id $notification
|
||||||
|
|
||||||
|
exec --no-startup-id $clipboard
|
||||||
|
|
||||||
|
### Enable autolock
|
||||||
|
exec_always xautolock -time 5 -locker ~/.config/i3/scripts/lockscreen.sh -detectsleep
|
||||||
|
|
||||||
|
### Run screenshot tool
|
||||||
|
exec flameshot
|
||||||
|
|
||||||
|
### Run my preferred editor
|
||||||
|
# exec $editor
|
||||||
|
|
||||||
|
### Run my preferred browser
|
||||||
|
exec flatpak run $browser
|
||||||
|
|||||||
@@ -1,182 +0,0 @@
|
|||||||
# i3blocks config file changed for EndeavourOS-i3 setup
|
|
||||||
|
|
||||||
# source is available here:
|
|
||||||
# https://raw.githubusercontent.com/endeavouros-team/endeavouros-i3wm-setup/main/etc/skel/.config/i3/i3blocks.conf
|
|
||||||
# Maintainer: joekamprad [joekamprad //a_t// endeavouros.com]
|
|
||||||
# Former Visual Designer: Florent Valetti [@FLVAL EndeavourOS]
|
|
||||||
# created for i3wm setup on EndeavourOS
|
|
||||||
# https://endeavouros.com
|
|
||||||
|
|
||||||
# cheatsheet for icon fonts used on the block-bar:
|
|
||||||
# https://fontawesome.com/v4.7/cheatsheet/
|
|
||||||
|
|
||||||
# --> to update this run the following command:
|
|
||||||
# wget --backups=1 https://raw.githubusercontent.com/endeavouros-team/endeavouros-i3wm-setup/main/etc/skel/.config/i3/i3blocks.conf -P ~/.config/i3/
|
|
||||||
|
|
||||||
# Please see man i3blocks for a complete reference!
|
|
||||||
# The man page is also hosted at http://vivien.github.io/i3blocks
|
|
||||||
|
|
||||||
|
|
||||||
# List of valid properties:
|
|
||||||
#
|
|
||||||
# align
|
|
||||||
# color
|
|
||||||
# command
|
|
||||||
# full_text
|
|
||||||
# instance
|
|
||||||
# interval
|
|
||||||
# label
|
|
||||||
# min_width
|
|
||||||
# name
|
|
||||||
# separator
|
|
||||||
# separator_block_width
|
|
||||||
# short_text
|
|
||||||
# signal
|
|
||||||
# urgent
|
|
||||||
|
|
||||||
# Global properties
|
|
||||||
#
|
|
||||||
# The top properties below are applied to every block, but can be overridden.
|
|
||||||
separator=true
|
|
||||||
markup=pango
|
|
||||||
|
|
||||||
#[Weather]
|
|
||||||
#command=~/.config/i3/scripts/openweather
|
|
||||||
#interval=1800
|
|
||||||
#color=#7275b3
|
|
||||||
|
|
||||||
#[terminal]
|
|
||||||
#full_text=
|
|
||||||
#color=#807dfe
|
|
||||||
#command=i3-msg -q exec xfce4-terminal
|
|
||||||
|
|
||||||
#[browser]
|
|
||||||
#full_text=
|
|
||||||
#color=#ff7f81
|
|
||||||
#command=i3-msg -q exec chromium
|
|
||||||
|
|
||||||
#[files]
|
|
||||||
#full_text=
|
|
||||||
#color=#7f3fbf
|
|
||||||
#command=i3-msg -q exec thunar ~/
|
|
||||||
|
|
||||||
#[mail]
|
|
||||||
#full_text=
|
|
||||||
#color=#dbcb75
|
|
||||||
#command=i3-msg -q exec thunderbird
|
|
||||||
|
|
||||||
#[simple-2]
|
|
||||||
#full_text=: :
|
|
||||||
#color=#717171
|
|
||||||
|
|
||||||
# Disk usage
|
|
||||||
#
|
|
||||||
# The directory defaults to $HOME if the instance is not specified.
|
|
||||||
# The script may be called with a optional argument to set the alert
|
|
||||||
# (defaults to 10 for 10%).
|
|
||||||
[disk]
|
|
||||||
label=
|
|
||||||
instance=/
|
|
||||||
command=~/.config/i3/scripts/disk
|
|
||||||
interval=30
|
|
||||||
|
|
||||||
# Memory usage
|
|
||||||
#
|
|
||||||
# The type defaults to "mem" if the instance is not specified.
|
|
||||||
[memory]
|
|
||||||
label=
|
|
||||||
command=~/.config/i3/scripts/memory
|
|
||||||
interval=2
|
|
||||||
|
|
||||||
[cpu_usage]
|
|
||||||
label=
|
|
||||||
command=~/.config/i3/scripts/cpu_usage
|
|
||||||
min_width=CPU: 100.00%
|
|
||||||
interval=2
|
|
||||||
|
|
||||||
[CPU-temperature]
|
|
||||||
label=
|
|
||||||
command=~/.config/i3/scripts/temperature
|
|
||||||
interval=30
|
|
||||||
#T_WARN=70
|
|
||||||
#T_CRIT=90
|
|
||||||
#SENSOR_CHIP=""
|
|
||||||
# where SENSOR_CHIP can be find with sensors output
|
|
||||||
# can be used also for GPU temperature or other temperature sensors lm-sensors detects.
|
|
||||||
|
|
||||||
# showing name of connected network (enable for wifi use)
|
|
||||||
#[net]
|
|
||||||
#label=
|
|
||||||
#command=echo "$(LANG=C nmcli d | grep connected | awk '{print $4}') | head -n1"
|
|
||||||
#interval=30
|
|
||||||
|
|
||||||
[bandwidth]
|
|
||||||
command=~/.config/i3/scripts/bandwidth2
|
|
||||||
interval=persist
|
|
||||||
|
|
||||||
#[vpn]
|
|
||||||
#command=~/.config/i3/scripts/vpn
|
|
||||||
#init_color=#FFFF00
|
|
||||||
#on_color=#00FF00
|
|
||||||
#label=VPN:
|
|
||||||
#interval=5
|
|
||||||
|
|
||||||
# Battery indicator
|
|
||||||
[battery]
|
|
||||||
command=~/.config/i3/scripts/battery
|
|
||||||
# change this to battery-pinebook-pro if you are running on pinebook-pro
|
|
||||||
label=
|
|
||||||
interval=30
|
|
||||||
|
|
||||||
#[simple-2]
|
|
||||||
#full_text=: :
|
|
||||||
#color=#717171
|
|
||||||
|
|
||||||
[pavucontrol]
|
|
||||||
full_text=♪
|
|
||||||
command=pavucontrol
|
|
||||||
|
|
||||||
[volume]
|
|
||||||
command=~/.config/i3/scripts/volume
|
|
||||||
interval=2
|
|
||||||
|
|
||||||
# display keyboard layout name
|
|
||||||
# for keyboard layouts switcher
|
|
||||||
# see i3 config file
|
|
||||||
# this needs xkblayout-state installed from the AUR:
|
|
||||||
# https://aur.archlinux.org/packages/xkblayout-state-git
|
|
||||||
#[keyboard-layout]
|
|
||||||
#command=~/.config/i3/scripts/keyboard-layout
|
|
||||||
#interval=2
|
|
||||||
|
|
||||||
#[keybindings]
|
|
||||||
#full_text=
|
|
||||||
#command=~/.config/i3/scripts/keyhint
|
|
||||||
|
|
||||||
# power-profiles-daemon implementation:
|
|
||||||
# needs package power-profiles-daemon installed and the service running see here:
|
|
||||||
# https://wiki.archlinux.org/title/CPU_frequency_scaling#power-profiles-daemon
|
|
||||||
|
|
||||||
#set power-profile
|
|
||||||
#[ppd_menu]
|
|
||||||
#full_text=
|
|
||||||
#command=~/.config/i3/scripts/power-profiles
|
|
||||||
#color=#407437
|
|
||||||
|
|
||||||
#Show the current power-profile
|
|
||||||
#[ppd-status]
|
|
||||||
#command=~/.config/i3/scripts/ppd-status
|
|
||||||
#interval=5
|
|
||||||
|
|
||||||
[time]
|
|
||||||
#label=
|
|
||||||
command=date '+%a %d %b %H:%M:%S'
|
|
||||||
interval=1
|
|
||||||
|
|
||||||
[shutdown_menu]
|
|
||||||
full_text=
|
|
||||||
command=~/.config/i3/scripts/powermenu
|
|
||||||
|
|
||||||
#[simple-2]
|
|
||||||
#full_text=: :
|
|
||||||
#color=#717171
|
|
||||||
@@ -1,100 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# audio-device-switch - audio device switch with a keybind
|
|
||||||
# Adapted from this:
|
|
||||||
# https://gist.githubusercontent.com/kbravh/1117a974f89cc53664e55823a55ac320/raw/9d04a10ae925074536047ae8100c6b0dbfc303d6/audio-device-switch.sh
|
|
||||||
# Readme: https://gist.github.com/kbravh/1117a974f89cc53664e55823a55ac320
|
|
||||||
# Creator: https://github.com/kbravh
|
|
||||||
|
|
||||||
# Audio Output Switcher
|
|
||||||
# This script will cycle to the next available audio output device.
|
|
||||||
# It can be tied to a hotkey to easily be triggered.
|
|
||||||
# This is handy, for example, for swapping between speakers and headphones.
|
|
||||||
# This script will work on systems running PulseAudio or Pipewire services.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Check which sound server is running
|
|
||||||
if pgrep pulseaudio >/dev/null; then
|
|
||||||
sound_server="pulseaudio"
|
|
||||||
elif pgrep pipewire >/dev/null; then
|
|
||||||
sound_server="pipewire"
|
|
||||||
else
|
|
||||||
echo "Neither PulseAudio nor PipeWire is running."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Grab a count of how many audio sinks we have
|
|
||||||
if [[ "$sound_server" == "pulseaudio" ]]; then
|
|
||||||
sink_count=$(pacmd list-sinks | grep -c "index:[[:space:]][[:digit:]]")
|
|
||||||
# Create an array of the actual sink IDs
|
|
||||||
sinks=()
|
|
||||||
mapfile -t sinks < <(pacmd list-sinks | grep 'index:[[:space:]][[:digit:]]' | sed -n -e 's/.*index:[[:space:]]\([[:digit:]]\)/\1/p')
|
|
||||||
# Get the ID of the active sink
|
|
||||||
active_sink=$(pacmd list-sinks | sed -n -e 's/[[:space:]]*\*[[:space:]]index:[[:space:]]\([[:digit:]]\)/\1/p')
|
|
||||||
|
|
||||||
elif [[ "$sound_server" == "pipewire" ]]; then
|
|
||||||
sink_count=$(pactl list sinks | grep -c "Sink #[[:digit:]]")
|
|
||||||
# Create an array of the actual sink IDs
|
|
||||||
sinks=()
|
|
||||||
mapfile -t sinks < <(pactl list sinks | grep 'Sink #[[:digit:]]' | sed -n -e 's/.*Sink #\([[:digit:]]\)/\1/p')
|
|
||||||
# Get the ID of the active sink
|
|
||||||
active_sink_name=$(pactl info | grep 'Default Sink:' | sed -n -e 's/.*Default Sink:[[:space:]]\+\(.*\)/\1/p')
|
|
||||||
active_sink=$(pactl list sinks | grep -B 2 "$active_sink_name" | sed -n -e 's/Sink #\([[:digit:]]\)/\1/p' | head -n 1)
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Get the ID of the last sink in the array
|
|
||||||
final_sink=${sinks[$((sink_count - 1))]}
|
|
||||||
|
|
||||||
# Find the index of the active sink
|
|
||||||
for index in "${!sinks[@]}"; do
|
|
||||||
if [[ "${sinks[$index]}" == "$active_sink" ]]; then
|
|
||||||
active_sink_index=$index
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Default to the first sink in the list
|
|
||||||
next_sink=${sinks[0]}
|
|
||||||
next_sink_index=0
|
|
||||||
|
|
||||||
# If we're not at the end of the list, move up the list
|
|
||||||
if [[ $active_sink -ne $final_sink ]]; then
|
|
||||||
next_sink_index=$((active_sink_index + 1))
|
|
||||||
next_sink=${sinks[$next_sink_index]}
|
|
||||||
fi
|
|
||||||
|
|
||||||
#change the default sink
|
|
||||||
if [[ "$sound_server" == "pulseaudio" ]]; then
|
|
||||||
pacmd "set-default-sink ${next_sink}"
|
|
||||||
elif [[ "$sound_server" == "pipewire" ]]; then
|
|
||||||
# Get the name of the next sink
|
|
||||||
next_sink_name=$(pactl list sinks | grep -C 2 "Sink #$next_sink" | sed -n -e 's/.*Name:[[:space:]]\+\(.*\)/\1/p' | head -n 1)
|
|
||||||
pactl set-default-sink "$next_sink_name"
|
|
||||||
fi
|
|
||||||
|
|
||||||
#move all inputs to the new sink
|
|
||||||
if [[ "$sound_server" == "pulseaudio" ]]; then
|
|
||||||
for app in $(pacmd list-sink-inputs | sed -n -e 's/index:[[:space:]]\([[:digit:]]\)/\1/p'); do
|
|
||||||
pacmd "move-sink-input $app $next_sink"
|
|
||||||
done
|
|
||||||
elif [[ "$sound_server" == "pipewire" ]]; then
|
|
||||||
for app in $(pactl list sink-inputs | sed -n -e 's/.*Sink Input #\([[:digit:]]\)/\1/p'); do
|
|
||||||
pactl "move-sink-input $app $next_sink"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Create a list of the sink descriptions
|
|
||||||
sink_descriptions=()
|
|
||||||
if [[ "$sound_server" == "pulseaudio" ]]; then
|
|
||||||
mapfile -t sink_descriptions < <(pacmd list-sinks | sed -n -e 's/.*alsa.name[[:space:]]=[[:space:]]"\(.*\)"/\1/p')
|
|
||||||
elif [[ "$sound_server" == "pipewire" ]]; then
|
|
||||||
mapfile -t sink_descriptions < <(pactl list sinks | sed -n -e 's/.*Description:[[:space:]]\+\(.*\)/\1/p')
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Find the index that matches our new active sink
|
|
||||||
for sink_index in "${!sink_descriptions[@]}"; do
|
|
||||||
if [[ "$sink_index" == "$next_sink_index" ]]; then
|
|
||||||
notify-send -i audio-volume-high "Sound output switched to:" "${sink_descriptions[$sink_index]}"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
@@ -1,109 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
#
|
|
||||||
# Copyright (C) 2015 James Murphy
|
|
||||||
# Licensed under the terms of the GNU GPL v2 only.
|
|
||||||
#
|
|
||||||
# i3blocks blocklet script to monitor bandwidth usage
|
|
||||||
# detecting active device device
|
|
||||||
# option to set used unit
|
|
||||||
|
|
||||||
iface="${BLOCK_INSTANCE}"
|
|
||||||
iface="${IFACE:-$iface}"
|
|
||||||
dt="${DT:-3}"
|
|
||||||
unit="${UNIT:-MB}"
|
|
||||||
LABEL="${LABEL:-<span font='FontAwesome'>⇄ </span>}" # down arrow up arrow
|
|
||||||
printf_command="${PRINTF_COMMAND:-"printf \"${LABEL}%1.0f/%1.0f %s/s\\n\", rx, wx, unit;"}"
|
|
||||||
|
|
||||||
function default_interface {
|
|
||||||
ip route | awk '/^default via/ {print $5; exit}'
|
|
||||||
}
|
|
||||||
|
|
||||||
function check_proc_net_dev {
|
|
||||||
if [ ! -f "/proc/net/dev" ]; then
|
|
||||||
echo "/proc/net/dev not found"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function list_interfaces {
|
|
||||||
check_proc_net_dev
|
|
||||||
echo "Interfaces in /proc/net/dev:"
|
|
||||||
grep -o "^[^:]\\+:" /proc/net/dev | tr -d " :"
|
|
||||||
}
|
|
||||||
|
|
||||||
while getopts i:t:u:p:lh opt; do
|
|
||||||
case "$opt" in
|
|
||||||
i) iface="$OPTARG" ;;
|
|
||||||
t) dt="$OPTARG" ;;
|
|
||||||
u) unit="$OPTARG" ;;
|
|
||||||
p) printf_command="$OPTARG" ;;
|
|
||||||
l) list_interfaces && exit 0 ;;
|
|
||||||
h) printf \
|
|
||||||
"Usage: bandwidth3 [-i interface] [-t time] [-u unit] [-p printf_command] [-l] [-h]
|
|
||||||
Options:
|
|
||||||
-i\tNetwork interface to measure. Default determined using \`ip route\`.
|
|
||||||
-t\tTime interval in seconds between measurements. Default: 3
|
|
||||||
-u\tUnits to measure bytes in. Default: Mb
|
|
||||||
\tAllowed units: Kb, KB, Mb, MB, Gb, GB, Tb, TB
|
|
||||||
\tUnits may have optional it/its/yte/ytes on the end, e.g. Mbits, KByte
|
|
||||||
-p\tAwk command to be called after a measurement is made.
|
|
||||||
\tDefault: printf \"<span font='FontAwesome'> </span>%%-5.1f/%%5.1f %%s/s\\\\n\", rx, wx, unit;
|
|
||||||
\tExposed variables: rx, wx, tx, unit, iface
|
|
||||||
-l\tList available interfaces in /proc/net/dev
|
|
||||||
-h\tShow this help text
|
|
||||||
" && exit 0;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
check_proc_net_dev
|
|
||||||
|
|
||||||
iface="${iface:-$(default_interface)}"
|
|
||||||
while [ -z "$iface" ]; do
|
|
||||||
echo No default interface
|
|
||||||
sleep "$dt"
|
|
||||||
iface=$(default_interface)
|
|
||||||
done
|
|
||||||
|
|
||||||
case "$unit" in
|
|
||||||
Kb|Kbit|Kbits) bytes_per_unit=$((1024 / 8));;
|
|
||||||
KB|KByte|KBytes) bytes_per_unit=$((1024));;
|
|
||||||
Mb|Mbit|Mbits) bytes_per_unit=$((1024 * 1024 / 8));;
|
|
||||||
MB|MByte|MBytes) bytes_per_unit=$((1024 * 1024));;
|
|
||||||
Gb|Gbit|Gbits) bytes_per_unit=$((1024 * 1024 * 1024 / 8));;
|
|
||||||
GB|GByte|GBytes) bytes_per_unit=$((1024 * 1024 * 1024));;
|
|
||||||
Tb|Tbit|Tbits) bytes_per_unit=$((1024 * 1024 * 1024 * 1024 / 8));;
|
|
||||||
TB|TByte|TBytes) bytes_per_unit=$((1024 * 1024 * 1024 * 1024));;
|
|
||||||
*) echo Bad unit "$unit" && exit 1;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
scalar=$((bytes_per_unit * dt))
|
|
||||||
init_line=$(cat /proc/net/dev | grep "^[ ]*$iface:")
|
|
||||||
if [ -z "$init_line" ]; then
|
|
||||||
echo Interface not found in /proc/net/dev: "$iface"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
init_received=$(awk '{print $2}' <<< $init_line)
|
|
||||||
init_sent=$(awk '{print $10}' <<< $init_line)
|
|
||||||
|
|
||||||
(while true; do cat /proc/net/dev; sleep "$dt"; done) |\
|
|
||||||
stdbuf -oL grep "^[ ]*$iface:" |\
|
|
||||||
awk -v scalar="$scalar" -v unit="$unit" -v iface="$iface" '
|
|
||||||
BEGIN {
|
|
||||||
old_received='"$init_received"'
|
|
||||||
old_sent='"$init_sent"'
|
|
||||||
}
|
|
||||||
{
|
|
||||||
received=$2
|
|
||||||
sent=$10
|
|
||||||
rx=(received-old_received)/scalar
|
|
||||||
wx=(sent-old_sent)/scalar
|
|
||||||
tx=rx+wx
|
|
||||||
old_received=received
|
|
||||||
old_sent=sent
|
|
||||||
if (rx >= 0 && wx >= 0) {
|
|
||||||
'"$printf_command"'
|
|
||||||
fflush(stdout)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
'
|
|
||||||
@@ -1,106 +0,0 @@
|
|||||||
#!/usr/bin/env python3
|
|
||||||
#
|
|
||||||
# Copyright (C) 2016 James Murphy
|
|
||||||
# Licensed under the GPL version 2 only
|
|
||||||
#
|
|
||||||
# A battery indicator blocklet script for i3blocks
|
|
||||||
|
|
||||||
from subprocess import check_output
|
|
||||||
import os
|
|
||||||
import re
|
|
||||||
|
|
||||||
config = dict(os.environ)
|
|
||||||
status = check_output(['acpi'], universal_newlines=True)
|
|
||||||
|
|
||||||
if not status:
|
|
||||||
# stands for no battery found
|
|
||||||
color = config.get("color_10", "red")
|
|
||||||
fulltext = "<span color='{}'><span font='FontAwesome'>\uf00d \uf240</span></span>".format(color)
|
|
||||||
percentleft = 100
|
|
||||||
else:
|
|
||||||
# if there is more than one battery in one laptop, the percentage left is
|
|
||||||
# available for each battery separately, although state and remaining
|
|
||||||
# time for overall block is shown in the status of the first battery
|
|
||||||
batteries = status.split("\n")
|
|
||||||
state_batteries=[]
|
|
||||||
commasplitstatus_batteries=[]
|
|
||||||
percentleft_batteries=[]
|
|
||||||
time = ""
|
|
||||||
for battery in batteries:
|
|
||||||
if battery!='':
|
|
||||||
state_batteries.append(battery.split(": ")[1].split(", ")[0])
|
|
||||||
commasplitstatus = battery.split(", ")
|
|
||||||
if not time:
|
|
||||||
time = commasplitstatus[-1].strip()
|
|
||||||
# check if it matches a time
|
|
||||||
time = re.match(r"(\d+):(\d+)", time)
|
|
||||||
if time:
|
|
||||||
time = ":".join(time.groups())
|
|
||||||
timeleft = " ({})".format(time)
|
|
||||||
else:
|
|
||||||
timeleft = ""
|
|
||||||
|
|
||||||
p = int(commasplitstatus[1].rstrip("%\n"))
|
|
||||||
if p>0:
|
|
||||||
percentleft_batteries.append(p)
|
|
||||||
commasplitstatus_batteries.append(commasplitstatus)
|
|
||||||
state = state_batteries[0]
|
|
||||||
commasplitstatus = commasplitstatus_batteries[0]
|
|
||||||
if percentleft_batteries:
|
|
||||||
percentleft = int(sum(percentleft_batteries)/len(percentleft_batteries))
|
|
||||||
else:
|
|
||||||
percentleft = 0
|
|
||||||
|
|
||||||
# stands for charging
|
|
||||||
color = config.get("color_charging", "yellow")
|
|
||||||
FA_LIGHTNING = "<span color='{}'><span font='FontAwesome'>\uf0e7</span></span>".format(color)
|
|
||||||
|
|
||||||
# stands for plugged in
|
|
||||||
FA_PLUG = "<span font='FontAwesome'>\uf1e6</span>"
|
|
||||||
|
|
||||||
# stands for using battery
|
|
||||||
FA_BATTERY = "<span font='FontAwesome'>\uf240</span>"
|
|
||||||
|
|
||||||
# stands for unknown status of battery
|
|
||||||
FA_QUESTION = "<span font='FontAwesome'>\uf128</span>"
|
|
||||||
|
|
||||||
|
|
||||||
if state == "Discharging":
|
|
||||||
fulltext = FA_BATTERY + " "
|
|
||||||
elif state == "Full":
|
|
||||||
fulltext = FA_PLUG + " "
|
|
||||||
timeleft = ""
|
|
||||||
elif state == "Unknown":
|
|
||||||
fulltext = FA_QUESTION + " " + FA_BATTERY + " "
|
|
||||||
timeleft = ""
|
|
||||||
else:
|
|
||||||
fulltext = FA_LIGHTNING + " " + FA_PLUG + " "
|
|
||||||
|
|
||||||
def color(percent):
|
|
||||||
if percent < 10:
|
|
||||||
# exit code 33 will turn background red
|
|
||||||
return config.get("color_10", "#FFFFFF")
|
|
||||||
if percent < 20:
|
|
||||||
return config.get("color_20", "#FF3300")
|
|
||||||
if percent < 30:
|
|
||||||
return config.get("color_30", "#FF6600")
|
|
||||||
if percent < 40:
|
|
||||||
return config.get("color_40", "#FF9900")
|
|
||||||
if percent < 50:
|
|
||||||
return config.get("color_50", "#FFCC00")
|
|
||||||
if percent < 60:
|
|
||||||
return config.get("color_60", "#FFFF00")
|
|
||||||
if percent < 70:
|
|
||||||
return config.get("color_70", "#FFFF33")
|
|
||||||
if percent < 80:
|
|
||||||
return config.get("color_80", "#FFFF66")
|
|
||||||
return config.get("color_full", "#FFFFFF")
|
|
||||||
|
|
||||||
form = '<span color="{}">{}%</span>'
|
|
||||||
fulltext += form.format(color(percentleft), percentleft)
|
|
||||||
#fulltext += timeleft
|
|
||||||
|
|
||||||
print(fulltext)
|
|
||||||
print(fulltext)
|
|
||||||
if percentleft < 10:
|
|
||||||
exit(33)
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# simple Shellscript for i3blocks on Pinebook pro
|
|
||||||
# 05012020 geri123 //at// gmx.net Gerhard S.
|
|
||||||
# battery-symbols: you need the awesome-terminal-font package installed
|
|
||||||
|
|
||||||
PERCENT=$(cat /sys/class/power_supply/cw2015-battery/capacity)
|
|
||||||
STATUS=$(cat /sys/class/power_supply/cw2015-battery/status)
|
|
||||||
case $((
|
|
||||||
$PERCENT >= 0 && $PERCENT <= 20 ? 1 :
|
|
||||||
$PERCENT > 20 && $PERCENT <= 40 ? 2 :
|
|
||||||
$PERCENT > 40 && $PERCENT <= 60 ? 3 :
|
|
||||||
$PERCENT > 60 && $PERCENT <= 80 ? 4 : 5)) in
|
|
||||||
#
|
|
||||||
(1) echo $STATUS:"" :$PERCENT%;;
|
|
||||||
(2) echo $STATUS:"" :$PERCENT%;;
|
|
||||||
(3) echo $STATUS:"" :$PERCENT%;;
|
|
||||||
(4) echo $STATUS:"" :$PERCENT%;;
|
|
||||||
(5) echo $STATUS:"" :$PERCENT%;;
|
|
||||||
esac
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# simple screenlocker using i3lock that creates ablurred screenshot to overlay
|
|
||||||
|
|
||||||
PICTURE=/tmp/i3lock.png
|
|
||||||
SCREENSHOT="scrot -z $PICTURE"
|
|
||||||
|
|
||||||
BLUR="5x4"
|
|
||||||
|
|
||||||
$SCREENSHOT
|
|
||||||
magick $PICTURE -blur $BLUR $PICTURE
|
|
||||||
i3lock -i $PICTURE
|
|
||||||
shred $PICTURE
|
|
||||||
rm $PICTURE
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
#!/usr/bin/perl
|
|
||||||
#
|
|
||||||
# Copyright 2014 Pierre Mavro <deimos@deimos.fr>
|
|
||||||
# Copyright 2014 Vivien Didelot <vivien@didelot.org>
|
|
||||||
# Copyright 2014 Andreas Guldstrand <andreas.guldstrand@gmail.com>
|
|
||||||
#
|
|
||||||
# Licensed under the terms of the GNU GPL v3, or any later version.
|
|
||||||
|
|
||||||
use strict;
|
|
||||||
use warnings;
|
|
||||||
use utf8;
|
|
||||||
use Getopt::Long;
|
|
||||||
|
|
||||||
# default values
|
|
||||||
my $t_warn = $ENV{T_WARN} // 50;
|
|
||||||
my $t_crit = $ENV{T_CRIT} // 80;
|
|
||||||
my $cpu_usage = -1;
|
|
||||||
my $decimals = $ENV{DECIMALS} // 0;
|
|
||||||
my $label = $ENV{LABEL} // "";
|
|
||||||
|
|
||||||
sub help {
|
|
||||||
print "Usage: cpu_usage [-w <warning>] [-c <critical>] [-d <decimals>]\n";
|
|
||||||
print "-w <percent>: warning threshold to become yellow\n";
|
|
||||||
print "-c <percent>: critical threshold to become red\n";
|
|
||||||
print "-d <decimals>: Use <decimals> decimals for percentage (default is $decimals) \n";
|
|
||||||
exit 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
GetOptions("help|h" => \&help,
|
|
||||||
"w=i" => \$t_warn,
|
|
||||||
"c=i" => \$t_crit,
|
|
||||||
"d=i" => \$decimals,
|
|
||||||
);
|
|
||||||
|
|
||||||
# Get CPU usage
|
|
||||||
$ENV{LC_ALL}="en_US"; # if mpstat is not run under en_US locale, things may break, so make sure it is
|
|
||||||
open (MPSTAT, 'mpstat 1 1 |') or die;
|
|
||||||
while (<MPSTAT>) {
|
|
||||||
if (/^.*\s+(\d+\.\d+)[\s\x00]?$/) {
|
|
||||||
$cpu_usage = 100 - $1; # 100% - %idle
|
|
||||||
last;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
close(MPSTAT);
|
|
||||||
|
|
||||||
$cpu_usage eq -1 and die 'Can\'t find CPU information';
|
|
||||||
|
|
||||||
# Print short_text, full_text
|
|
||||||
print "${label}";
|
|
||||||
printf "%02.${decimals}f%%\n", $cpu_usage;
|
|
||||||
print "${label}";
|
|
||||||
printf "%02.${decimals}f%%\n", $cpu_usage;
|
|
||||||
|
|
||||||
# Print color, if needed
|
|
||||||
if ($cpu_usage >= $t_crit) {
|
|
||||||
print "#FF0000\n";
|
|
||||||
exit 33;
|
|
||||||
} elsif ($cpu_usage >= $t_warn) {
|
|
||||||
print "#FFFC00\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
exit 0;
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# script to monitor temperatures in waybar/i3blocks e.t.c.
|
|
||||||
# example only use `sensors` to find your names to replace `Tdie|Tctl|Package`
|
|
||||||
# example output part from sensors:
|
|
||||||
# zenpower-pci-00c3
|
|
||||||
# Adapter: PCI adapter
|
|
||||||
# SVI2_Core: 1.03 V
|
|
||||||
# SVI2_SoC: 994.00 mV
|
|
||||||
# Tdie: +53.1°C
|
|
||||||
# Tctl: +53.1°C
|
|
||||||
# Tccd1: +42.5°C
|
|
||||||
# Tccd2: +43.2°C
|
|
||||||
|
|
||||||
temp=$(sensors 2>/dev/null | grep -E 'Tdie|Tctl|Package id 0' | grep -oP '\+?[0-9]+\.\d+(?=°C)' | tr -d '+' | head -n1)
|
|
||||||
|
|
||||||
echo "${temp}°C"
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# Copyright (C) 2014 Julien Bonjean <julien@bonjean.info>
|
|
||||||
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
DIR="${DIR:-$BLOCK_INSTANCE}"
|
|
||||||
DIR="${DIR:-$HOME}"
|
|
||||||
ALERT_LOW="${ALERT_LOW:-$1}"
|
|
||||||
ALERT_LOW="${ALERT_LOW:-10}" # color will turn red under this value (default: 10%)
|
|
||||||
|
|
||||||
LOCAL_FLAG="-l"
|
|
||||||
if [ "$1" = "-n" ] || [ "$2" = "-n" ]; then
|
|
||||||
LOCAL_FLAG=""
|
|
||||||
fi
|
|
||||||
|
|
||||||
df -h -P $LOCAL_FLAG "$DIR" | awk -v label="$LABEL" -v alert_low=$ALERT_LOW '
|
|
||||||
/\/.*/ {
|
|
||||||
# full text
|
|
||||||
print label $4
|
|
||||||
|
|
||||||
# short text
|
|
||||||
print label $4
|
|
||||||
|
|
||||||
use=$5
|
|
||||||
|
|
||||||
# no need to continue parsing
|
|
||||||
exit 0
|
|
||||||
}
|
|
||||||
|
|
||||||
END {
|
|
||||||
gsub(/%$/,"",use)
|
|
||||||
if (100 - use < alert_low) {
|
|
||||||
# color
|
|
||||||
print "#FF0000"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
'
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Copyright (C) 2025 Johannes Kamprad
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
# empty_workspace - open a new workspace automatically named with next number on i3
|
|
||||||
|
|
||||||
|
|
||||||
MAX_DESKTOPS=20
|
|
||||||
|
|
||||||
WORKSPACES=$(seq -s '\n' 1 1 ${MAX_DESKTOPS})
|
|
||||||
|
|
||||||
EMPTY_WORKSPACE=$( (i3-msg -t get_workspaces | tr ',' '\n' | grep num | awk -F: '{print int($2)}' ; \
|
|
||||||
echo -e ${WORKSPACES} ) | sort -n | uniq -u | head -n 1)
|
|
||||||
|
|
||||||
i3-msg workspace ${EMPTY_WORKSPACE}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# script to monitor temperatures in waybar/i3blocks e.t.c.
|
|
||||||
# example only use `sensors` to find your sensor to replace `i915-pci-0600`
|
|
||||||
# example output part from sensors:
|
|
||||||
# i915-pci-0600
|
|
||||||
# Adapter: PCI adapter
|
|
||||||
# in0: 630.00 mV
|
|
||||||
# fan1: 0 RPM
|
|
||||||
# temp1: +55.0°C
|
|
||||||
# energy1: 1.26 MJ
|
|
||||||
|
|
||||||
# examples using Nvidia tools:
|
|
||||||
#echo "$(nvidia-smi --format=csv,noheader --query-gpu=temperature.gpu) °C"
|
|
||||||
#echo "$(nvidia-settings -q gpucoretemp -t) °C"
|
|
||||||
# example using sensor name:
|
|
||||||
sensors 2>/dev/null | awk '/i915-pci-0600/{flag=1} flag && /temp1/ {gsub("\\+", "", $2); print $2, $3; exit}'
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# needed for nwg-looks
|
|
||||||
# usage: import-gsettings
|
|
||||||
config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
|
|
||||||
if [ ! -f "$config" ]; then exit 1; fi
|
|
||||||
|
|
||||||
gnome_schema="org.gnome.desktop.interface"
|
|
||||||
gtk_theme="$(grep 'gtk-theme-name' "$config" | cut -d'=' -f2)"
|
|
||||||
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | cut -d'=' -f2)"
|
|
||||||
cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | cut -d'=' -f2)"
|
|
||||||
font_name="$(grep 'gtk-font-name' "$config" | cut -d'=' -f2)"
|
|
||||||
gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
|
|
||||||
gsettings set "$gnome_schema" icon-theme "$icon_theme"
|
|
||||||
gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
|
|
||||||
gsettings set "$gnome_schema" font-name "$font_name"
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# simple yad gui to show default keybindings
|
|
||||||
|
|
||||||
Main() {
|
|
||||||
source /usr/share/endeavouros/scripts/eos-script-lib-yad || return 1
|
|
||||||
|
|
||||||
local command=(
|
|
||||||
eos_yad --title="EndeavourOS i3-wm keybindings:" --no-buttons --geometry=400x345-15-400 --list
|
|
||||||
--column=key: --column=description: --column=command:
|
|
||||||
"ESC" "close this app" ""
|
|
||||||
"=" "modkey" "(set mod Mod4)"
|
|
||||||
"+enter" "open a terminal" ""
|
|
||||||
"+Shift+n" "new empty workspace" ""
|
|
||||||
"+w" "open Browser" ""
|
|
||||||
"+n" "open Filebrowser" ""
|
|
||||||
"+d" "app menu" ""
|
|
||||||
"+q" "close focused app" ""
|
|
||||||
"Print-key" "screenshot" ""
|
|
||||||
"+Shift+e" "logout menu" ""
|
|
||||||
"F1" "open keybinding helper" ""
|
|
||||||
)
|
|
||||||
|
|
||||||
"${command[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
Main "$@"
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# keyhint rofi tool to search used keybindings in i3wm
|
|
||||||
|
|
||||||
I3_CONFIG=$HOME/.config/i3/config
|
|
||||||
mod_key=$(sed -nre 's/^set \$mod (.*)/\1/p' ${I3_CONFIG})
|
|
||||||
grep "^bindsym" ${I3_CONFIG} \
|
|
||||||
| sed "s/-\(-\w\+\)\+//g;s/\$mod/${mod_key}/g;s/Mod1/Alt/g;s/exec //;s/bindsym //;s/^\s\+//;s/^\([^ ]\+\) \(.\+\)$/\2: \1/;s/^\s\+//" \
|
|
||||||
| tr -s ' ' \
|
|
||||||
| rofi -dmenu -theme ~/.config/rofi/rofikeyhint.rasi
|
|
||||||
@@ -1,69 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# Copyright (C) 2014 Julien Bonjean <julien@bonjean.info>
|
|
||||||
|
|
||||||
# This program is free software: you can redistribute it and/or modify
|
|
||||||
# it under the terms of the GNU General Public License as published by
|
|
||||||
# the Free Software Foundation, either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
TYPE="${BLOCK_INSTANCE:-mem}"
|
|
||||||
|
|
||||||
awk -v type=$TYPE '
|
|
||||||
/^MemTotal:/ {
|
|
||||||
mem_total=$2
|
|
||||||
}
|
|
||||||
/^MemFree:/ {
|
|
||||||
mem_free=$2
|
|
||||||
}
|
|
||||||
/^Buffers:/ {
|
|
||||||
mem_free+=$2
|
|
||||||
}
|
|
||||||
/^Cached:/ {
|
|
||||||
mem_free+=$2
|
|
||||||
}
|
|
||||||
/^SwapTotal:/ {
|
|
||||||
swap_total=$2
|
|
||||||
}
|
|
||||||
/^SwapFree:/ {
|
|
||||||
swap_free=$2
|
|
||||||
}
|
|
||||||
END {
|
|
||||||
if (type == "swap") {
|
|
||||||
free=swap_free/1024/1024
|
|
||||||
used=(swap_total-swap_free)/1024/1024
|
|
||||||
total=swap_total/1024/1024
|
|
||||||
} else {
|
|
||||||
free=mem_free/1024/1024
|
|
||||||
used=(mem_total-mem_free)/1024/1024
|
|
||||||
total=mem_total/1024/1024
|
|
||||||
}
|
|
||||||
|
|
||||||
pct=0
|
|
||||||
if (total > 0) {
|
|
||||||
pct=used/total*100
|
|
||||||
}
|
|
||||||
|
|
||||||
# full text
|
|
||||||
# printf("%.1fG/%.1fG (%.f%%)\n", used, total, pct)
|
|
||||||
|
|
||||||
# short text
|
|
||||||
printf("%02.f%%\n", pct)
|
|
||||||
|
|
||||||
# color
|
|
||||||
if (pct > 90) {
|
|
||||||
print("#FF0000")
|
|
||||||
} else if (pct > 80) {
|
|
||||||
print("#FFAE00")
|
|
||||||
} else if (pct > 70) {
|
|
||||||
print("#FFF600")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
' /proc/meminfo
|
|
||||||
@@ -1,471 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# openweater - OpenWeatherMap Weather Fetcher for Waybar/Status Bars
|
|
||||||
#
|
|
||||||
# Copyright (C) 2025 Johannes Kamprad
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
|
|
||||||
# openweater - OpenWeatherMap Weather Fetcher for Waybar/Status Bars
|
|
||||||
# Secure API key handling with configurable locations
|
|
||||||
# including setup script and help
|
|
||||||
# Options:
|
|
||||||
# -h, --help Show this help message
|
|
||||||
# -c, --city-id ID Override city ID (required if not in config)
|
|
||||||
# -k, --api-key KEY Override API key (not recommended, use config file)
|
|
||||||
# -u, --units UNITS Units: metric, imperial, kelvin (default: $DEFAULT_UNITS)
|
|
||||||
# -f, --force-refresh Force refresh (ignore cache)
|
|
||||||
# --setup Interactive setup wizard
|
|
||||||
# --show-config Show current configuration
|
|
||||||
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
# Set C locale to avoid German decimal formatting issues
|
|
||||||
export LC_NUMERIC=C
|
|
||||||
export LC_ALL=C
|
|
||||||
|
|
||||||
# Colors for output
|
|
||||||
RED='\033[0;31m'
|
|
||||||
GREEN='\033[0;32m'
|
|
||||||
YELLOW='\033[1;33m'
|
|
||||||
NC='\033[0m' # No Color
|
|
||||||
|
|
||||||
# Default configuration (no default location)
|
|
||||||
DEFAULT_UNITS="metric"
|
|
||||||
CONFIG_DIR="${XDG_CONFIG_HOME:-$HOME/.config}"
|
|
||||||
CONFIG_FILE="$CONFIG_DIR/openweather/config"
|
|
||||||
CACHE_DIR="${XDG_CACHE_HOME:-$HOME/.cache}/openweather"
|
|
||||||
CACHE_FILE="$CACHE_DIR/weather_data"
|
|
||||||
CACHE_DURATION=600 # 10 minutes
|
|
||||||
|
|
||||||
# Logging functions
|
|
||||||
log_error() {
|
|
||||||
echo -e "${RED}[ERROR]${NC} $*" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
log_warn() {
|
|
||||||
echo -e "${YELLOW}[WARN]${NC} $*" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
# Show help
|
|
||||||
show_help() {
|
|
||||||
cat << EOF
|
|
||||||
Usage: $(basename "$0") [OPTIONS]
|
|
||||||
|
|
||||||
Secure OpenWeatherMap weather fetcher with configurable locations.
|
|
||||||
|
|
||||||
Options:
|
|
||||||
-h, --help Show this help message
|
|
||||||
-c, --city-id ID Override city ID (required if not in config)
|
|
||||||
-k, --api-key KEY Override API key (not recommended, use config file)
|
|
||||||
-u, --units UNITS Units: metric, imperial, kelvin (default: $DEFAULT_UNITS)
|
|
||||||
-f, --force-refresh Force refresh (ignore cache)
|
|
||||||
--setup Interactive setup wizard
|
|
||||||
--show-config Show current configuration
|
|
||||||
|
|
||||||
Configuration:
|
|
||||||
Config file: $CONFIG_FILE
|
|
||||||
|
|
||||||
Create config file with:
|
|
||||||
OPENWEATHER_API_KEY="your_api_key_here"
|
|
||||||
OPENWEATHER_CITY_ID="your_city_id" # Required
|
|
||||||
OPENWEATHER_UNITS="metric" # Optional
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
$(basename "$0") # Use config file settings
|
|
||||||
$(basename "$0") --city-id 5128581 # New York
|
|
||||||
$(basename "$0") --units imperial # Fahrenheit
|
|
||||||
$(basename "$0") --setup # Run setup wizard
|
|
||||||
|
|
||||||
Get your free API key at: https://openweathermap.org/api
|
|
||||||
Find city IDs at: https://openweathermap.org/find
|
|
||||||
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
# Check dependencies
|
|
||||||
check_dependencies() {
|
|
||||||
local missing_deps=()
|
|
||||||
|
|
||||||
for cmd in jq curl; do
|
|
||||||
if ! command -v "$cmd" >/dev/null 2>&1; then
|
|
||||||
missing_deps+=("$cmd")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [[ ${#missing_deps[@]} -gt 0 ]]; then
|
|
||||||
log_error "Missing required dependencies: ${missing_deps[*]}"
|
|
||||||
echo "Install with: sudo pacman -S ${missing_deps[*]}"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Load configuration
|
|
||||||
load_config() {
|
|
||||||
# Set defaults (no default city ID)
|
|
||||||
OPENWEATHER_CITY_ID=""
|
|
||||||
OPENWEATHER_UNITS="$DEFAULT_UNITS"
|
|
||||||
|
|
||||||
# Load from config file if it exists
|
|
||||||
if [[ -f "$CONFIG_FILE" ]]; then
|
|
||||||
source "$CONFIG_FILE"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Override with environment variables if set
|
|
||||||
OPENWEATHER_API_KEY="${OPENWEATHER_API_KEY:-}"
|
|
||||||
OPENWEATHER_CITY_ID="${OPENWEATHER_CITY_ID:-}"
|
|
||||||
OPENWEATHER_UNITS="${OPENWEATHER_UNITS:-$DEFAULT_UNITS}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Validate API key
|
|
||||||
validate_api_key() {
|
|
||||||
if [[ -z "$OPENWEATHER_API_KEY" ]]; then
|
|
||||||
log_error "No API key found!"
|
|
||||||
echo
|
|
||||||
echo "To fix this:"
|
|
||||||
echo "1. Get free API key: https://openweathermap.org/api"
|
|
||||||
echo "2. Run setup wizard: $0 --setup"
|
|
||||||
echo "3. Or set environment variable: export OPENWEATHER_API_KEY=your_key"
|
|
||||||
echo "4. Or create config file: $CONFIG_FILE"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Basic validation (OpenWeatherMap keys are typically 32 chars)
|
|
||||||
if [[ ${#OPENWEATHER_API_KEY} -ne 32 ]]; then
|
|
||||||
log_warn "API key length seems incorrect (expected 32 characters, got ${#OPENWEATHER_API_KEY})"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Validate city ID
|
|
||||||
validate_city_id() {
|
|
||||||
if [[ -z "$OPENWEATHER_CITY_ID" ]]; then
|
|
||||||
log_error "No city ID found!"
|
|
||||||
echo
|
|
||||||
echo "To fix this:"
|
|
||||||
echo "1. Run setup wizard: $0 --setup"
|
|
||||||
echo "2. Or set environment variable: export OPENWEATHER_CITY_ID=your_city_id"
|
|
||||||
echo "3. Or add OPENWEATHER_CITY_ID=\"your_city_id\" to: $CONFIG_FILE"
|
|
||||||
echo "4. Or provide city ID via command line: $0 --city-id your_city_id"
|
|
||||||
echo
|
|
||||||
echo "Find city IDs at: https://openweathermap.org/find"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Basic validation (city IDs are typically numeric)
|
|
||||||
if [[ ! "$OPENWEATHER_CITY_ID" =~ ^[0-9]+$ ]]; then
|
|
||||||
log_warn "City ID format seems incorrect (expected numeric, got: $OPENWEATHER_CITY_ID)"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Setup wizard
|
|
||||||
run_setup() {
|
|
||||||
echo -e "${GREEN}=== OpenWeatherMap Setup Wizard ===${NC}"
|
|
||||||
echo
|
|
||||||
|
|
||||||
# Create config directory
|
|
||||||
mkdir -p "$(dirname "$CONFIG_FILE")"
|
|
||||||
|
|
||||||
# Get API key
|
|
||||||
echo "Get your free API key at: https://openweathermap.org/api"
|
|
||||||
echo
|
|
||||||
echo -n "Enter your OpenWeatherMap API key: "
|
|
||||||
read -r api_key
|
|
||||||
|
|
||||||
if [[ -z "$api_key" ]]; then
|
|
||||||
log_error "API key cannot be empty"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Get city ID (required)
|
|
||||||
echo
|
|
||||||
echo "Find your city ID at: https://openweathermap.org/find"
|
|
||||||
echo -n "Enter city ID: "
|
|
||||||
read -r city_id
|
|
||||||
|
|
||||||
if [[ -z "$city_id" ]]; then
|
|
||||||
log_error "City ID cannot be empty"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Get units (optional)
|
|
||||||
echo
|
|
||||||
echo "Available units: metric (°C), imperial (°F), kelvin (K)"
|
|
||||||
echo -n "Enter units [metric]: "
|
|
||||||
read -r units
|
|
||||||
units="${units:-metric}"
|
|
||||||
|
|
||||||
# Write config file
|
|
||||||
cat > "$CONFIG_FILE" << EOF
|
|
||||||
# OpenWeatherMap Configuration
|
|
||||||
# Generated by $(basename "$0") setup wizard on $(date)
|
|
||||||
|
|
||||||
# Your API key from https://openweathermap.org/api
|
|
||||||
OPENWEATHER_API_KEY="$api_key"
|
|
||||||
|
|
||||||
# City ID from https://openweathermap.org/find
|
|
||||||
OPENWEATHER_CITY_ID="$city_id"
|
|
||||||
|
|
||||||
# Units: metric, imperial, kelvin
|
|
||||||
OPENWEATHER_UNITS="$units"
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# Set secure permissions
|
|
||||||
chmod 600 "$CONFIG_FILE"
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo -e "${GREEN}✅ Configuration saved to: $CONFIG_FILE${NC}"
|
|
||||||
echo -e "${GREEN}✅ File permissions set to 600 (user read/write only)${NC}"
|
|
||||||
echo
|
|
||||||
echo "Testing configuration..."
|
|
||||||
|
|
||||||
# Test the configuration
|
|
||||||
OPENWEATHER_API_KEY="$api_key"
|
|
||||||
OPENWEATHER_CITY_ID="$city_id"
|
|
||||||
OPENWEATHER_UNITS="$units"
|
|
||||||
|
|
||||||
if fetch_weather_data; then
|
|
||||||
echo -e "${GREEN}✅ Configuration test successful!${NC}"
|
|
||||||
else
|
|
||||||
log_error "Configuration test failed. Please check your API key and city ID."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Show current configuration
|
|
||||||
show_config() {
|
|
||||||
echo "=== Current Configuration ==="
|
|
||||||
echo "Config file: $CONFIG_FILE"
|
|
||||||
echo "Cache file: $CACHE_FILE"
|
|
||||||
echo "Cache duration: ${CACHE_DURATION}s"
|
|
||||||
echo
|
|
||||||
|
|
||||||
if [[ -f "$CONFIG_FILE" ]]; then
|
|
||||||
echo "Configuration:"
|
|
||||||
echo " API Key: ${OPENWEATHER_API_KEY:0:8}... (${#OPENWEATHER_API_KEY} chars)"
|
|
||||||
echo " City ID: $OPENWEATHER_CITY_ID"
|
|
||||||
echo " Units: $OPENWEATHER_UNITS"
|
|
||||||
else
|
|
||||||
echo "❌ No configuration file found at: $CONFIG_FILE"
|
|
||||||
echo "Run: $0 --setup"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Check cache validity
|
|
||||||
is_cache_valid() {
|
|
||||||
[[ -f "$CACHE_FILE" ]] && \
|
|
||||||
[[ $(($(date +%s) - $(stat -c %Y "$CACHE_FILE" 2>/dev/null || echo 0))) -lt $CACHE_DURATION ]]
|
|
||||||
}
|
|
||||||
|
|
||||||
# Fetch weather data from API
|
|
||||||
fetch_weather_data() {
|
|
||||||
local url="https://api.openweathermap.org/data/2.5/weather?id=${OPENWEATHER_CITY_ID}&units=${OPENWEATHER_UNITS}&appid=${OPENWEATHER_API_KEY}"
|
|
||||||
|
|
||||||
local response
|
|
||||||
if ! response=$(curl -sf "$url" 2>/dev/null); then
|
|
||||||
log_error "Failed to fetch weather data from API"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Validate JSON response
|
|
||||||
if ! echo "$response" | jq . >/dev/null 2>&1; then
|
|
||||||
log_error "Invalid JSON response from API"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check for API error
|
|
||||||
local api_code
|
|
||||||
api_code=$(echo "$response" | jq -r '.cod // empty')
|
|
||||||
if [[ "$api_code" != "200" ]]; then
|
|
||||||
local api_message
|
|
||||||
api_message=$(echo "$response" | jq -r '.message // "Unknown API error"')
|
|
||||||
log_error "API Error ($api_code): $api_message"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Cache the response
|
|
||||||
mkdir -p "$CACHE_DIR"
|
|
||||||
echo "$response" > "$CACHE_FILE"
|
|
||||||
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get weather data (from cache or API)
|
|
||||||
get_weather_data() {
|
|
||||||
local force_refresh="${1:-false}"
|
|
||||||
|
|
||||||
if [[ "$force_refresh" != "true" ]] && is_cache_valid; then
|
|
||||||
cat "$CACHE_FILE"
|
|
||||||
else
|
|
||||||
if fetch_weather_data; then
|
|
||||||
cat "$CACHE_FILE"
|
|
||||||
else
|
|
||||||
# Fallback to cache if available
|
|
||||||
if [[ -f "$CACHE_FILE" ]]; then
|
|
||||||
log_warn "Using stale cache data due to API failure"
|
|
||||||
cat "$CACHE_FILE"
|
|
||||||
else
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Calculate wind direction
|
|
||||||
get_wind_direction() {
|
|
||||||
local degrees="$1"
|
|
||||||
local directions=(N NNE NE ENE E ESE SE SSE S SSW SW WSW W WNW NW NNW)
|
|
||||||
local index
|
|
||||||
index=$(awk "BEGIN {print int(($degrees % 360) / 22.5)}")
|
|
||||||
echo "${directions[$index]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get weather icon
|
|
||||||
get_weather_icon() {
|
|
||||||
local condition="$1"
|
|
||||||
case "$condition" in
|
|
||||||
'Clear') echo "☀" ;; # Clear sky
|
|
||||||
'Clouds') echo "☁" ;; # Cloudy
|
|
||||||
'Rain'|'Drizzle') echo "🌧" ;; # Rain
|
|
||||||
'Snow') echo "❄" ;; # Snow
|
|
||||||
'Thunderstorm') echo "⛈" ;; # Thunder
|
|
||||||
'Mist'|'Fog') echo "🌫" ;; # Fog
|
|
||||||
*) echo "🌤" ;; # Default
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
|
|
||||||
# Safe number formatting (handles locale issues)
|
|
||||||
safe_printf() {
|
|
||||||
local format="$1"
|
|
||||||
local number="$2"
|
|
||||||
|
|
||||||
# Validate number is actually numeric
|
|
||||||
if [[ ! "$number" =~ ^-?[0-9]+(\.[0-9]+)?$ ]]; then
|
|
||||||
echo "0.0"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Use awk for reliable formatting regardless of locale
|
|
||||||
awk "BEGIN {printf \"$format\", $number}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Format weather output
|
|
||||||
format_weather() {
|
|
||||||
local weather_data="$1"
|
|
||||||
|
|
||||||
# Parse weather data with error checking
|
|
||||||
local condition temp wind_speed_ms wind_deg
|
|
||||||
condition=$(echo "$weather_data" | jq -r '.weather[0].main // "Unknown"')
|
|
||||||
temp=$(echo "$weather_data" | jq -r '.main.temp // "0"')
|
|
||||||
wind_speed_ms=$(echo "$weather_data" | jq -r '.wind.speed // "0"')
|
|
||||||
wind_deg=$(echo "$weather_data" | jq -r '.wind.deg // "0"')
|
|
||||||
|
|
||||||
# Validate parsed data
|
|
||||||
[[ "$condition" == "null" ]] && condition="Unknown"
|
|
||||||
[[ "$temp" == "null" ]] && temp="0"
|
|
||||||
[[ "$wind_speed_ms" == "null" ]] && wind_speed_ms="0"
|
|
||||||
[[ "$wind_deg" == "null" ]] && wind_deg="0"
|
|
||||||
|
|
||||||
# Format temperature with safe formatting
|
|
||||||
local temp_formatted
|
|
||||||
temp_formatted=$(safe_printf "%.1f" "$temp")
|
|
||||||
|
|
||||||
# Convert wind speed to km/h with safe formatting
|
|
||||||
local wind_speed_kmh
|
|
||||||
wind_speed_kmh=$(awk "BEGIN {printf \"%.1f\", ($wind_speed_ms + 0) * 3.6}")
|
|
||||||
|
|
||||||
# Get wind direction
|
|
||||||
local wind_dir
|
|
||||||
wind_dir=$(get_wind_direction "$wind_deg")
|
|
||||||
|
|
||||||
# Get weather icon
|
|
||||||
local icon
|
|
||||||
icon=$(get_weather_icon "$condition")
|
|
||||||
|
|
||||||
# Format unit symbol
|
|
||||||
local unit_symbol
|
|
||||||
case "$OPENWEATHER_UNITS" in
|
|
||||||
"imperial") unit_symbol="°F" ;;
|
|
||||||
"kelvin") unit_symbol="K" ;;
|
|
||||||
*) unit_symbol="°C" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Output formatted weather
|
|
||||||
echo "${icon} ${temp_formatted}${unit_symbol}, ${wind_speed_kmh} km/h ${wind_dir}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Main function
|
|
||||||
main() {
|
|
||||||
local city_id_override=""
|
|
||||||
local api_key_override=""
|
|
||||||
local units_override=""
|
|
||||||
local force_refresh="false"
|
|
||||||
|
|
||||||
# Parse command line arguments
|
|
||||||
while [[ $# -gt 0 ]]; do
|
|
||||||
case $1 in
|
|
||||||
-h|--help)
|
|
||||||
show_help
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-c|--city-id)
|
|
||||||
city_id_override="$2"
|
|
||||||
shift 2
|
|
||||||
;;
|
|
||||||
-k|--api-key)
|
|
||||||
api_key_override="$2"
|
|
||||||
shift 2
|
|
||||||
;;
|
|
||||||
-u|--units)
|
|
||||||
units_override="$2"
|
|
||||||
shift 2
|
|
||||||
;;
|
|
||||||
-f|--force-refresh)
|
|
||||||
force_refresh="true"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--setup)
|
|
||||||
check_dependencies
|
|
||||||
run_setup
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
--show-config)
|
|
||||||
load_config
|
|
||||||
show_config
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
log_error "Unknown option: $1"
|
|
||||||
show_help
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# Check dependencies
|
|
||||||
check_dependencies
|
|
||||||
|
|
||||||
# Load configuration
|
|
||||||
load_config
|
|
||||||
|
|
||||||
# Apply overrides
|
|
||||||
[[ -n "$city_id_override" ]] && OPENWEATHER_CITY_ID="$city_id_override"
|
|
||||||
[[ -n "$api_key_override" ]] && OPENWEATHER_API_KEY="$api_key_override"
|
|
||||||
[[ -n "$units_override" ]] && OPENWEATHER_UNITS="$units_override"
|
|
||||||
|
|
||||||
# Validate configuration
|
|
||||||
validate_api_key
|
|
||||||
validate_city_id
|
|
||||||
|
|
||||||
# Get and format weather data
|
|
||||||
local weather_data
|
|
||||||
if weather_data=$(get_weather_data "$force_refresh"); then
|
|
||||||
format_weather "$weather_data"
|
|
||||||
else
|
|
||||||
echo "⚠️ Weather data unavailable"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Run main function
|
|
||||||
main "$@"
|
|
||||||
@@ -1,64 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Simple power-profiles-daemon switcher using rofi and static theme, with notification
|
|
||||||
#
|
|
||||||
# Copyright (C) 2025 Johannes Kamprad
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
# needs rofi config:
|
|
||||||
# $HOME/.config/rofi/powermenu.rasi
|
|
||||||
|
|
||||||
ROFI_THEME="${HOME}/.config/rofi/power-profiles.rasi"
|
|
||||||
|
|
||||||
# Dependency checks
|
|
||||||
command -v powerprofilesctl >/dev/null 2>&1 || { echo "powerprofilesctl not found"; exit 1; }
|
|
||||||
command -v rofi >/dev/null 2>&1 || { echo "rofi not found"; exit 1; }
|
|
||||||
if ! command -v notify-send >/dev/null 2>&1; then
|
|
||||||
notify_send_missing=true
|
|
||||||
fi
|
|
||||||
|
|
||||||
current_profile="$(powerprofilesctl get 2>/dev/null)"
|
|
||||||
ROFI_ARGS=(-dmenu -i -theme "$ROFI_THEME" -p "Change Profile" -mesg "<b>Current used:</b> $current_profile" -markup-rows)
|
|
||||||
|
|
||||||
# Menu entries
|
|
||||||
cancel=" Cancel"
|
|
||||||
perf=" Performance"
|
|
||||||
balanced=" Balanced"
|
|
||||||
powersave=" Power Saver"
|
|
||||||
# sets chancel to be on top
|
|
||||||
options="$cancel"
|
|
||||||
|
|
||||||
if powerprofilesctl list | grep -q "performance"; then
|
|
||||||
options="$options\n$perf"
|
|
||||||
fi
|
|
||||||
if powerprofilesctl list | grep -q "balanced"; then
|
|
||||||
options="$options\n$balanced"
|
|
||||||
fi
|
|
||||||
if powerprofilesctl list | grep -q "power-saver"; then
|
|
||||||
options="$options\n$powersave"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Show menu
|
|
||||||
chosen="$(echo -e "$options" | rofi "${ROFI_ARGS[@]}")"
|
|
||||||
|
|
||||||
# Run selection
|
|
||||||
case $chosen in
|
|
||||||
"$perf")
|
|
||||||
powerprofilesctl set performance
|
|
||||||
;;
|
|
||||||
"$balanced")
|
|
||||||
powerprofilesctl set balanced
|
|
||||||
;;
|
|
||||||
"$powersave")
|
|
||||||
powerprofilesctl set power-saver
|
|
||||||
;;
|
|
||||||
"$cancel"|"")
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Send notification if available
|
|
||||||
if [[ "$chosen" != "$cancel" && -z "${notify_send_missing}" ]]; then
|
|
||||||
notify-send -i dialog-information "Power Profile Changed" "New profile: ${chosen}"
|
|
||||||
fi
|
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
#
|
|
||||||
# powermenu - a very simple rofi powermenu
|
|
||||||
#
|
|
||||||
# Copyright (C) 2025 Johannes Kamprad
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
# needs rofi config:
|
|
||||||
# $HOME/.config/rofi/powermenu.rasi
|
|
||||||
# set to be used in i3wm
|
|
||||||
|
|
||||||
ROFI_THEME="${HOME}/.config/rofi/powermenu.rasi"
|
|
||||||
# Define possible lock scripts/commands (edit this list as you like)
|
|
||||||
LOCK_SCRIPTS=("${HOME}/.config/i3/scripts/blur-lock" "i3lock")
|
|
||||||
|
|
||||||
# Find available lock script
|
|
||||||
find_lock_script() {
|
|
||||||
for script in "${LOCK_SCRIPTS[@]}"; do
|
|
||||||
# Handle command names vs full paths
|
|
||||||
if [[ "$script" =~ ^[a-zA-Z0-9_-]+$ ]]; then
|
|
||||||
# It's a command name, check if available
|
|
||||||
if command -v "$script" >/dev/null 2>&1; then
|
|
||||||
echo "$script"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# It's a path, check if file exists and is executable
|
|
||||||
if [[ -x "$script" ]]; then
|
|
||||||
echo "$script"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
# Menu entries
|
|
||||||
chancel=" Cancel"
|
|
||||||
lock=" Lock"
|
|
||||||
logout=" Logout"
|
|
||||||
reboot=" Reboot"
|
|
||||||
shutdown=" Shutdown"
|
|
||||||
suspend=" Suspend"
|
|
||||||
hibernate=" Hibernate"
|
|
||||||
|
|
||||||
|
|
||||||
# Add lock only if script is found
|
|
||||||
if lockcmd="$(find_lock_script)"; then
|
|
||||||
options="$chancel\n$lock\n$logout\n$reboot\n$shutdown\n$suspend\n$hibernate"
|
|
||||||
else
|
|
||||||
options="$chancel\n$logout\n$reboot\n$shutdown\n$suspend\n$hibernate"
|
|
||||||
fi
|
|
||||||
|
|
||||||
chosen="$(echo -e "$options" | rofi -dmenu -i -p "Power Menu" \
|
|
||||||
-theme $ROFI_THEME)"
|
|
||||||
|
|
||||||
case $chosen in
|
|
||||||
"$lock")
|
|
||||||
$lockcmd
|
|
||||||
;;
|
|
||||||
"$cancel"|"")
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
"$logout")
|
|
||||||
i3-msg exit
|
|
||||||
;;
|
|
||||||
"$reboot")
|
|
||||||
systemctl reboot
|
|
||||||
;;
|
|
||||||
"$shutdown")
|
|
||||||
systemctl poweroff
|
|
||||||
;;
|
|
||||||
"$suspend")
|
|
||||||
systemctl suspend
|
|
||||||
;;
|
|
||||||
"$hibernate")
|
|
||||||
systemctl hibernate
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
|
|
||||||
# power-profiles-daemon implementation:
|
|
||||||
# needs package power-profiles-daemon installed and the service running see here:
|
|
||||||
# https://wiki.archlinux.org/title/CPU_frequency_scaling#power-profiles-daemon
|
|
||||||
# used in i3-blocks: ~/.config/i3/i3blocks.conf together with: ~/.config/i3/scripts/power-profiles
|
|
||||||
|
|
||||||
|
|
||||||
# assign tags or translations to each profile
|
|
||||||
declare -A tags
|
|
||||||
tags=(
|
|
||||||
[performance]="Performance"
|
|
||||||
[balanced]="Balanced"
|
|
||||||
[power-saver]="Power saver"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Get current profile
|
|
||||||
current_profile=$(/usr/bin/powerprofilesctl get)
|
|
||||||
|
|
||||||
# Get tag from the array
|
|
||||||
profile_tag=${tags[$current_profile]}
|
|
||||||
|
|
||||||
# Show tag on i3block
|
|
||||||
echo "${profile_tag:-$current_profile}"
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
#!/usr/bin/env perl
|
|
||||||
|
|
||||||
# Copyright 2014 Pierre Mavro <deimos at deimos dot fr>
|
|
||||||
# Copyright 2014 Vivien Didelot <vivien at didelot.org>
|
|
||||||
# Copyright 2014 Andreas Guldstrand <andreas.guldstrand at gmail dot com>
|
|
||||||
# Copyright 2014 Benjamin Chretien <chretien at lirmm dot fr>
|
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
||||||
|
|
||||||
# Edited by Andreas Lindlbauer <endeavouros.mousily@aleeas.com>
|
|
||||||
|
|
||||||
use strict;
|
|
||||||
use warnings;
|
|
||||||
use utf8;
|
|
||||||
use Getopt::Long;
|
|
||||||
|
|
||||||
binmode(STDOUT, ":utf8");
|
|
||||||
|
|
||||||
# default values
|
|
||||||
my $t_warn = $ENV{T_WARN} || 70;
|
|
||||||
my $t_crit = $ENV{T_CRIT} || 90;
|
|
||||||
my $chip = $ENV{SENSOR_CHIP} || "";
|
|
||||||
my $temperature = -9999;
|
|
||||||
my $label = "😀 ";
|
|
||||||
|
|
||||||
sub help {
|
|
||||||
print "Usage: temperature [-w <warning>] [-c <critical>] [--chip <chip>]\n";
|
|
||||||
print "-w <percent>: warning threshold to become yellow\n";
|
|
||||||
print "-c <percent>: critical threshold to become red\n";
|
|
||||||
print "--chip <chip>: sensor chip\n";
|
|
||||||
exit 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
GetOptions("help|h" => \&help,
|
|
||||||
"w=i" => \$t_warn,
|
|
||||||
"c=i" => \$t_crit,
|
|
||||||
"chip=s" => \$chip);
|
|
||||||
|
|
||||||
# Get chip temperature
|
|
||||||
open (SENSORS, "sensors -u $chip |") or die;
|
|
||||||
while (<SENSORS>) {
|
|
||||||
if (/^\s+temp1_input:\s+[\+]*([\-]*\d+\.\d)/) {
|
|
||||||
$temperature = $1;
|
|
||||||
last;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
close(SENSORS);
|
|
||||||
|
|
||||||
$temperature eq -9999 and die 'Cannot find temperature';
|
|
||||||
|
|
||||||
if ($temperature < 45) {
|
|
||||||
$label = '';
|
|
||||||
} elsif ($temperature < 55) {
|
|
||||||
$label = '';
|
|
||||||
} elsif ($temperature < 65) {
|
|
||||||
$label = '';
|
|
||||||
} elsif ($temperature < 75) {
|
|
||||||
$label = '';
|
|
||||||
} else {
|
|
||||||
$label = '';
|
|
||||||
}
|
|
||||||
# Print short_text, full_text
|
|
||||||
print "${label}";
|
|
||||||
print " $temperature°C\n";
|
|
||||||
print "${label}";
|
|
||||||
print " $temperature°C\n";
|
|
||||||
|
|
||||||
# Print color, if needed
|
|
||||||
if ($temperature >= $t_crit) {
|
|
||||||
print "#FF0000\n";
|
|
||||||
exit 33;
|
|
||||||
} elsif ($temperature >= $t_warn) {
|
|
||||||
print "#FFFC00\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
exit 0;
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# i3blocks volume block for PipeWire (PulseAudio compatible)
|
|
||||||
|
|
||||||
STEP=${1:-5%}
|
|
||||||
|
|
||||||
# Default sink
|
|
||||||
SINK=$(pactl info | awk '/Default Sink/ {print $3}')
|
|
||||||
[[ -z "$SINK" ]] && { echo "No audio"; exit 0; }
|
|
||||||
|
|
||||||
# Handle scroll/middle-click
|
|
||||||
case "$BLOCK_BUTTON" in
|
|
||||||
3) pactl set-sink-mute "$SINK" toggle ;; # right click = mute/unmute
|
|
||||||
4) pactl set-sink-volume "$SINK" +$STEP ;; # scroll up
|
|
||||||
5) pactl set-sink-volume "$SINK" -$STEP ;; # scroll down
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Get current volume (front-left channel)
|
|
||||||
VOL=$(pactl list sinks | awk -v s="$SINK" '
|
|
||||||
$0 ~ "Name: " s {found=1}
|
|
||||||
found && /Volume:/ {gsub("%","",$5); print $5; exit}
|
|
||||||
')
|
|
||||||
|
|
||||||
# Get mute state
|
|
||||||
MUTED=$(pactl list sinks | awk -v s="$SINK" '
|
|
||||||
$0 ~ "Name: " s {found=1}
|
|
||||||
found && /Mute:/ {print $2; exit}
|
|
||||||
')
|
|
||||||
|
|
||||||
# Choose symbol
|
|
||||||
AUDIO_HIGH=''
|
|
||||||
AUDIO_MED=''
|
|
||||||
AUDIO_LOW=''
|
|
||||||
AUDIO_MUTED=''
|
|
||||||
MED_THRESH=50
|
|
||||||
LOW_THRESH=0
|
|
||||||
|
|
||||||
if [[ "$MUTED" == "no" ]]; then
|
|
||||||
SYMB=$AUDIO_HIGH
|
|
||||||
[[ $VOL -le $MED_THRESH ]] && SYMB=$AUDIO_MED
|
|
||||||
[[ $VOL -le $LOW_THRESH ]] && SYMB=$AUDIO_LOW
|
|
||||||
else
|
|
||||||
SYMB=$AUDIO_MUTED
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Single-line output for i3blocks
|
|
||||||
echo "${SYMB} ${VOL}%"
|
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# original source: https://gitlab.com/Nmoleo/i3-volume-brightness-indicator
|
|
||||||
# changed to use brightnessctl [xbacklight is non functional on modern hardware]
|
|
||||||
# by joekamprad [Aug 2025]
|
|
||||||
|
|
||||||
bar_color="#7f7fff"
|
|
||||||
volume_step=1
|
|
||||||
brightness_step=5
|
|
||||||
max_volume=100
|
|
||||||
notification_timeout=1000 # in ms
|
|
||||||
|
|
||||||
# Uses regex to get volume from pactl
|
|
||||||
function get_volume {
|
|
||||||
pactl get-sink-volume @DEFAULT_SINK@ | grep -Po '[0-9]{1,3}(?=%)' | head -1
|
|
||||||
}
|
|
||||||
|
|
||||||
# Uses regex to get mute status from pactl
|
|
||||||
function get_mute {
|
|
||||||
pactl get-sink-mute @DEFAULT_SINK@ | grep -Po '(?<=Mute: )(yes|no)'
|
|
||||||
}
|
|
||||||
|
|
||||||
# Uses brightnessctl instead of xbacklight
|
|
||||||
function get_brightness {
|
|
||||||
brightnessctl g | awk '{print int($1)}'
|
|
||||||
# You could also use: brightnessctl info | grep -Po '(?<=Current brightness: )[0-9]+'
|
|
||||||
}
|
|
||||||
|
|
||||||
# Calculates brightness percentage
|
|
||||||
function get_brightness_percent {
|
|
||||||
current=$(brightnessctl g)
|
|
||||||
max=$(brightnessctl m)
|
|
||||||
percent=$(( 100 * current / max ))
|
|
||||||
echo $percent
|
|
||||||
}
|
|
||||||
|
|
||||||
function get_volume_icon {
|
|
||||||
volume=$(get_volume)
|
|
||||||
mute=$(get_mute)
|
|
||||||
if [ "$volume" -eq 0 ] || [ "$mute" == "yes" ] ; then
|
|
||||||
volume_icon=""
|
|
||||||
elif [ "$volume" -lt 50 ]; then
|
|
||||||
volume_icon=""
|
|
||||||
else
|
|
||||||
volume_icon=""
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function get_brightness_icon {
|
|
||||||
brightness_icon=""
|
|
||||||
}
|
|
||||||
|
|
||||||
function show_volume_notif {
|
|
||||||
volume=$(get_volume)
|
|
||||||
get_volume_icon
|
|
||||||
notify-send -i volume_icon -t 1000 "Volume" "$volume_icon $volume%" -h int:value:$volume -h string:x-canonical-private-synchronous:volume
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function show_brightness_notif {
|
|
||||||
get_brightness_icon
|
|
||||||
brightness=$(get_brightness_percent)
|
|
||||||
notify-send -i brightness_icon -t $notification_timeout -h string:x-dunst-stack-tag:brightness_notif -h int:value:$brightness "$brightness_icon $brightness%"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
case $1 in
|
|
||||||
volume_up)
|
|
||||||
pactl set-sink-mute @DEFAULT_SINK@ 0
|
|
||||||
volume=$(get_volume)
|
|
||||||
if [ $(( "$volume" + "$volume_step" )) -gt $max_volume ]; then
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ $max_volume%
|
|
||||||
else
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ +$volume_step%
|
|
||||||
fi
|
|
||||||
show_volume_notif
|
|
||||||
;;
|
|
||||||
volume_down)
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ -$volume_step%
|
|
||||||
show_volume_notif
|
|
||||||
;;
|
|
||||||
volume_mute)
|
|
||||||
pactl set-sink-mute @DEFAULT_SINK@ toggle
|
|
||||||
show_volume_notif
|
|
||||||
;;
|
|
||||||
brightness_up)
|
|
||||||
brightnessctl s +$brightness_step% > /dev/null
|
|
||||||
show_brightness_notif
|
|
||||||
;;
|
|
||||||
brightness_down)
|
|
||||||
brightnessctl s $brightness_step%- > /dev/null
|
|
||||||
show_brightness_notif
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
@@ -1,168 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# original source: https://gitlab.com/Nmoleo/i3-volume-brightness-indicator
|
|
||||||
# alternative to volume_brightness.sh that uses brightnessctl for both keyboard & screen brightness
|
|
||||||
|
|
||||||
# See README.md for usage instructions
|
|
||||||
volume_step=1
|
|
||||||
keyboard_brightness_step=20
|
|
||||||
screen_brightness_step=1
|
|
||||||
max_volume=100
|
|
||||||
notification_timeout=1000
|
|
||||||
|
|
||||||
# Specify Icon Theme here:
|
|
||||||
volume_theme_icon="audio-volume-high"
|
|
||||||
screen_brightness_theme_icon="display-brightness"
|
|
||||||
keyboard_brightness_theme_icon="display-brightness"
|
|
||||||
|
|
||||||
# Keyboard Backlight device detection here:
|
|
||||||
device_cache="/tmp/kbd_backlight_device"
|
|
||||||
|
|
||||||
if [ -f "$device_cache" ]; then
|
|
||||||
# If there is cache, load it into device
|
|
||||||
device=$(cat "$device_cache")
|
|
||||||
else
|
|
||||||
# If there is no cache, create one
|
|
||||||
device=$(brightnessctl --list | grep -Po '\w+::kbd_backlight')
|
|
||||||
echo "$device" > "$device_cache"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Uses regex to get volume from pactl
|
|
||||||
function get_volume {
|
|
||||||
pactl get-sink-volume @DEFAULT_SINK@ | grep -Po '[0-9]{1,3}(?=%)' | head -1
|
|
||||||
}
|
|
||||||
|
|
||||||
# Uses regex to get mute status from pactl
|
|
||||||
function get_mute {
|
|
||||||
pactl get-sink-mute @DEFAULT_SINK@ | grep -Po '(?<=Mute: )(yes|no)'
|
|
||||||
}
|
|
||||||
|
|
||||||
# Get keyboard_brightness from brightnessctl
|
|
||||||
function get_keyboard_brightness {
|
|
||||||
if [ -n "$device" ]; then
|
|
||||||
keyboard_curr=$(brightnessctl -d "$device" get)
|
|
||||||
keyboard_max=$(brightnessctl -d "$device" max)
|
|
||||||
echo $(( keyboard_curr * 100 / keyboard_max))
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Grabs screen brightness and formats it out of 100
|
|
||||||
function get_screen_brightness {
|
|
||||||
screen_curr=$(brightnessctl -q get)
|
|
||||||
screen_max=$(brightnessctl -q max)
|
|
||||||
echo $(( screen_curr * 100 / screen_max ))
|
|
||||||
}
|
|
||||||
|
|
||||||
# Returns a mute icon, a volume-low icon, or a volume-high icon, depending on the volume
|
|
||||||
function get_volume_icon {
|
|
||||||
volume=$(get_volume)
|
|
||||||
mute=$(get_mute)
|
|
||||||
if [ "$volume" -eq 0 ] || [ "$mute" == "yes" ] ; then
|
|
||||||
volume_icon=""
|
|
||||||
elif [ "$volume" -lt 50 ] ; then
|
|
||||||
volume_icon=""
|
|
||||||
else
|
|
||||||
volume_icon=""
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Always returns the same icon - I couldn't get the brightness-low icon to work with fontawesome
|
|
||||||
function get_keyboard_brightness_icon {
|
|
||||||
kb_brightness=$(get_keyboard_brightness)
|
|
||||||
if [ "$kb_brightness" -eq 0 ] ; then
|
|
||||||
keyboard_brightness_icon="" # unfilled circle
|
|
||||||
elif [ "$kb_brightness" -lt 50 ] ; then
|
|
||||||
keyboard_brightness_icon="" # fa-adjust (low brightness)
|
|
||||||
else
|
|
||||||
keyboard_brightness_icon="" # full circle (high brightness)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function get_screen_brightness_icon {
|
|
||||||
sc_brightness=$(get_screen_brightness)
|
|
||||||
if [ "$sc_brightness" -eq 0 ] ; then
|
|
||||||
screen_brightness_icon="" # unfilled circle
|
|
||||||
elif [ "$sc_brightness" -lt 50 ] ; then
|
|
||||||
screen_brightness_icon="" # fa-adjust (low brightness)
|
|
||||||
else
|
|
||||||
screen_brightness_icon="" # full circle (high brightness)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Displays a volume notification using notify-send
|
|
||||||
function show_volume_notif {
|
|
||||||
mute=$(get_mute)
|
|
||||||
volume=$(get_volume)
|
|
||||||
get_volume_icon
|
|
||||||
notify-send -i $volume_theme_icon -t $notification_timeout "Volume" "$volume_icon $volume%" -h int:value:$volume -h string:x-canonical-private-synchronous:volume
|
|
||||||
}
|
|
||||||
|
|
||||||
# Displays a keyboard_brightness notification
|
|
||||||
function show_keyboard_brightness_notif {
|
|
||||||
keyboard_brightness=$(get_keyboard_brightness)
|
|
||||||
# Debug Purposes:
|
|
||||||
# echo $keyboard_brightness
|
|
||||||
get_keyboard_brightness_icon
|
|
||||||
notify-send -i $keyboard_brightness_theme_icon -t $notification_timeout "Keyboard Brightness" -h string:x-dunst-stack-tag:keyboard_brightness_notif -h int:value:$keyboard_brightness "$keyboard_brightness_icon $keyboard_brightness%"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Displays a screen_brightness notification
|
|
||||||
function show_screen_brightness_notif {
|
|
||||||
screen_brightness=$(get_screen_brightness)
|
|
||||||
# Debug Purposes:
|
|
||||||
# echo $screen_brightness
|
|
||||||
get_screen_brightness_icon
|
|
||||||
notify-send -i $screen_brightness_theme_icon -t $notification_timeout "Screen Brightness" -h string:x-dunst-stack-tag:screen_brightness_notif -h int:value:$screen_brightness "$screen_brightness_icon $screen_brightness%"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Main function - Takes user input, "volume_up", "volume_down", "keyboard_brightness_up", "keyboard_brightness_down", "brightness_up", or "brightness_down"
|
|
||||||
case $1 in
|
|
||||||
volume_up)
|
|
||||||
# Unmutes and increases volume, then displays the notification
|
|
||||||
pactl set-sink-mute @DEFAULT_SINK@ 0
|
|
||||||
volume=$(get_volume)
|
|
||||||
if [ $(( "$volume" + "$volume_step" )) -gt $max_volume ]; then
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ $max_volume%
|
|
||||||
else
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ +$volume_step%
|
|
||||||
fi
|
|
||||||
show_volume_notif
|
|
||||||
;;
|
|
||||||
|
|
||||||
volume_down)
|
|
||||||
# Raises volume and displays the notification
|
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ -$volume_step%
|
|
||||||
show_volume_notif
|
|
||||||
;;
|
|
||||||
|
|
||||||
volume_mute)
|
|
||||||
# Toggles mute and displays the notification
|
|
||||||
pactl set-sink-mute @DEFAULT_SINK@ toggle
|
|
||||||
show_volume_notif
|
|
||||||
;;
|
|
||||||
|
|
||||||
keyboard_brightness_up)
|
|
||||||
# Increases keyboard brightness and displays the notification
|
|
||||||
brightnessctl -d "$device" set ${keyboard_brightness_step}+
|
|
||||||
show_keyboard_brightness_notif
|
|
||||||
;;
|
|
||||||
|
|
||||||
keyboard_brightness_down)
|
|
||||||
# Decreases keyboard brightness and displays the notification
|
|
||||||
brightnessctl -d "$device" set ${keyboard_brightness_step}-
|
|
||||||
show_keyboard_brightness_notif
|
|
||||||
;;
|
|
||||||
|
|
||||||
screen_brightness_up)
|
|
||||||
# Increases screen brightness and displays the notification
|
|
||||||
brightnessctl -q set ${screen_brightness_step}%+
|
|
||||||
show_screen_brightness_notif
|
|
||||||
;;
|
|
||||||
|
|
||||||
screen_brightness_down)
|
|
||||||
# Decreases screen brightness and displays the notification
|
|
||||||
brightnessctl -q set ${screen_brightness_step}%-
|
|
||||||
show_screen_brightness_notif
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
#!/usr/bin/env sh
|
|
||||||
|
|
||||||
# Parses output from nmcli to show the current connected VPN name/status for i3block
|
|
||||||
# Source: https://github.com/vivien/i3blocks-contrib/tree/master/nm-vpn
|
|
||||||
# uncomment in $HOME/.config/i3/i3blocks.conf if you want to use it
|
|
||||||
|
|
||||||
init_color=${init_color:-#FFFF00}
|
|
||||||
on_color=${on_color:-#00FF00}
|
|
||||||
export init_color on_color
|
|
||||||
nmcli -t connection show --active | awk -F ':' '
|
|
||||||
BEGIN {
|
|
||||||
init_color=ENVIRON["init_color"]
|
|
||||||
on_color=ENVIRON["on_color"]
|
|
||||||
}
|
|
||||||
$3=="vpn" {
|
|
||||||
name=$1
|
|
||||||
status="INIT"
|
|
||||||
color=init_color
|
|
||||||
}
|
|
||||||
$3=="tun" || ($4~/^tap/ || $3~/^tap/) {
|
|
||||||
if(!name) name=$1
|
|
||||||
status="ON"
|
|
||||||
color=on_color
|
|
||||||
}
|
|
||||||
END {if(status) printf("%s\n%s\n%s\n", name, status, color)}'
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 249 KiB |
@@ -1,59 +0,0 @@
|
|||||||
import tempfile
|
|
||||||
import os
|
|
||||||
|
|
||||||
from shutil import which
|
|
||||||
from typing import List
|
|
||||||
from kitty.boss import Boss
|
|
||||||
|
|
||||||
|
|
||||||
ENABLED_LAYOUTS = [
|
|
||||||
'fat',
|
|
||||||
'grid',
|
|
||||||
'horizontal',
|
|
||||||
'splits',
|
|
||||||
'stack',
|
|
||||||
'tall',
|
|
||||||
'vertical',
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
def fzf(choices: List[str], delimiter='\n'):
|
|
||||||
exe = which("fzf")
|
|
||||||
if not exe:
|
|
||||||
raise SystemError(f"Cannot find 'fzf' installed on $PATH.")
|
|
||||||
|
|
||||||
shell = which("zsh") or os.environ.get("SHELL")
|
|
||||||
if not shell:
|
|
||||||
raise SystemError(f"Cannot find a $SHELL to use.")
|
|
||||||
|
|
||||||
selection = []
|
|
||||||
with tempfile.NamedTemporaryFile(delete=True) as input_file:
|
|
||||||
with tempfile.NamedTemporaryFile(delete=True) as output_file:
|
|
||||||
input_file.write(delimiter.join(map(str, choices)).encode('utf-8'))
|
|
||||||
input_file.flush()
|
|
||||||
os.system(f"{shell} -c '{exe} --reverse < \"{input_file.name}\" > \"{output_file.name}\"'")
|
|
||||||
for line in output_file:
|
|
||||||
selection.append(line.strip().decode("utf-8"))
|
|
||||||
|
|
||||||
return selection
|
|
||||||
|
|
||||||
|
|
||||||
def main(args: List[str]) -> str:
|
|
||||||
fzf_path = os.path.join(os.environ["HOME"], ".fzf/bin")
|
|
||||||
os.environ["PATH"] += f":{fzf_path}"
|
|
||||||
|
|
||||||
result = fzf(ENABLED_LAYOUTS)
|
|
||||||
if len(result) > 0:
|
|
||||||
return result[0]
|
|
||||||
|
|
||||||
return ""
|
|
||||||
|
|
||||||
|
|
||||||
def handle_result(args: List[str], answer: str, target_window_id: int, boss: Boss) -> None:
|
|
||||||
try:
|
|
||||||
window = boss.window_id_map.get(target_window_id)
|
|
||||||
tab = boss.tab_for_window(window)
|
|
||||||
tab.goto_layout(answer)
|
|
||||||
|
|
||||||
except Exception:
|
|
||||||
pass
|
|
||||||
@@ -1,89 +0,0 @@
|
|||||||
# vim:ft=kitty foldmethod=marker
|
|
||||||
|
|
||||||
kitty_mod ctrl+shift
|
|
||||||
|
|
||||||
scrollback_lines 10000
|
|
||||||
|
|
||||||
# UI {{{1
|
|
||||||
|
|
||||||
# Theme
|
|
||||||
#include themes/mocha.conf
|
|
||||||
|
|
||||||
# Window layout
|
|
||||||
remember_window_size no
|
|
||||||
initial_window_width 160c
|
|
||||||
initial_window_height 45c
|
|
||||||
|
|
||||||
# Tab bar
|
|
||||||
tab_bar_min_tabs 1
|
|
||||||
tab_bar_edge bottom
|
|
||||||
tab_bar_style powerline
|
|
||||||
tab_powerline_style slanted
|
|
||||||
tab_title_template {title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}
|
|
||||||
|
|
||||||
# Fonts
|
|
||||||
font_size 14.0
|
|
||||||
font_family 0xProto Nerd Font
|
|
||||||
|
|
||||||
# Cursor
|
|
||||||
cursor_shape beam
|
|
||||||
cursor_shape_unfocused hollow
|
|
||||||
cursor_beam_thickness 3
|
|
||||||
cursor_blink_interval 1
|
|
||||||
shell_integration no-cursor no-title
|
|
||||||
|
|
||||||
# Color scheme
|
|
||||||
background_opacity 0.90
|
|
||||||
background_blur 64
|
|
||||||
background_image none
|
|
||||||
dynamic_background_opacity yes
|
|
||||||
|
|
||||||
# vim-kitty-navigator {{{1
|
|
||||||
allow_remote_control yes
|
|
||||||
listen_on unix:/tmp/mykitty
|
|
||||||
|
|
||||||
# Keyboard shortcuts
|
|
||||||
|
|
||||||
copy_on_select yes
|
|
||||||
|
|
||||||
macos_option_as_alt yes
|
|
||||||
|
|
||||||
# Zoom on a window just like in tmux
|
|
||||||
map kitty_mod+a toggle_layout stack
|
|
||||||
|
|
||||||
# Open tabs and windows in the same folder
|
|
||||||
map kitty_mod+enter new_window_with_cwd
|
|
||||||
map cmd+enter new_window_with_cwd
|
|
||||||
map kitty_mod+t new_tab_with_cwd
|
|
||||||
map cmd+t new_tab_with_cwd
|
|
||||||
|
|
||||||
# Move a window into a new tab
|
|
||||||
map kitty_mod+x detach_window new-tab
|
|
||||||
|
|
||||||
# tmux {{{1
|
|
||||||
|
|
||||||
# Jump to tabs
|
|
||||||
map ctrl+a>1 goto_tab 4
|
|
||||||
map ctrl+a>2 goto_tab 2
|
|
||||||
map ctrl+a>3 goto_tab 3
|
|
||||||
map ctrl+a>4 goto_tab 4
|
|
||||||
map ctrl+a>5 goto_tab 5
|
|
||||||
map ctrl+a>6 goto_tab 6
|
|
||||||
map ctrl+a>7 goto_tab 7
|
|
||||||
map ctrl+a>8 goto_tab 8
|
|
||||||
map ctrl+a>9 goto_tab 9
|
|
||||||
map ctrl+a>0 goto_tab 0
|
|
||||||
# Move a window into a new tab
|
|
||||||
map ctrl+a>! detach_window new-tab
|
|
||||||
# Open a new window
|
|
||||||
map ctrl+a>o new_window_with_cwd
|
|
||||||
# Open a new tab
|
|
||||||
map ctrl+a>c new_tab_with_cwd
|
|
||||||
# Zoom on a window
|
|
||||||
map ctrl+a>z toggle_layout stack
|
|
||||||
# Change layout
|
|
||||||
map ctrl+a>space next_layout
|
|
||||||
# Choose layout
|
|
||||||
map ctrl+a>l kitten choose_layout.py
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
# vim:ft=kitty
|
|
||||||
|
|
||||||
## name: Adwaita dark
|
|
||||||
## license: MIT
|
|
||||||
## author: Emil Löfquist (https://github.com/ewal)
|
|
||||||
## upstream: https://github.com/ewal/kitty-adwaita/blob/main/adwaita_dark.conf
|
|
||||||
## blurb: Adwaita dark - based on https://github.com/Mofiqul/adwaita.nvim
|
|
||||||
|
|
||||||
background #1d1d1d
|
|
||||||
foreground #deddda
|
|
||||||
|
|
||||||
selection_background #303030
|
|
||||||
selection_foreground #c0bfbc
|
|
||||||
|
|
||||||
url_color #1a5fb4
|
|
||||||
|
|
||||||
wayland_titlebar_color system
|
|
||||||
macos_titlebar_color system
|
|
||||||
|
|
||||||
cursor #deddda
|
|
||||||
cursor_text_color #1d1d1d
|
|
||||||
|
|
||||||
active_border_color #4f4f4f
|
|
||||||
inactive_border_color #282828
|
|
||||||
bell_border_color #ed333b
|
|
||||||
visual_bell_color none
|
|
||||||
|
|
||||||
active_tab_background #242424
|
|
||||||
active_tab_foreground #fcfcfc
|
|
||||||
inactive_tab_background #303030
|
|
||||||
inactive_tab_foreground #b0afac
|
|
||||||
tab_bar_background none
|
|
||||||
tab_bar_margin_color none
|
|
||||||
|
|
||||||
color0 #1d1d1d
|
|
||||||
color1 #ed333b
|
|
||||||
color2 #57e389
|
|
||||||
color3 #ff7800
|
|
||||||
color4 #62a0ea
|
|
||||||
color5 #9141ac
|
|
||||||
color6 #5bc8af
|
|
||||||
color7 #deddda
|
|
||||||
|
|
||||||
color8 #9a9996
|
|
||||||
color9 #f66151
|
|
||||||
color10 #8ff0a4
|
|
||||||
color11 #ffa348
|
|
||||||
color12 #99c1f1
|
|
||||||
color13 #dc8add
|
|
||||||
color14 #93ddc2
|
|
||||||
color15 #f6f5f4
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
# vim:ft=kitty
|
|
||||||
|
|
||||||
## name: Catppuccin Kitty Frappé
|
|
||||||
## author: Catppuccin Org
|
|
||||||
## license: MIT
|
|
||||||
## upstream: https://github.com/catppuccin/kitty/blob/main/themes/frappe.conf
|
|
||||||
## blurb: Soothing pastel theme for the high-spirited!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# The basic colors
|
|
||||||
foreground #c6d0f5
|
|
||||||
background #303446
|
|
||||||
selection_foreground #303446
|
|
||||||
selection_background #f2d5cf
|
|
||||||
|
|
||||||
# Cursor colors
|
|
||||||
cursor #f2d5cf
|
|
||||||
cursor_text_color #303446
|
|
||||||
|
|
||||||
# URL underline color when hovering with mouse
|
|
||||||
url_color #f2d5cf
|
|
||||||
|
|
||||||
# Kitty window border colors
|
|
||||||
active_border_color #babbf1
|
|
||||||
inactive_border_color #737994
|
|
||||||
bell_border_color #e5c890
|
|
||||||
|
|
||||||
# OS Window titlebar colors
|
|
||||||
wayland_titlebar_color system
|
|
||||||
macos_titlebar_color system
|
|
||||||
|
|
||||||
# Tab bar colors
|
|
||||||
active_tab_foreground #232634
|
|
||||||
active_tab_background #ca9ee6
|
|
||||||
inactive_tab_foreground #c6d0f5
|
|
||||||
inactive_tab_background #292c3c
|
|
||||||
tab_bar_background #232634
|
|
||||||
|
|
||||||
# Colors for marks (marked text in the terminal)
|
|
||||||
mark1_foreground #303446
|
|
||||||
mark1_background #babbf1
|
|
||||||
mark2_foreground #303446
|
|
||||||
mark2_background #ca9ee6
|
|
||||||
mark3_foreground #303446
|
|
||||||
mark3_background #85c1dc
|
|
||||||
|
|
||||||
# The 16 terminal colors
|
|
||||||
|
|
||||||
# black
|
|
||||||
color0 #51576d
|
|
||||||
color8 #626880
|
|
||||||
|
|
||||||
# red
|
|
||||||
color1 #e78284
|
|
||||||
color9 #e78284
|
|
||||||
|
|
||||||
# green
|
|
||||||
color2 #a6d189
|
|
||||||
color10 #a6d189
|
|
||||||
|
|
||||||
# yellow
|
|
||||||
color3 #e5c890
|
|
||||||
color11 #e5c890
|
|
||||||
|
|
||||||
# blue
|
|
||||||
color4 #8caaee
|
|
||||||
color12 #8caaee
|
|
||||||
|
|
||||||
# magenta
|
|
||||||
color5 #f4b8e4
|
|
||||||
color13 #f4b8e4
|
|
||||||
|
|
||||||
# cyan
|
|
||||||
color6 #81c8be
|
|
||||||
color14 #81c8be
|
|
||||||
|
|
||||||
# white
|
|
||||||
color7 #b5bfe2
|
|
||||||
color15 #a5adce
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
# Based on https://github.com/morhetz/gruvbox by morhetz <morhetz@gmail.com>
|
|
||||||
# Adapted to kitty by wdomitrz <witekdomitrz@gmail.com>
|
|
||||||
|
|
||||||
cursor #928374
|
|
||||||
cursor_text_color background
|
|
||||||
|
|
||||||
url_color #83a598
|
|
||||||
|
|
||||||
visual_bell_color #8ec07c
|
|
||||||
bell_border_color #8ec07c
|
|
||||||
|
|
||||||
active_border_color #d3869b
|
|
||||||
inactive_border_color #665c54
|
|
||||||
|
|
||||||
foreground #ebdbb2
|
|
||||||
background #282828
|
|
||||||
selection_foreground #928374
|
|
||||||
selection_background #ebdbb2
|
|
||||||
|
|
||||||
active_tab_foreground #fbf1c7
|
|
||||||
active_tab_background #665c54
|
|
||||||
inactive_tab_foreground #a89984
|
|
||||||
inactive_tab_background #3c3836
|
|
||||||
|
|
||||||
# black (bg3/bg4)
|
|
||||||
color0 #665c54
|
|
||||||
color8 #7c6f64
|
|
||||||
|
|
||||||
# red
|
|
||||||
color1 #cc241d
|
|
||||||
color9 #fb4934
|
|
||||||
|
|
||||||
#: green
|
|
||||||
color2 #98971a
|
|
||||||
color10 #b8bb26
|
|
||||||
|
|
||||||
# yellow
|
|
||||||
color3 #d79921
|
|
||||||
color11 #fabd2f
|
|
||||||
|
|
||||||
# blue
|
|
||||||
color4 #458588
|
|
||||||
color12 #83a598
|
|
||||||
|
|
||||||
# purple
|
|
||||||
color5 #b16286
|
|
||||||
color13 #d3869b
|
|
||||||
|
|
||||||
# aqua
|
|
||||||
color6 #689d6a
|
|
||||||
color14 #8ec07c
|
|
||||||
|
|
||||||
# white (fg4/fg3)
|
|
||||||
color7 #a89984
|
|
||||||
color15 #bdae93
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
include gruvbox_dark.conf
|
|
||||||
|
|
||||||
background #1d2021
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
include gruvbox_dark.conf
|
|
||||||
|
|
||||||
background #32302f
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
# Based on https://github.com/morhetz/gruvbox by morhetz <morhetz@gmail.com>
|
|
||||||
# Adapted to kitty by wdomitrz <witekdomitrz@gmail.com>
|
|
||||||
|
|
||||||
cursor #928374
|
|
||||||
cursor_text_color background
|
|
||||||
|
|
||||||
url_color #458588
|
|
||||||
|
|
||||||
visual_bell_color #689d6a
|
|
||||||
bell_border_color #689d6a
|
|
||||||
|
|
||||||
active_border_color #b16286
|
|
||||||
inactive_border_color #1d2021
|
|
||||||
|
|
||||||
foreground #3c3836
|
|
||||||
background #fbf1c7
|
|
||||||
selection_foreground #928374
|
|
||||||
selection_background #3c3836
|
|
||||||
|
|
||||||
active_tab_foreground #282828
|
|
||||||
active_tab_background #928374
|
|
||||||
inactive_tab_foreground #7c6f64
|
|
||||||
inactive_tab_background #ebdbb2
|
|
||||||
|
|
||||||
# white (bg3/bg4)
|
|
||||||
color0 #bdae93
|
|
||||||
color8 #a89984
|
|
||||||
|
|
||||||
# red
|
|
||||||
color1 #cc241d
|
|
||||||
color9 #9d0006
|
|
||||||
|
|
||||||
# green
|
|
||||||
color2 #98971a
|
|
||||||
color10 #79740e
|
|
||||||
|
|
||||||
# yellow
|
|
||||||
color3 #d79921
|
|
||||||
color11 #b57614
|
|
||||||
|
|
||||||
# blue
|
|
||||||
color4 #458588
|
|
||||||
color12 #076678
|
|
||||||
|
|
||||||
# purple
|
|
||||||
color5 #b16286
|
|
||||||
color13 #8f3f71
|
|
||||||
|
|
||||||
# aqua
|
|
||||||
color6 #689d6a
|
|
||||||
color14 #427b58
|
|
||||||
|
|
||||||
# black (fg4/fg3)
|
|
||||||
color7 #7c6f64
|
|
||||||
color15 #665c54
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
include gruvbox_light.conf
|
|
||||||
|
|
||||||
background #f9f5d7
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
include gruvbox_light.conf
|
|
||||||
|
|
||||||
background #f2e5bc
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
# vim:ft=kitty
|
|
||||||
|
|
||||||
## name: Catppuccin Kitty Latte
|
|
||||||
## author: Catppuccin Org
|
|
||||||
## license: MIT
|
|
||||||
## upstream: https://github.com/catppuccin/kitty/blob/main/themes/latte.conf
|
|
||||||
## blurb: Soothing pastel theme for the high-spirited!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# The basic colors
|
|
||||||
foreground #4c4f69
|
|
||||||
background #eff1f5
|
|
||||||
selection_foreground #eff1f5
|
|
||||||
selection_background #dc8a78
|
|
||||||
|
|
||||||
# Cursor colors
|
|
||||||
cursor #dc8a78
|
|
||||||
cursor_text_color #eff1f5
|
|
||||||
|
|
||||||
# URL underline color when hovering with mouse
|
|
||||||
url_color #dc8a78
|
|
||||||
|
|
||||||
# Kitty window border colors
|
|
||||||
active_border_color #7287fd
|
|
||||||
inactive_border_color #9ca0b0
|
|
||||||
bell_border_color #df8e1d
|
|
||||||
|
|
||||||
# OS Window titlebar colors
|
|
||||||
wayland_titlebar_color system
|
|
||||||
macos_titlebar_color system
|
|
||||||
|
|
||||||
# Tab bar colors
|
|
||||||
active_tab_foreground #eff1f5
|
|
||||||
active_tab_background #8839ef
|
|
||||||
inactive_tab_foreground #4c4f69
|
|
||||||
inactive_tab_background #9ca0b0
|
|
||||||
tab_bar_background #bcc0cc
|
|
||||||
|
|
||||||
# Colors for marks (marked text in the terminal)
|
|
||||||
mark1_foreground #eff1f5
|
|
||||||
mark1_background #7287fd
|
|
||||||
mark2_foreground #eff1f5
|
|
||||||
mark2_background #8839ef
|
|
||||||
mark3_foreground #eff1f5
|
|
||||||
mark3_background #209fb5
|
|
||||||
|
|
||||||
# The 16 terminal colors
|
|
||||||
|
|
||||||
# black
|
|
||||||
color0 #5c5f77
|
|
||||||
color8 #6c6f85
|
|
||||||
|
|
||||||
# red
|
|
||||||
color1 #d20f39
|
|
||||||
color9 #d20f39
|
|
||||||
|
|
||||||
# green
|
|
||||||
color2 #40a02b
|
|
||||||
color10 #40a02b
|
|
||||||
|
|
||||||
# yellow
|
|
||||||
color3 #df8e1d
|
|
||||||
color11 #df8e1d
|
|
||||||
|
|
||||||
# blue
|
|
||||||
color4 #1e66f5
|
|
||||||
color12 #1e66f5
|
|
||||||
|
|
||||||
# magenta
|
|
||||||
color5 #ea76cb
|
|
||||||
color13 #ea76cb
|
|
||||||
|
|
||||||
# cyan
|
|
||||||
color6 #179299
|
|
||||||
color14 #179299
|
|
||||||
|
|
||||||
# white
|
|
||||||
color7 #acb0be
|
|
||||||
color15 #bcc0cc
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
# vim:ft=kitty
|
|
||||||
|
|
||||||
## name: Catppuccin Kitty Macchiato
|
|
||||||
## author: Catppuccin Org
|
|
||||||
## license: MIT
|
|
||||||
## upstream: https://github.com/catppuccin/kitty/blob/main/themes/macchiato.conf
|
|
||||||
## blurb: Soothing pastel theme for the high-spirited!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# The basic colors
|
|
||||||
foreground #cad3f5
|
|
||||||
background #24273a
|
|
||||||
selection_foreground #24273a
|
|
||||||
selection_background #f4dbd6
|
|
||||||
|
|
||||||
# Cursor colors
|
|
||||||
cursor #f4dbd6
|
|
||||||
cursor_text_color #24273a
|
|
||||||
|
|
||||||
# URL underline color when hovering with mouse
|
|
||||||
url_color #f4dbd6
|
|
||||||
|
|
||||||
# Kitty window border colors
|
|
||||||
active_border_color #b7bdf8
|
|
||||||
inactive_border_color #6e738d
|
|
||||||
bell_border_color #eed49f
|
|
||||||
|
|
||||||
# OS Window titlebar colors
|
|
||||||
wayland_titlebar_color system
|
|
||||||
macos_titlebar_color system
|
|
||||||
|
|
||||||
# Tab bar colors
|
|
||||||
active_tab_foreground #181926
|
|
||||||
active_tab_background #c6a0f6
|
|
||||||
inactive_tab_foreground #cad3f5
|
|
||||||
inactive_tab_background #1e2030
|
|
||||||
tab_bar_background #181926
|
|
||||||
|
|
||||||
# Colors for marks (marked text in the terminal)
|
|
||||||
mark1_foreground #24273a
|
|
||||||
mark1_background #b7bdf8
|
|
||||||
mark2_foreground #24273a
|
|
||||||
mark2_background #c6a0f6
|
|
||||||
mark3_foreground #24273a
|
|
||||||
mark3_background #7dc4e4
|
|
||||||
|
|
||||||
# The 16 terminal colors
|
|
||||||
|
|
||||||
# black
|
|
||||||
color0 #494d64
|
|
||||||
color8 #5b6078
|
|
||||||
|
|
||||||
# red
|
|
||||||
color1 #ed8796
|
|
||||||
color9 #ed8796
|
|
||||||
|
|
||||||
# green
|
|
||||||
color2 #a6da95
|
|
||||||
color10 #a6da95
|
|
||||||
|
|
||||||
# yellow
|
|
||||||
color3 #eed49f
|
|
||||||
color11 #eed49f
|
|
||||||
|
|
||||||
# blue
|
|
||||||
color4 #8aadf4
|
|
||||||
color12 #8aadf4
|
|
||||||
|
|
||||||
# magenta
|
|
||||||
color5 #f5bde6
|
|
||||||
color13 #f5bde6
|
|
||||||
|
|
||||||
# cyan
|
|
||||||
color6 #8bd5ca
|
|
||||||
color14 #8bd5ca
|
|
||||||
|
|
||||||
# white
|
|
||||||
color7 #b8c0e0
|
|
||||||
color15 #a5adcb
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
# vim:ft=kitty
|
|
||||||
|
|
||||||
## name: Catppuccin Kitty Mocha
|
|
||||||
## author: Catppuccin Org
|
|
||||||
## license: MIT
|
|
||||||
## upstream: https://github.com/catppuccin/kitty/blob/main/themes/mocha.conf
|
|
||||||
## blurb: Soothing pastel theme for the high-spirited!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# The basic colors
|
|
||||||
foreground #cdd6f4
|
|
||||||
background #1e1e2e
|
|
||||||
selection_foreground #1e1e2e
|
|
||||||
selection_background #f5e0dc
|
|
||||||
|
|
||||||
# Cursor colors
|
|
||||||
cursor #f5e0dc
|
|
||||||
cursor_text_color #1e1e2e
|
|
||||||
|
|
||||||
# URL underline color when hovering with mouse
|
|
||||||
url_color #f5e0dc
|
|
||||||
|
|
||||||
# Kitty window border colors
|
|
||||||
active_border_color #b4befe
|
|
||||||
inactive_border_color #6c7086
|
|
||||||
bell_border_color #f9e2af
|
|
||||||
|
|
||||||
# OS Window titlebar colors
|
|
||||||
wayland_titlebar_color system
|
|
||||||
macos_titlebar_color system
|
|
||||||
|
|
||||||
# Tab bar colors
|
|
||||||
active_tab_foreground #11111b
|
|
||||||
active_tab_background #cba6f7
|
|
||||||
inactive_tab_foreground #cdd6f4
|
|
||||||
inactive_tab_background #181825
|
|
||||||
tab_bar_background #11111b
|
|
||||||
|
|
||||||
# Colors for marks (marked text in the terminal)
|
|
||||||
mark1_foreground #1e1e2e
|
|
||||||
mark1_background #b4befe
|
|
||||||
mark2_foreground #1e1e2e
|
|
||||||
mark2_background #cba6f7
|
|
||||||
mark3_foreground #1e1e2e
|
|
||||||
mark3_background #74c7ec
|
|
||||||
|
|
||||||
# The 16 terminal colors
|
|
||||||
|
|
||||||
# black
|
|
||||||
color0 #45475a
|
|
||||||
color8 #585b70
|
|
||||||
|
|
||||||
# red
|
|
||||||
color1 #f38ba8
|
|
||||||
color9 #f38ba8
|
|
||||||
|
|
||||||
# green
|
|
||||||
color2 #a6e3a1
|
|
||||||
color10 #a6e3a1
|
|
||||||
|
|
||||||
# yellow
|
|
||||||
color3 #f9e2af
|
|
||||||
color11 #f9e2af
|
|
||||||
|
|
||||||
# blue
|
|
||||||
color4 #89b4fa
|
|
||||||
color12 #89b4fa
|
|
||||||
|
|
||||||
# magenta
|
|
||||||
color5 #f5c2e7
|
|
||||||
color13 #f5c2e7
|
|
||||||
|
|
||||||
# cyan
|
|
||||||
color6 #94e2d5
|
|
||||||
color14 #94e2d5
|
|
||||||
|
|
||||||
# white
|
|
||||||
color7 #bac2de
|
|
||||||
color15 #a6adc8
|
|
||||||
@@ -4,7 +4,7 @@ configuration {
|
|||||||
modi: "drun,window,filebrowser,ssh";
|
modi: "drun,window,filebrowser,ssh";
|
||||||
icon-theme: "Papirus";
|
icon-theme: "Papirus";
|
||||||
show-icons: true;
|
show-icons: true;
|
||||||
terminal: "kitty";
|
terminal: "alacritty";
|
||||||
drun-display-format: "{icon} {name}";
|
drun-display-format: "{icon} {name}";
|
||||||
location: 0;
|
location: 0;
|
||||||
disable-history: false;
|
disable-history: false;
|
||||||
@@ -18,6 +18,4 @@ configuration {
|
|||||||
display-filebrowser: " filebrowser:";
|
display-filebrowser: " filebrowser:";
|
||||||
}
|
}
|
||||||
|
|
||||||
//@theme "/home/fscotto/.config/rofi/themes/catppuccin-lavrent-mocha.rasi"
|
@theme "/home/fscotto/.config/rofi/themes/catppuccin-lavrent-mocha.rasi"
|
||||||
|
|
||||||
@theme "/usr/share/rofi/themes/glue_pro_blue.rasi"
|
|
||||||
|
|||||||
@@ -1,138 +0,0 @@
|
|||||||
/*******************************************************
|
|
||||||
* ROFI configs sway/i3 power-profiles-switcher for EndeavourOS
|
|
||||||
* Maintainer: joekamprad <joekamprad@endeavouros.com>
|
|
||||||
*******************************************************/
|
|
||||||
configuration {
|
|
||||||
font: "Noto Sans Regular 10";
|
|
||||||
show-icons: false;
|
|
||||||
icon-theme: "Qogir-dark";
|
|
||||||
scroll-method: 0;
|
|
||||||
disable-history: false;
|
|
||||||
fullscreen: false;
|
|
||||||
hide-scrollbar: true;
|
|
||||||
sidebar-mode: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@import "~/.config/rofi/config.rasi"
|
|
||||||
/* Insert theme modifications after this */
|
|
||||||
|
|
||||||
window {
|
|
||||||
background-color: @background;
|
|
||||||
border: 0;
|
|
||||||
padding: 10;
|
|
||||||
transparency: "real";
|
|
||||||
width: 200px;
|
|
||||||
location: east;
|
|
||||||
/*y-offset: 18;*/
|
|
||||||
/*x-offset: 850;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
listview {
|
|
||||||
lines: 4;
|
|
||||||
columns: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
element {
|
|
||||||
border: 0;
|
|
||||||
padding: 1px ;
|
|
||||||
}
|
|
||||||
|
|
||||||
element-text {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
element.normal.normal {
|
|
||||||
background-color: @normal-background;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
element.normal.urgent {
|
|
||||||
background-color: @urgent-background;
|
|
||||||
text-color: @urgent-foreground;
|
|
||||||
}
|
|
||||||
element.normal.active {
|
|
||||||
background-color: @active-background;
|
|
||||||
text-color: @active-foreground;
|
|
||||||
}
|
|
||||||
element.selected.normal {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
element.selected.urgent {
|
|
||||||
background-color: @selected-urgent-background;
|
|
||||||
text-color: @selected-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.selected.active {
|
|
||||||
background-color: @selected-active-background;
|
|
||||||
text-color: @selected-active-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.normal {
|
|
||||||
background-color: @alternate-normal-background;
|
|
||||||
text-color: @alternate-normal-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.urgent {
|
|
||||||
background-color: @alternate-urgent-background;
|
|
||||||
text-color: @alternate-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.active {
|
|
||||||
background-color: @alternate-active-background;
|
|
||||||
text-color: @alternate-active-foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
scrollbar {
|
|
||||||
width: 4px ;
|
|
||||||
border: 0;
|
|
||||||
handle-color: @normal-foreground;
|
|
||||||
handle-width: 8px ;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
mode-switcher {
|
|
||||||
border: 2px 0px 0px ;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
}
|
|
||||||
|
|
||||||
button {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
button.selected {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
inputbar {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
padding: 1px ;
|
|
||||||
}
|
|
||||||
|
|
||||||
case-indicator {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
entry {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
prompt {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
inputbar {
|
|
||||||
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Multiline header using the message widget */
|
|
||||||
mainbox {
|
|
||||||
children: [ message, inputbar, listview ];
|
|
||||||
}
|
|
||||||
message {
|
|
||||||
expand: false;
|
|
||||||
font: "Noto Sans Regular 10";
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
margin: 0 0 10px 0;
|
|
||||||
}
|
|
||||||
@@ -1,125 +0,0 @@
|
|||||||
/*******************************************************
|
|
||||||
* ROFI configs i3 powermenu for EndeavourOS
|
|
||||||
* Maintainer: joekamprad [joekamprad //a_t// endeavouros.com]
|
|
||||||
*******************************************************/
|
|
||||||
configuration {
|
|
||||||
font: "Noto Sans Regular 10";
|
|
||||||
show-icons: false;
|
|
||||||
icon-theme: "Qogir";
|
|
||||||
scroll-method: 0;
|
|
||||||
disable-history: false;
|
|
||||||
sidebar-mode: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@import "~/.config/rofi/config.rasi"
|
|
||||||
/* Insert theme modifications after this */
|
|
||||||
|
|
||||||
window {
|
|
||||||
background-color: @background;
|
|
||||||
border: 0;
|
|
||||||
padding: 10;
|
|
||||||
transparency: "real";
|
|
||||||
width: 120px;
|
|
||||||
location: east;
|
|
||||||
/*y-offset: 18;*/
|
|
||||||
/*x-offset: 850;*/
|
|
||||||
}
|
|
||||||
listview {
|
|
||||||
lines: 7;
|
|
||||||
columns: 1;
|
|
||||||
scrollbar: false;
|
|
||||||
}
|
|
||||||
element {
|
|
||||||
border: 0;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
element.normal.normal {
|
|
||||||
background-color: @normal-background;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
element.normal.urgent {
|
|
||||||
background-color: @urgent-background;
|
|
||||||
text-color: @urgent-foreground;
|
|
||||||
}
|
|
||||||
element.normal.active {
|
|
||||||
background-color: @active-background;
|
|
||||||
text-color: @active-foreground;
|
|
||||||
}
|
|
||||||
element.selected.normal {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
element.selected.urgent {
|
|
||||||
background-color: @selected-urgent-background;
|
|
||||||
text-color: @selected-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.selected.active {
|
|
||||||
background-color: @selected-active-background;
|
|
||||||
text-color: @selected-active-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.normal {
|
|
||||||
background-color: @alternate-normal-background;
|
|
||||||
text-color: @alternate-normal-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.urgent {
|
|
||||||
background-color: @alternate-urgent-background;
|
|
||||||
text-color: @alternate-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.active {
|
|
||||||
background-color: @alternate-active-background;
|
|
||||||
text-color: @alternate-active-foreground;
|
|
||||||
}
|
|
||||||
scrollbar {
|
|
||||||
width: 4px;
|
|
||||||
border: 0;
|
|
||||||
handle-color: @normal-foreground;
|
|
||||||
handle-width: 8px;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
mode-switcher {
|
|
||||||
border: 2px 0px 0px;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
button.selected {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
case-indicator {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
entry {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
prompt {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
|
|
||||||
}
|
|
||||||
textbox-prompt-colon {
|
|
||||||
expand: false;
|
|
||||||
str: ":";
|
|
||||||
margin: 0px 0.3em 0em 0em;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*removes the text input line*/
|
|
||||||
mainbox {
|
|
||||||
children: [listview];
|
|
||||||
}
|
|
||||||
@@ -1,136 +0,0 @@
|
|||||||
/*******************************************************
|
|
||||||
* ROFI configs i3 Apps menu for EndeavourOS
|
|
||||||
* Maintainer: joekamprad [joekamprad //a_t// endeavouros.com]
|
|
||||||
*******************************************************/
|
|
||||||
configuration {
|
|
||||||
font: "Noto Sans Regular 10";
|
|
||||||
show-icons: true;
|
|
||||||
icon-theme: "Qogir";
|
|
||||||
display-drun: "Apps";
|
|
||||||
drun-display-format: "{name}";
|
|
||||||
scroll-method: 0;
|
|
||||||
disable-history: false;
|
|
||||||
sidebar-mode: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@import "~/.config/rofi/config.rasi"
|
|
||||||
/* Insert theme modifications after this */
|
|
||||||
|
|
||||||
window {
|
|
||||||
background-color: @background;
|
|
||||||
border: 0;
|
|
||||||
padding: 30;
|
|
||||||
}
|
|
||||||
listview {
|
|
||||||
lines: 10;
|
|
||||||
columns: 3;
|
|
||||||
}
|
|
||||||
mainbox {
|
|
||||||
border: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
message {
|
|
||||||
border: 2px 0px 0px;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
text-color: @foreground;
|
|
||||||
}
|
|
||||||
listview {
|
|
||||||
fixed-height: 0;
|
|
||||||
border: 8px 0px 0px;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
spacing: 8px;
|
|
||||||
scrollbar: false;
|
|
||||||
padding: 2px 0px 0px;
|
|
||||||
}
|
|
||||||
element {
|
|
||||||
border: 0;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
element.normal.normal {
|
|
||||||
background-color: @normal-background;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
element.normal.urgent {
|
|
||||||
background-color: @urgent-background;
|
|
||||||
text-color: @urgent-foreground;
|
|
||||||
}
|
|
||||||
element.normal.active {
|
|
||||||
background-color: @active-background;
|
|
||||||
text-color: @active-foreground;
|
|
||||||
}
|
|
||||||
element.selected.normal {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
element.selected.urgent {
|
|
||||||
background-color: @selected-urgent-background;
|
|
||||||
text-color: @selected-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.selected.active {
|
|
||||||
background-color: @selected-active-background;
|
|
||||||
text-color: @selected-active-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.normal {
|
|
||||||
background-color: @alternate-normal-background;
|
|
||||||
text-color: @alternate-normal-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.urgent {
|
|
||||||
background-color: @alternate-urgent-background;
|
|
||||||
text-color: @alternate-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.active {
|
|
||||||
background-color: @alternate-active-background;
|
|
||||||
text-color: @alternate-active-foreground;
|
|
||||||
}
|
|
||||||
scrollbar {
|
|
||||||
width: 4px;
|
|
||||||
border: 0;
|
|
||||||
handle-color: @normal-foreground;
|
|
||||||
handle-width: 8px;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
mode-switcher {
|
|
||||||
border: 2px 0px 0px;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
button.selected {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
case-indicator {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
entry {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
prompt {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
|
|
||||||
}
|
|
||||||
textbox-prompt-colon {
|
|
||||||
expand: false;
|
|
||||||
str: ":";
|
|
||||||
margin: 0px 0.3em 0em 0em;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
@@ -1,138 +0,0 @@
|
|||||||
/*******************************************************
|
|
||||||
* ROFI configs i3 keyhint-menu for EndeavourOS
|
|
||||||
* Maintainer: joekamprad [joekamprad //a_t// endeavouros.com]
|
|
||||||
*******************************************************/
|
|
||||||
configuration {
|
|
||||||
font: "Noto Sans Regular 10";
|
|
||||||
show-icons: false;
|
|
||||||
icon-theme: "Qogir";
|
|
||||||
display-drun: "KeyHint";
|
|
||||||
drun-display-format: "{name}";
|
|
||||||
scroll-method: 0;
|
|
||||||
disable-history: false;
|
|
||||||
fullscreen: false;
|
|
||||||
hide-scrollbar: true;
|
|
||||||
sidebar-mode: false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@import "~/.config/rofi/config.rasi"
|
|
||||||
/* Insert theme modifications after this */
|
|
||||||
|
|
||||||
window {
|
|
||||||
background-color: @background;
|
|
||||||
border: 0;
|
|
||||||
padding: 30;
|
|
||||||
}
|
|
||||||
listview {
|
|
||||||
lines: 10;
|
|
||||||
columns: 1;
|
|
||||||
}
|
|
||||||
mainbox {
|
|
||||||
border: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
message {
|
|
||||||
border: 2px 0px 0px;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
textbox {
|
|
||||||
text-color: @foreground;
|
|
||||||
}
|
|
||||||
listview {
|
|
||||||
fixed-height: 0;
|
|
||||||
border: 8px 0px 0px;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
spacing: 8px;
|
|
||||||
scrollbar: false;
|
|
||||||
padding: 2px 0px 0px;
|
|
||||||
}
|
|
||||||
element {
|
|
||||||
border: 0;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
element-text {
|
|
||||||
background-color: inherit;
|
|
||||||
text-color: inherit;
|
|
||||||
}
|
|
||||||
element.normal.normal {
|
|
||||||
background-color: @normal-background;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
element.normal.urgent {
|
|
||||||
background-color: @urgent-background;
|
|
||||||
text-color: @urgent-foreground;
|
|
||||||
}
|
|
||||||
element.normal.active {
|
|
||||||
background-color: @active-background;
|
|
||||||
text-color: @active-foreground;
|
|
||||||
}
|
|
||||||
element.selected.normal {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
element.selected.urgent {
|
|
||||||
background-color: @selected-urgent-background;
|
|
||||||
text-color: @selected-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.selected.active {
|
|
||||||
background-color: @selected-active-background;
|
|
||||||
text-color: @selected-active-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.normal {
|
|
||||||
background-color: @alternate-normal-background;
|
|
||||||
text-color: @alternate-normal-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.urgent {
|
|
||||||
background-color: @alternate-urgent-background;
|
|
||||||
text-color: @alternate-urgent-foreground;
|
|
||||||
}
|
|
||||||
element.alternate.active {
|
|
||||||
background-color: @alternate-active-background;
|
|
||||||
text-color: @alternate-active-foreground;
|
|
||||||
}
|
|
||||||
scrollbar {
|
|
||||||
width: 4px;
|
|
||||||
border: 0;
|
|
||||||
handle-color: @normal-foreground;
|
|
||||||
handle-width: 8px;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
mode-switcher {
|
|
||||||
border: 2px 0px 0px;
|
|
||||||
border-color: @separatorcolor;
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
button.selected {
|
|
||||||
background-color: @selected-normal-background;
|
|
||||||
text-color: @selected-normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
padding: 1px;
|
|
||||||
}
|
|
||||||
case-indicator {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
entry {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
prompt {
|
|
||||||
spacing: 0;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
inputbar {
|
|
||||||
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
|
|
||||||
}
|
|
||||||
textbox-prompt-colon {
|
|
||||||
expand: false;
|
|
||||||
str: ":";
|
|
||||||
margin: 0px 0.3em 0em 0em;
|
|
||||||
text-color: @normal-foreground;
|
|
||||||
}
|
|
||||||
@@ -253,6 +253,7 @@ format = "[$symbol]($style)"
|
|||||||
|
|
||||||
[os.symbols]
|
[os.symbols]
|
||||||
Arch = " "
|
Arch = " "
|
||||||
|
Bluefin = " "
|
||||||
Debian = " "
|
Debian = " "
|
||||||
EndeavourOS = " "
|
EndeavourOS = " "
|
||||||
Fedora = " "
|
Fedora = " "
|
||||||
|
|||||||
@@ -1,132 +0,0 @@
|
|||||||
; Thunar GtkAccelMap rc-file -*- scheme -*-
|
|
||||||
; this file is an automated accelerator map dump
|
|
||||||
;
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/a92b2c1d964bbd2cee57b3ca30aec9b0" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarDetailsView/expandable-folders" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-type" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-last-modified" "")
|
|
||||||
; (gtk_accel_path "<Actions>/Thunarwindow/menu" "")
|
|
||||||
; (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>/ThunarBookmarks/6822d8a0d16503629063fd2052abbff6" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab-alt" "<Primary><Shift>ISO_Left_Tab")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-window" "<Primary>n")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/clear-directory-specific-settings" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-window" "<Primary>q")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-parent" "<Alt>Up")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-size-in-bytes" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-previous-tab" "<Primary>Page_Up")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/7847776007c0ad10c1b8be004aea6832" "")
|
|
||||||
; (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/494b789ae0ae178fb931445b11fe745e" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>KP_Subtract")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-descending" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-name" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-all-files" "<Primary>a")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/execute" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/properties" "<Alt>Return")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/cut-2" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-dtime" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab" "<Primary>Page_Down")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-templates" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste-2" "<Shift>Insert")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-filetype" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/close-all-windows" "<Primary><Shift>w")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-document" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/detach-tab" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/cancel-search" "Escape")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt2" "<Primary>equal")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-hidden-count" "")
|
|
||||||
; (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/view-location-selector-entry" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/paste" "<Primary>v")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in-alt1" "<Primary>KP_Add")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menubar" "<Primary>m")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back" "<Alt>Left")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-desktop" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-detailed-list" "<Primary>2")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore-show" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/sendto-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStatusBar/toggle-display-name" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/go-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out" "<Primary>minus")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "<Primary><Shift>i")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-2" "Reload")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/bookmarks-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward-alt" "Forward")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-1" "F5")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-3" "<Shift>KP_Delete")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload" "<Primary>r")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/arrange-items-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/unselect-all-files" "Escape")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-computer" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-image-preview" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/toggle-side-pane" "F9")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-icons" "<Primary>1")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete-2" "<Shift>Delete")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-in" "<Primary>plus")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/configure-columns" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/rename" "F2")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location" "<Primary>l")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-as-compact-list" "<Primary>3")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/search" "<Primary>f")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/new-tab" "<Primary>t")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset" "<Primary>0")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents/help-menu" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-in-new-tab" "<Primary><Shift>p")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-buttons" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt2" "Back")
|
|
||||||
; (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>/ThunarActionManager/trash-delete-2" "KP_Delete")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/back-alt1" "BackSpace")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/create-folder" "<Primary><Shift>n")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-home" "<Alt>Home")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-focused-split-view-pane" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-hidden" "<Primary>h")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/set-default-app" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/empty-trash" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/preferences" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/9edc6d9ffc675937bd3a9881f1c72552" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/delete" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-network" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-tree" "<Primary>e")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-system" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/search-alt" "Search")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/switch-next-tab-alt" "<Primary>Tab")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/sendto-desktop" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/make-link" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-reset-alt" "<Primary>KP_0")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/about" "")
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<actions>
|
|
||||||
<action>
|
|
||||||
<icon>utilities-terminal</icon>
|
|
||||||
<name>Open Terminal Here</name>
|
|
||||||
<submenu></submenu>
|
|
||||||
<unique-id>1770300074762233-1</unique-id>
|
|
||||||
<command>exo-open --working-directory %f --launch TerminalEmulator</command>
|
|
||||||
<description>Example for a custom action</description>
|
|
||||||
<range></range>
|
|
||||||
<patterns>*</patterns>
|
|
||||||
<startup-notify/>
|
|
||||||
<directories/>
|
|
||||||
</action>
|
|
||||||
</actions>
|
|
||||||
@@ -1,279 +0,0 @@
|
|||||||
# -*- mode: i3wm-config -*-
|
|
||||||
# i3 config file (v4)
|
|
||||||
#
|
|
||||||
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
|
||||||
#
|
|
||||||
# This config file uses keycodes (bindsym) and was written for the QWERTY
|
|
||||||
# layout.
|
|
||||||
#
|
|
||||||
# To get a config file with the same key positions, but for your current
|
|
||||||
# layout, use the i3-config-wizard
|
|
||||||
#
|
|
||||||
|
|
||||||
# use these keys for focus, movement, and resize directions when reaching for
|
|
||||||
# the arrows is not convenient
|
|
||||||
set $left h
|
|
||||||
set $down j
|
|
||||||
set $up k
|
|
||||||
set $right l
|
|
||||||
|
|
||||||
set $term 'xfce4-terminal'
|
|
||||||
set $editor 'emacs'
|
|
||||||
set $filemanager 'thunar'
|
|
||||||
set $notification 'dunst'
|
|
||||||
set $browser 'chromium'
|
|
||||||
set $clipboard 'xfce4-clipman'
|
|
||||||
|
|
||||||
# Define names for default workspaces for which we configure key bindings later on.
|
|
||||||
# We use variables to avoid repeating the names in multiple places.
|
|
||||||
set $ws1 "1"
|
|
||||||
set $ws2 "2"
|
|
||||||
set $ws3 "3"
|
|
||||||
set $ws4 "4"
|
|
||||||
set $ws5 "5"
|
|
||||||
set $ws6 "6"
|
|
||||||
set $ws7 "7"
|
|
||||||
set $ws8 "8"
|
|
||||||
set $ws9 "9"
|
|
||||||
set $ws10 "10"
|
|
||||||
|
|
||||||
###############################################################
|
|
||||||
###############################################################
|
|
||||||
################## LOOK AND FEEL ##################
|
|
||||||
###############################################################
|
|
||||||
###############################################################
|
|
||||||
|
|
||||||
# Define colors variables:
|
|
||||||
set $darkbluetrans #08052be6
|
|
||||||
set $darkblue #08052b
|
|
||||||
set $lightblue #5294e2
|
|
||||||
set $urgentred #e53935
|
|
||||||
set $white #ffffff
|
|
||||||
set $black #000000
|
|
||||||
set $purple #e345ff
|
|
||||||
set $darkgrey #383c4a
|
|
||||||
set $grey #b0b5bd
|
|
||||||
set $mediumgrey #8b8b8b
|
|
||||||
set $yellowbrown #e1b700
|
|
||||||
|
|
||||||
# define colors for windows:
|
|
||||||
#class border bground text indicator child_border
|
|
||||||
client.focused $lightblue $darkblue $white $mediumgrey $mediumgrey
|
|
||||||
client.unfocused $darkblue $darkblue $grey $darkgrey $darkgrey
|
|
||||||
client.focused_inactive $darkblue $darkblue $grey $black $black
|
|
||||||
client.urgent $urgentred $urgentred $white $yellowbrown $yellowbrown
|
|
||||||
|
|
||||||
# Setting cursor
|
|
||||||
# seat seat0 xcursor_theme catppuccin-mocha-lavender-cursors 25
|
|
||||||
|
|
||||||
# Font for window titles. Will also be used by the bar unless a different font
|
|
||||||
# is used in the bar {} block below.
|
|
||||||
font pango:Liberation Sans Regular 10
|
|
||||||
|
|
||||||
# Windows configuration
|
|
||||||
default_border pixel 3
|
|
||||||
default_floating_border pixel 3
|
|
||||||
gaps inner 5
|
|
||||||
gaps outer 5
|
|
||||||
|
|
||||||
# Apply wallpaper
|
|
||||||
exec_always --no-startup-id feh --bg-scale ~/.config/i3/wallpaper.jpg
|
|
||||||
|
|
||||||
###############################################################
|
|
||||||
###############################################################
|
|
||||||
################## WORKSPACES ##################
|
|
||||||
###############################################################
|
|
||||||
###############################################################
|
|
||||||
|
|
||||||
# Floating/sticky windows
|
|
||||||
for_window [class="Pop-up"] floating enable
|
|
||||||
for_window [class="Bubble"] floating enable
|
|
||||||
for_window [class="Task_dialog"] floating enable
|
|
||||||
for_window [class="Preferences"] floating enable
|
|
||||||
for_window [class="Dialog"] floating enable
|
|
||||||
for_window [class="Menu"] floating enable
|
|
||||||
for_window [class="Organizer"] floating enable
|
|
||||||
for_window [class="About"] floating enable
|
|
||||||
for_window [class="Toolbox"] floating enable
|
|
||||||
for_window [class="Page-info"] floating enable
|
|
||||||
for_window [class="Webconsole"] floating enable
|
|
||||||
for_window [class="Authy"] floating enable
|
|
||||||
for_window [class="Termfloat"] floating enable, resize set 960 540
|
|
||||||
for_window [class="Mpv"] floating enable, resize set 960 540
|
|
||||||
for_window [class="Spotify"] floating enable, resize set 1280 1024, move scratchpad
|
|
||||||
for_window [class="xfce4-clipman-history"] floating enable
|
|
||||||
|
|
||||||
# Workspaces
|
|
||||||
assign [class="Emacs"] 2
|
|
||||||
assign [class="Chromium"] 1
|
|
||||||
assign [class="Telegram"] 2
|
|
||||||
assign [class="discord"] 3
|
|
||||||
|
|
||||||
focus_follows_mouse no
|
|
||||||
|
|
||||||
###############################################################
|
|
||||||
###############################################################
|
|
||||||
################## KEYBINDINGS ##################
|
|
||||||
###############################################################
|
|
||||||
###############################################################
|
|
||||||
|
|
||||||
# Logo key. Use Mod1 for Alt.
|
|
||||||
set $mod Mod4
|
|
||||||
|
|
||||||
# start a terminal
|
|
||||||
bindsym $mod+Return exec $term
|
|
||||||
|
|
||||||
# kill focused window
|
|
||||||
bindsym $mod+Shift+q kill
|
|
||||||
|
|
||||||
# define mode for launcher
|
|
||||||
mode "launcher" {
|
|
||||||
bindsym d exec "rofi -show drun"
|
|
||||||
bindsym s exec "rofi -show ssh"
|
|
||||||
bindsym w exec "rofi -show window"
|
|
||||||
bindsym f exec "rofi -show filebrowser"
|
|
||||||
|
|
||||||
bindsym $mod+d mode "default"
|
|
||||||
bindsym Return mode "default"
|
|
||||||
bindsym Escape mode "default"
|
|
||||||
}
|
|
||||||
bindsym $mod+d mode "launcher"
|
|
||||||
|
|
||||||
bindsym $mod+Shift+f exec $filemanager
|
|
||||||
bindsym $mod+Shift+b exec $browser
|
|
||||||
bindsym $mod+Shift+t exec "flatpak run org.telegram.desktop"
|
|
||||||
bindsym $mod+Shift+e exec $editor
|
|
||||||
bindsym Print exec xfce4-screenshooter
|
|
||||||
bindsym Shift+Print exec xfce4-screenshooter -r
|
|
||||||
bindsym Alt+Print exec xfce4-screenshooter -w
|
|
||||||
bindsym $mod+Shift+v exec --no-startup-id xfce4-clipman-history
|
|
||||||
bindsym $mod+Mod1+l exec xflock4
|
|
||||||
bindsym Mod1+Ctrl+q exec xfce4-session-logout
|
|
||||||
|
|
||||||
# Use pactl to adjust volume in PulseAudio.
|
|
||||||
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5%
|
|
||||||
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5%
|
|
||||||
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle
|
|
||||||
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
|
||||||
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set +5%
|
|
||||||
bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set 5%-
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# use Mouse+Mod4 to drag floating windows to their wanted position
|
|
||||||
floating_modifier $mod
|
|
||||||
|
|
||||||
# move tiling windows via drag & drop by left-clicking into the title bar,
|
|
||||||
# or left-clicking anywhere into the window while holding the floating modifier.
|
|
||||||
tiling_drag modifier titlebar
|
|
||||||
|
|
||||||
# change focus
|
|
||||||
bindsym $mod+$left focus left
|
|
||||||
bindsym $mod+$down focus down
|
|
||||||
bindsym $mod+$up focus up
|
|
||||||
bindsym $mod+$right focus right
|
|
||||||
|
|
||||||
# alternatively, you can use the cursor keys:
|
|
||||||
bindsym $mod+Left focus left
|
|
||||||
bindsym $mod+Down focus down
|
|
||||||
bindsym $mod+Up focus up
|
|
||||||
bindsym $mod+Right focus right
|
|
||||||
|
|
||||||
# move focused window
|
|
||||||
bindsym $mod+Shift+$left move left
|
|
||||||
bindsym $mod+Shift+$down move down
|
|
||||||
bindsym $mod+Shift+$up move up
|
|
||||||
bindsym $mod+Shift+$right move right
|
|
||||||
|
|
||||||
# alternatively, you can use the cursor keys:
|
|
||||||
bindsym $mod+Shift+Left move left
|
|
||||||
bindsym $mod+Shift+Down move down
|
|
||||||
bindsym $mod+Shift+Up move up
|
|
||||||
bindsym $mod+Shift+Right move right
|
|
||||||
|
|
||||||
# split in horizontal orientation
|
|
||||||
bindsym Mod1+h split h
|
|
||||||
|
|
||||||
# split in vertical orientation
|
|
||||||
bindsym $mod+v split v
|
|
||||||
|
|
||||||
# enter fullscreen mode for the focused container
|
|
||||||
bindsym $mod+f fullscreen toggle
|
|
||||||
|
|
||||||
# change container layout (stacked, tabbed, toggle split)
|
|
||||||
bindsym $mod+s layout stacking
|
|
||||||
bindsym $mod+w layout tabbed
|
|
||||||
bindsym $mod+e layout toggle split
|
|
||||||
|
|
||||||
# toggle tiling / floating
|
|
||||||
bindsym $mod+Shift+space floating toggle
|
|
||||||
|
|
||||||
# change focus between tiling / floating windows
|
|
||||||
bindsym $mod+space focus mode_toggle
|
|
||||||
|
|
||||||
# focus the parent container
|
|
||||||
bindsym $mod+a focus parent
|
|
||||||
|
|
||||||
# focus the child container
|
|
||||||
bindsym Mod1+d focus child
|
|
||||||
|
|
||||||
# move the currently focused window to the scratchpad
|
|
||||||
bindsym $mod+Shift+minus move scratchpad
|
|
||||||
|
|
||||||
# Show the next scratchpad window or hide the focused scratchpad window.
|
|
||||||
# If there are multiple scratchpad windows, this command cycles through them.
|
|
||||||
bindsym $mod+minus scratchpad show
|
|
||||||
|
|
||||||
# switch to workspace
|
|
||||||
bindsym $mod+1 workspace number $ws1
|
|
||||||
bindsym $mod+2 workspace number $ws2
|
|
||||||
bindsym $mod+3 workspace number $ws3
|
|
||||||
bindsym $mod+4 workspace number $ws4
|
|
||||||
bindsym $mod+5 workspace number $ws5
|
|
||||||
bindsym $mod+6 workspace number $ws6
|
|
||||||
bindsym $mod+7 workspace number $ws7
|
|
||||||
bindsym $mod+8 workspace number $ws8
|
|
||||||
bindsym $mod+9 workspace number $ws9
|
|
||||||
bindsym $mod+0 workspace number $ws10
|
|
||||||
|
|
||||||
# move focused container to workspace
|
|
||||||
bindsym $mod+Shift+1 move container to workspace number $ws1
|
|
||||||
bindsym $mod+Shift+2 move container to workspace number $ws2
|
|
||||||
bindsym $mod+Shift+3 move container to workspace number $ws3
|
|
||||||
bindsym $mod+Shift+4 move container to workspace number $ws4
|
|
||||||
bindsym $mod+Shift+5 move container to workspace number $ws5
|
|
||||||
bindsym $mod+Shift+6 move container to workspace number $ws6
|
|
||||||
bindsym $mod+Shift+7 move container to workspace number $ws7
|
|
||||||
bindsym $mod+Shift+8 move container to workspace number $ws8
|
|
||||||
bindsym $mod+Shift+9 move container to workspace number $ws9
|
|
||||||
bindsym $mod+Shift+0 move container to workspace number $ws10
|
|
||||||
|
|
||||||
bindsym $mod+period workspace next
|
|
||||||
bindsym $mod+comma workspace prev
|
|
||||||
|
|
||||||
# resize window (you can also use the mouse for that)
|
|
||||||
mode "resize" {
|
|
||||||
# These bindings trigger as soon as you enter the resize mode
|
|
||||||
|
|
||||||
# Pressing left will shrink the window’s width.
|
|
||||||
# Pressing right will grow the window’s width.
|
|
||||||
# Pressing up will shrink the window’s height.
|
|
||||||
# Pressing down will grow the window’s height.
|
|
||||||
bindsym $left resize shrink width 10 px or 10 ppt
|
|
||||||
bindsym $down resize grow height 10 px or 10 ppt
|
|
||||||
bindsym $up resize shrink height 10 px or 10 ppt
|
|
||||||
bindsym $right resize grow width 10 px or 10 ppt
|
|
||||||
|
|
||||||
# same bindings, but for the arrow keys
|
|
||||||
bindsym Left resize shrink width 10 px or 10 ppt
|
|
||||||
bindsym Down resize grow height 10 px or 10 ppt
|
|
||||||
bindsym Up resize shrink height 10 px or 10 ppt
|
|
||||||
bindsym Right resize grow width 10 px or 10 ppt
|
|
||||||
|
|
||||||
# back to normal: Enter or Escape or Mod4+r
|
|
||||||
bindsym Return mode "default"
|
|
||||||
bindsym Escape mode "default"
|
|
||||||
bindsym $mod+r mode "default"
|
|
||||||
}
|
|
||||||
|
|
||||||
bindsym $mod+r mode "resize"
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.6 MiB |
@@ -1,7 +0,0 @@
|
|||||||
#/usr/bin/env bash
|
|
||||||
|
|
||||||
BACKGROUND="${XDG_CONFIG_HOME:-${HOME}/.config}/i3/lockscreen.png"
|
|
||||||
i3lock --image="${BACKGROUND}" \
|
|
||||||
--color=000000 \
|
|
||||||
--ignore-empty-password \
|
|
||||||
--show-failed-attempts
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
chosen=$(echo -e "⏻ Shutdown\n Restart\n Logout\n Suspend\n Hibernate" | rofi -dmenu -p "Power Menu:" -theme-str 'window {width: 20%;}')
|
|
||||||
|
|
||||||
case "$chosen" in
|
|
||||||
"⏻ Shutdown") systemctl poweroff ;;
|
|
||||||
" Restart") systemctl reboot ;;
|
|
||||||
" Logout") loginctl terminate-session $XDG_SESSION_ID ;;
|
|
||||||
" Suspend") systemctl suspend ;;
|
|
||||||
" Hibernate") systemctl hibernate ;;
|
|
||||||
*) exit 0 ;;
|
|
||||||
esac
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 237 KiB |
@@ -1,47 +0,0 @@
|
|||||||
; xfdesktop GtkAccelMap rc-file -*- scheme -*-
|
|
||||||
; this file is an automated accelerator map dump
|
|
||||||
;
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/primary-menu-2" "Menu")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/open-with-other" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/activate-3" "Return")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/properties-3" "<Alt>KP_Enter")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/trash" "Delete")
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/next-background" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/cut-2" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/cut" "<Primary>x")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/unselect-all" "Escape")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/copy-2" "<Primary>Insert")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/activate" "space")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/activate-2" "KP_Space")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/open" "<Primary>o")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/select-all" "<Primary>a")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/properties-2" "<Alt>ISO_Enter")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/empty-trash" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/open-trash" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/trash-3" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/properties" "<Alt>Return")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/copy" "<Primary>c")
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/reload-2" "Reload")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/delete-3" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/trash-2" "KP_Delete")
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/reload" "<Primary>r")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/paste-into-folder" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/paste-2" "<Shift>Insert")
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/secondary-menu" "<Primary><Shift>F10")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/delete-2" "<Shift>KP_Delete")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/toggle-cursor-2" "<Primary>KP_Space")
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/reload-1" "F5")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/open-filesystem" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/activate-5" "KP_Enter")
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/primary-menu" "<Shift>F10")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/create-document" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/create-folder" "<Primary><Shift>n")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/toggle-cursor" "<Primary>space")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/toggle-show-hidden" "<Primary>h")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/open-home" "<Alt>Home")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/activate-4" "ISO_Enter")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/delete" "<Shift>Delete")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/paste" "<Primary>v")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopFileIconManager/rename" "F2")
|
|
||||||
; (gtk_accel_path "<Actions>/XfdesktopIconView/arrange-icons" "")
|
|
||||||
; (gtk_accel_path "<Actions>/XfceDesktop/secondary-menu-2" "<Primary>Menu")
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
#
|
|
||||||
# DO NOT EDIT THIS FILE WHILE XFDESKTOP IS RUNNING
|
|
||||||
#
|
|
||||||
configs:
|
|
||||||
- level: 1
|
|
||||||
monitors:
|
|
||||||
- id: "359f9a4a3ec3cfb503d83e68e51006ca616a8ce1"
|
|
||||||
display_name: "Xiaomi Corporation Mi Monitor 0000000000000 (HDMI-A-1)"
|
|
||||||
geometry:
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 3440
|
|
||||||
height: 1440
|
|
||||||
- id: "36e25f5c8380519864a9cac609054849387921ee"
|
|
||||||
display_name: "Xiaomi Corporation Mi Monitor (DP-1)"
|
|
||||||
geometry:
|
|
||||||
x: 1920
|
|
||||||
y: 0
|
|
||||||
width: 3440
|
|
||||||
height: 1440
|
|
||||||
icons:
|
|
||||||
"/":
|
|
||||||
row: 1
|
|
||||||
col: 0
|
|
||||||
"trash:///":
|
|
||||||
row: 2
|
|
||||||
col: 0
|
|
||||||
"f7d00217-6e0a-454a-af56-98ecc8e5c4c6":
|
|
||||||
row: 3
|
|
||||||
col: 0
|
|
||||||
last_seen: 1770502961003612
|
|
||||||
"6244-32F6":
|
|
||||||
row: 3
|
|
||||||
col: 0
|
|
||||||
last_seen: 1770623940379615
|
|
||||||
"/home/fscotto":
|
|
||||||
row: 0
|
|
||||||
col: 0
|
|
||||||
"5782F4E556C700DD":
|
|
||||||
row: 4
|
|
||||||
col: 0
|
|
||||||
last_seen: 1770656831571372
|
|
||||||
- level: 0
|
|
||||||
monitors:
|
|
||||||
- id: "3b9e995fde2099f1e479a6489d30cafdea23c8f0"
|
|
||||||
display_name: "AU Optronics 0x243D (eDP-1)"
|
|
||||||
geometry:
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1920
|
|
||||||
height: 1080
|
|
||||||
icons:
|
|
||||||
"1a175420-3f1c-4b35-93b0-8d062ad7380b":
|
|
||||||
row: 3
|
|
||||||
col: 0
|
|
||||||
last_seen: 1770412534817771
|
|
||||||
"/":
|
|
||||||
row: 0
|
|
||||||
col: 0
|
|
||||||
"trash:///":
|
|
||||||
row: 2
|
|
||||||
col: 0
|
|
||||||
"0046cb84-622d-4ede-991e-9f13852f81c4":
|
|
||||||
row: 4
|
|
||||||
col: 0
|
|
||||||
last_seen: 1770326123100662
|
|
||||||
"259E0EE27F8BE99F":
|
|
||||||
row: 5
|
|
||||||
col: 0
|
|
||||||
last_seen: 1770412534822518
|
|
||||||
"/home/fscotto":
|
|
||||||
row: 1
|
|
||||||
col: 0
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
auto-online=false
|
|
||||||
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
WebBrowser=chromium
|
|
||||||
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
use_css=false
|
|
||||||
normal_color=rgb(255,255,255)
|
|
||||||
focused_color=rgb(255,255,255)
|
|
||||||
urgent_color=rgb(255,0,0)
|
|
||||||
mode_color=rgb(255,0,0)
|
|
||||||
visible_color=rgb(94,92,100)
|
|
||||||
css=.workspace { }\n.workspace.visible { }\n.workspace.focused { font-weight: bold; }\n.workspace.urgent { color: red; }\n.binding-mode { }\n
|
|
||||||
strip_workspace_numbers=false
|
|
||||||
auto_detect_outputs=false
|
|
||||||
output=
|
|
||||||
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<actions>
|
|
||||||
<action>
|
|
||||||
<name>Bugz</name>
|
|
||||||
<regex>bug\s*#?\s*([0-9]+)</regex>
|
|
||||||
<group>0</group>
|
|
||||||
<commands>
|
|
||||||
<command>
|
|
||||||
<name>GNOME Bug</name>
|
|
||||||
<exec>exo-open https://bugzilla.gnome.org/show_bug.cgi?id=\1</exec>
|
|
||||||
</command>
|
|
||||||
<command>
|
|
||||||
<name>Xfce Bug</name>
|
|
||||||
<exec>exo-open https://bugzilla.xfce.org/show_bug.cgi?id=\1</exec>
|
|
||||||
</command>
|
|
||||||
</commands>
|
|
||||||
</action>
|
|
||||||
<action>
|
|
||||||
<name>Image</name>
|
|
||||||
<regex>(http|ftp).+\.(jpg|png|gif)</regex>
|
|
||||||
<group>0</group>
|
|
||||||
<commands>
|
|
||||||
<command>
|
|
||||||
<name>View with Ristretto</name>
|
|
||||||
<exec>ristretto "\0"</exec>
|
|
||||||
</command>
|
|
||||||
<command>
|
|
||||||
<name>Edit with Gimp</name>
|
|
||||||
<exec>gimp "\0"</exec>
|
|
||||||
</command>
|
|
||||||
</commands>
|
|
||||||
</action>
|
|
||||||
<action>
|
|
||||||
<name>Long URL</name>
|
|
||||||
<regex>https?://[^\s]{120,}</regex>
|
|
||||||
<group>0</group>
|
|
||||||
<commands>
|
|
||||||
<command>
|
|
||||||
<name>Shrink the URL</name>
|
|
||||||
<exec>exo-open https://tinyurl.com/create.php?url=\0</exec>
|
|
||||||
</command>
|
|
||||||
</commands>
|
|
||||||
</action>
|
|
||||||
</actions>
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
[Settings]
|
|
||||||
mpd_host=localhost
|
|
||||||
mpd_port=6600
|
|
||||||
mpd_password=
|
|
||||||
show_frame=true
|
|
||||||
client_appl=SETME
|
|
||||||
streaming_appl=
|
|
||||||
tooltip_format=Volume: %vol%% - Mpd %status%%newline%%artist% - %album% -/- (#%track%) %title%
|
|
||||||
playlist_format=%artist% - %album% -/- (#%track%) %title%
|
|
||||||
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
app=/usr/bin/flatpak
|
|
||||||
custom_action_command=
|
|
||||||
last_user=
|
|
||||||
last_extension=png
|
|
||||||
show_in_folder=false
|
|
||||||
screenshot_dir=file:///home/fscotto/Immagini
|
|
||||||
action=2
|
|
||||||
delay=0
|
|
||||||
region=2
|
|
||||||
show_mouse=0
|
|
||||||
show_border=0
|
|
||||||
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
<?xml version="1.1" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<channel name="displays" version="1.0">
|
|
||||||
<property name="ActiveProfile" type="string" value="Default"/>
|
|
||||||
<property name="Notify" type="int" value="1"/>
|
|
||||||
<property name="AutoEnableProfiles" type="int" value="3"/>
|
|
||||||
<property name="IdentityPopups" type="bool" value="false"/>
|
|
||||||
<property name="Default" type="empty">
|
|
||||||
<property name="HDMI-A-1" type="string" value="Xiaomi Corporation 34"">
|
|
||||||
<property name="Active" type="bool" value="true"/>
|
|
||||||
<property name="EDID" type="string" value="823a61452e1ac6b974b32377a3aea5fdc3673242"/>
|
|
||||||
<property name="Resolution" type="string" value="3440x1440"/>
|
|
||||||
<property name="RefreshRate" type="double" value="99.992497561707552"/>
|
|
||||||
<property name="ModeFlags" type="uint64" value="5"/>
|
|
||||||
<property name="Rotation" type="int" value="0"/>
|
|
||||||
<property name="Reflection" type="string" value="0"/>
|
|
||||||
<property name="Primary" type="bool" value="false"/>
|
|
||||||
<property name="Scale" type="double" value="1"/>
|
|
||||||
<property name="Position" type="empty">
|
|
||||||
<property name="X" type="int" value="0"/>
|
|
||||||
<property name="Y" type="int" value="0"/>
|
|
||||||
</property>
|
|
||||||
</property>
|
|
||||||
</property>
|
|
||||||
</channel>
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
<?xml version="1.1" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<channel name="keyboard-layout" version="1.0">
|
|
||||||
<property name="Default" type="empty">
|
|
||||||
<property name="XkbDisable" type="bool" value="false"/>
|
|
||||||
<property name="XkbLayout" type="string" value="us"/>
|
|
||||||
<property name="XkbVariant" type="string" value="alt-intl"/>
|
|
||||||
</property>
|
|
||||||
</channel>
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
<?xml version="1.1" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<channel name="keyboards" version="1.0">
|
|
||||||
<property name="Default" type="empty">
|
|
||||||
<property name="Numlock" type="bool" value="false"/>
|
|
||||||
</property>
|
|
||||||
</channel>
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
<?xml version="1.1" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<channel name="ristretto" version="1.0">
|
|
||||||
<property name="window" type="empty">
|
|
||||||
<property name="navigationbar" type="empty">
|
|
||||||
<property name="position" type="string" value="left"/>
|
|
||||||
</property>
|
|
||||||
<property name="height" type="uint" value="1381"/>
|
|
||||||
<property name="width" type="uint" value="1702"/>
|
|
||||||
<property name="thumbnails" type="empty">
|
|
||||||
<property name="size" type="uint" value="6"/>
|
|
||||||
<property name="show" type="bool" value="false"/>
|
|
||||||
</property>
|
|
||||||
<property name="bgcolor-override" type="bool" value="false"/>
|
|
||||||
</property>
|
|
||||||
<property name="desktop" type="empty">
|
|
||||||
<property name="type" type="string" value="xfce"/>
|
|
||||||
</property>
|
|
||||||
</channel>
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user