Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a9e1b686d0 | ||
|
|
a050d87439 | ||
|
|
694a305855 | ||
|
|
6ceb170b89 | ||
|
|
0db4be6796 | ||
|
|
dbbf5a32fc | ||
|
|
bce43be0d7 | ||
|
|
71e9db5c4c | ||
|
|
a504681e32 | ||
|
|
437eda2852 | ||
|
|
101f8c51ef | ||
|
|
49f03bd7e1 | ||
|
|
a2559ce0ca | ||
|
|
9066c62080 | ||
|
|
2a48013090 | ||
|
|
0eb7afa040 | ||
|
|
4a07f80f69 | ||
|
|
74ac372e82 | ||
|
|
a7089dea47 | ||
|
|
28c966edfc | ||
|
|
9d2a19802a | ||
|
|
5be8fcf43f | ||
|
|
07635d8226 | ||
|
|
8f36ce722e | ||
|
|
c9a24374a8 | ||
|
|
c92efcfb53 | ||
|
|
777312620a | ||
|
|
65e66968e2 | ||
|
|
9ab6fffba6 | ||
|
|
090276a3f9 | ||
|
|
379bca8d89 | ||
|
|
fd6ef30ba9 | ||
|
|
e0d79298c7 | ||
|
|
1455c6b87d | ||
|
|
1c295b5fde | ||
|
|
a446f223e5 | ||
|
|
848f75822b | ||
|
|
de09a54472 | ||
|
|
e17cafe4f8 | ||
|
|
9d1d81ece4 | ||
|
|
edf2345a30 | ||
|
|
31df3152d7 | ||
|
|
b69616f39f | ||
|
|
114b5f2bb8 | ||
|
|
81b12b8b79 | ||
|
|
eb50d9804a | ||
|
|
7b7f5a5dcf | ||
|
|
64e545ae32 | ||
|
|
278a26f370 | ||
|
|
d5f7bea078 | ||
|
|
9bace2f54f | ||
|
|
392f1b7861 | ||
|
|
0724096134 | ||
|
|
66860070a9 | ||
|
|
814860ca63 | ||
|
|
2e3970f1ef | ||
|
|
1c47a8aaf9 | ||
|
|
0d91fde161 | ||
|
|
ec6317c2ce | ||
|
|
942c9853f1 | ||
|
|
4b6e7392ea | ||
|
|
469e8d3b63 | ||
|
|
aa634a19ef | ||
|
|
aae65576fb | ||
|
|
3acc5bc70d | ||
|
|
31f922c462 | ||
|
|
f94fe68944 | ||
|
|
ed9abcd1f1 | ||
|
|
9172645dbb | ||
|
|
028c3c699f | ||
|
|
25a427b23a | ||
|
|
ad37460160 | ||
|
|
47b0f5a570 | ||
|
|
6cf1f75d6d | ||
|
|
ccd8ab2591 | ||
|
|
5e26805b38 | ||
|
|
f009dd3b68 | ||
|
|
d5e7004463 | ||
|
|
d735d7efb6 | ||
|
|
99ad8ee4aa | ||
|
|
2ae998a74b | ||
|
|
79d98702eb | ||
|
|
0144b63a52 | ||
|
|
fa3dbf6245 | ||
|
|
ae3267750b | ||
|
|
985fa9d53c | ||
|
|
7e1bb9b76e | ||
|
|
0e70debea7 | ||
|
|
b5ccbe9c55 | ||
|
|
ee3272532e | ||
|
|
9a26d53c0a | ||
|
|
1ddaa5bce2 | ||
|
|
9f4227bfcf | ||
|
|
021cafeef8 | ||
|
|
3eee935f25 | ||
|
|
dcd7c3e92f | ||
|
|
1a9bb89edc | ||
|
|
19e404619e | ||
|
|
d1cab8ceef | ||
|
|
e674149cdf | ||
|
|
8b3b9086dc | ||
|
|
8c694cd644 | ||
|
|
770258ed4b | ||
|
|
807d011378 | ||
|
|
6de6008b17 | ||
|
|
3619df105e | ||
|
|
8be3916d7d | ||
|
|
9d1a5347ce | ||
|
|
a98be9b440 | ||
|
|
240e9cf7ca | ||
|
|
2574b74ca1 | ||
|
|
5356cc93fd | ||
|
|
e75acf95c3 | ||
|
|
14d005b58e | ||
|
|
70b4a808c7 | ||
|
|
327cad5594 | ||
|
|
c73c2f60c1 | ||
|
|
847c4012b8 | ||
|
|
8e7495ab93 | ||
|
|
6b752098bb | ||
|
|
cb07283280 | ||
|
|
e664b6f464 | ||
|
|
3d2992e5ca | ||
|
|
d3f3aa3a29 | ||
|
|
a4b60b401f | ||
|
|
f45799e3e5 | ||
|
|
da04ee3883 | ||
|
|
38ad61c7d1 | ||
|
|
adbb66bab0 | ||
|
|
e9fc037519 | ||
|
|
1a0d466105 | ||
|
|
23080159f9 | ||
|
|
ef9b2fd0f0 | ||
|
|
6adaa7b4e5 | ||
|
|
39c63fe2eb | ||
|
|
cd5ab0eff4 | ||
|
|
52cafe0b26 | ||
|
|
0e9a8407b9 | ||
|
|
2e241c123c | ||
|
|
fddd7c1573 | ||
|
|
b27f0e7026 | ||
|
|
55e57519bc | ||
|
|
3f99834f5d | ||
|
|
d9b59f74a2 | ||
|
|
417312e90e | ||
|
|
8448f0e00d | ||
|
|
c51a3d90e0 | ||
|
|
dece37ae34 | ||
|
|
479bd9b360 | ||
|
|
4c24fc3647 | ||
|
|
c80bb97e1c | ||
|
|
21f51da357 | ||
|
|
c0e090ad9e | ||
|
|
4bcf30aff7 | ||
|
|
3e6bd32c0a | ||
|
|
24455eb1a2 | ||
|
|
255bc97b4c | ||
|
|
11ab3fa713 | ||
|
|
e0053e04f6 | ||
|
|
d120e8fb55 | ||
|
|
838bff42fe | ||
|
|
ec749beb0a | ||
|
|
6479c0b6ff | ||
|
|
d52ceeef69 | ||
|
|
703663da1f | ||
|
|
96e04eb251 | ||
|
|
d6489bf111 | ||
|
|
0ecc3ba401 | ||
|
|
c92f3c0eba | ||
|
|
65c42d8c5d | ||
|
|
1e1ec3ac53 | ||
|
|
89ba0219ab | ||
|
|
58e9a822c0 | ||
|
|
b681717d95 | ||
|
|
bd1d87e40e | ||
|
|
fb69d494d1 | ||
|
|
3b7bda21d5 | ||
|
|
52ea6c9ad9 | ||
|
|
bfb5193da5 | ||
|
|
f1fa7804d7 | ||
|
|
0db1c22fb6 | ||
|
|
7a44c9a56b | ||
|
|
2b8dcd383e | ||
|
|
cff851cfb7 | ||
|
|
5c55813385 | ||
|
|
8fb3fa2560 | ||
|
|
a4a57f366b | ||
|
|
b94e0a2978 | ||
|
|
012a892c19 | ||
|
|
03b12e8b6b | ||
|
|
e8c73617c6 | ||
|
|
6dcaeba0ce | ||
|
|
ce46b7e77e | ||
|
|
8838c5f9eb | ||
|
|
689fcfdfa4 | ||
|
|
4c9c6a8c8c | ||
|
|
df50653fd0 | ||
|
|
262873ee27 | ||
|
|
cb59736b90 | ||
|
|
21fb17a4cc | ||
|
|
a1402c94d6 | ||
|
|
38a8f30367 | ||
|
|
03cbc97d47 | ||
|
|
db93f1945a | ||
|
|
437db3bb71 | ||
|
|
1f47f52870 | ||
|
|
0c036764c5 | ||
|
|
5bc1198adb | ||
|
|
34d2af499c | ||
|
|
046f2c3e95 | ||
|
|
e8a548bbad | ||
|
|
a0361325f5 | ||
|
|
d0495c7426 | ||
|
|
c91058ba3b | ||
|
|
b260ee1d68 | ||
|
|
4d26317358 |
@@ -0,0 +1,7 @@
|
||||
hypr/.config/hypr/env
|
||||
hypr/.config/hypr/env.conf
|
||||
hypr/.config/hypr/env.sh
|
||||
hypr/.config/wpaperd/wallpapers/linked
|
||||
*~lock.*#
|
||||
lazy-lock.json
|
||||
fish_variables
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"diagnostics.globals": [
|
||||
"vim"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
# OpenCode Agent Reference – Dotfiles Repository
|
||||
|
||||
This file contains the minimal, high‑signal instructions that an OpenCode agent should know before working in this repository.
|
||||
Only entries that would be missed without explicit help are included.
|
||||
|
||||
---
|
||||
## 1. Project Scope
|
||||
|
||||
- **Dotfiles** for a personal workstation (hyprland + Neovim + VST plugin).
|
||||
- No tests, CI or build scripts – the repo is purely configuration data.
|
||||
- The only executable content is the `install_*` shell scripts that install system packages.
|
||||
|
||||
---
|
||||
## 2. System Setup
|
||||
|
||||
| Task | Command | Why it matters |
|
||||
|------|---------|----------------|
|
||||
| **Install required programs** | `bash .install_skripte/install_terminal_pcks.sh` <br>`bash .install_skripte/install_basic_pcks.sh` <br>`bash .install_skripte/install_hypr_pcks.sh` <br>`bash .install_skripte/install_kreation_pcks.sh` | These scripts install Neovim, hyprland, VST runtime, and other utilities. |
|
||||
| **Link configuration directories** | `ln -s ~/.dotfiles/hypr/.config/hypr ~/.config/hypr` <br>`ln -s ~/.dotfiles/term/.config/nvim ~/.config/nvim` | The repository expects the configs to live in `~/.config`. |
|
||||
| **Add VST plugin** | Copy `kreation/.vst3/MT-PowerDrumKit.vst3` into your DAW’s plugins folder (usually `~/.vst`). | The repo contains a pre‑built VST for use in audio software. |
|
||||
|
||||
> *If you skip any of these steps, hyprland will not start or Neovim will fail to load its plugins.*
|
||||
|
||||
---
|
||||
## 3. Hyprland Specifics
|
||||
|
||||
| Item | Detail |
|
||||
|------|--------|
|
||||
| **Wayland compositor** | Requires `hyprland` (and dependencies like `wlroots`). The script `install_hypr_pcks.sh` installs it. |
|
||||
| **MIME defaults** | Run `bash hypr/.config/hypr/scripts/ensure-env.sh` after installing to set environment variables (`$XDG_DATA_HOME`, etc.). |
|
||||
| **Dolphin file associations** | `bash hypr/.config/hypr/scripts/fix_dolphin_file_associations.sh` must be executed once to register the compositor with KDE. |
|
||||
| **Portal host override** | `bash hypr/.config/hypr/scripts/portal-host-override.sh` fixes Wayland portal issues on some distros. |
|
||||
|
||||
> *Agents should remember to run the above scripts when setting up a fresh machine.*
|
||||
|
||||
---
|
||||
## 4. Neovim Specifics
|
||||
|
||||
| Item | Detail |
|
||||
|------|--------|
|
||||
| **Neovim version** | Requires ≥ 0.10. The init.lua bootstraps `lazy.nvim` automatically. |
|
||||
| **Node.js for LSP/TS plugins** | `fnm` is used to set the PATH. Ensure `fnm current` returns a valid node version; otherwise install fnm from https://github.com/jdx/mason. |
|
||||
| **Python tooling** | After cloning, run:
|
||||
```bash
|
||||
pip install debugpy ruff black
|
||||
```
|
||||
These are used by the LSP and formatter plugins. |
|
||||
| **Lazy.nvim plugin load** | Plugins are listed under `term/.config/nvim/plugins`. They will be installed automatically on first launch. |
|
||||
| **Keymaps** | Basic `<leader>w/q`, LSP (`gd/gD/gi/gr/K`) and window navigation (`<C-h/j/k/l>`) are pre‑configured. |
|
||||
|
||||
> *If any plugin fails to load, check that the required language server is installed (e.g., `pyright` for Python).*
|
||||
|
||||
---
|
||||
## 5. OpenCode Configuration
|
||||
|
||||
| Key | Value |
|
||||
|-----|-------|
|
||||
| **default_agent** | `plan` – the agent starts in planning mode. |
|
||||
| **provider.lmstudio** | Uses local LM Studio with Gemma and Mistral models. |
|
||||
| **permissions** | Bash, read, glob, grep are allowed; write/edit are *ask*. |
|
||||
| **experimental.lsp** | Enabled – agents can query Neovim LSP via `lsp` tool. |
|
||||
|
||||
> *Agents should not attempt to modify files unless the user explicitly allows it.*
|
||||
|
||||
---
|
||||
## 6. Typical Workflow for a New Setup
|
||||
|
||||
1. **Clone repo**
|
||||
```bash
|
||||
git clone https://github.com/<user>/dotfiles.git ~/.dotfiles
|
||||
```
|
||||
2. **Run install scripts** (as root or with sudo if required).
|
||||
3. **Link configs** (`ln -s …`) as shown above.
|
||||
4. **Start hyprland** from a login manager or by running `hyprland`.
|
||||
5. **Open Neovim** – it will bootstrap plugins automatically.
|
||||
|
||||
---
|
||||
## 7. Things to Watch Out For
|
||||
|
||||
- The repository contains *binary* VST files; do not delete the `.vst3` folder.
|
||||
- Scripts assume you have `bash`, `git`, and `curl`.
|
||||
- Path modifications for `fnm` only apply in the current shell session; you may want to add them to your shell profile.
|
||||
- If you switch to a different compositor, remember to run `ensure-env.sh` again.
|
||||
|
||||
---
|
||||
**End of AGENTS.md**
|
||||
@@ -0,0 +1,21 @@
|
||||
# setup ist ein Kommando-Target (keine Datei) und soll immer ausgeführt werden.
|
||||
.PHONY: basic
|
||||
|
||||
termn:
|
||||
bash _install_skripte_install_terminal_pcks.sh
|
||||
stow term
|
||||
basic: term
|
||||
bash _install_skripte_install_basic_pcks.sh
|
||||
stow nvim
|
||||
bash _install_skripte/nextcloud.sh
|
||||
hypr: basic
|
||||
bash _install_skripte_install_hypr_pcks.sh
|
||||
stow hypr
|
||||
bash hypr/.config/hypr/scripts/ensure-env.sh
|
||||
bash hypr/.config/hypr/scripts/portal-host-override.sh
|
||||
bash hypr/.config/hypr/scripts/fix_dolphin_file_associations.sh
|
||||
kreation: basic
|
||||
bash _install_skripte_install_kreation_pcks.sh
|
||||
stow kreation
|
||||
bunters-monster: basic hypr kreation
|
||||
_install_skripte/buntes-monster-links.sh
|
||||
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
ln -sfn /mnt/spielplatz/heroic/ "$HOME/.heroic"
|
||||
ln -sfn /mnt/spielplatz/steam/ "$HOME/.steam"
|
||||
ln -sfn /mnt/bilder/ "$HOME/Bilder"
|
||||
ln -sfn /mnt/anbau/Dokumente/ "$HOME/Dokumente"
|
||||
ln -sfn /mnt/anbau/Musik/ "$HOME/Musik"
|
||||
ln -sfn /mnt/anbau/Downloads/ "$HOME/Downloads"
|
||||
ln -sfn /mnt/anbau/ "$HOME/anbau"
|
||||
ln -sfn /mnt/anbau/Software/ "$HOME/dev"
|
||||
ln -sfn /mnt/hidrive/ "$HOME/hidrive"
|
||||
ln -sfn /mnt/nas "$HOME/nas"
|
||||
ln -sfn /mnt/anbau/home/mathias/nextcloud "$HOME/nextcloud"
|
||||
ln -sfn /mnt/spielplatz/.local/share/Steam "$HOME/.local/share/Steam"
|
||||
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
|
||||
sudo pacman -S --needed \
|
||||
firefox \
|
||||
nextcloud-client \
|
||||
cups \
|
||||
wine \
|
||||
wine-mono \
|
||||
wine-gecko \
|
||||
winetricks \
|
||||
thunderbird \
|
||||
ktouch \
|
||||
ktorrent \
|
||||
pipewire \
|
||||
pipewire-session-manager \
|
||||
qpwgraph \
|
||||
cifs-utils \
|
||||
rbw \
|
||||
sddm
|
||||
|
||||
yay -S \
|
||||
catppuccin-sddm-theme-mocha
|
||||
|
||||
echo "
|
||||
[General]
|
||||
Numlock=on
|
||||
|
||||
[Theme]
|
||||
ThemeDir=/usr/share/sddm/themes # Standardverzeichnis für Designvorlagen
|
||||
Current=catppuccin-mocha-blue # Standardthema
|
||||
CursorTheme=breeze_cursors # Mausthema
|
||||
FacesDir=/usr/share/sddm/faces # Verzeichnis für Avatarbilder
|
||||
|
||||
[Users]
|
||||
MaximumUID=1100
|
||||
HideUsers=mathieu
|
||||
" | sudo tee /etc/sddm.conf
|
||||
|
||||
sudo systemctl disable gdm
|
||||
sudo systemctl enable sddm
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
sudo pacman -S --needed \
|
||||
hyprland \
|
||||
hyprlauncher \
|
||||
xdg-desktop-portal-hyprland \
|
||||
hyprpolkitagent \
|
||||
pantheon-shortcut-overlay \
|
||||
waybar \
|
||||
hyprpaper \
|
||||
wpaperd \
|
||||
wev \
|
||||
hyprlock \
|
||||
hypridle \
|
||||
nwg-drawer \
|
||||
wl-clipboard \
|
||||
swaync \
|
||||
hyprshot \
|
||||
rofi
|
||||
|
||||
yay -S --needed \
|
||||
hyprshutdown \
|
||||
hyprtile
|
||||
|
||||
# Install hyprltm (network manager)
|
||||
curl -s https://raw.githubusercontent.com/hyprltm/hyprltm-net/main/setup.sh | bash
|
||||
echo 'fish_add_path -m $HOME/.local/bin' >> ~/.config/fish/config.fish
|
||||
@@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
sudo pacman -S --needed \
|
||||
reaper \
|
||||
guitarix \
|
||||
kdenlive \
|
||||
yabridge \
|
||||
yabridgectl \
|
||||
obs-studio \
|
||||
surge-xt \
|
||||
lsp-plugins \
|
||||
calf \
|
||||
dragonfly-reverb
|
||||
|
||||
yay -S --needed \
|
||||
numaplayer
|
||||
@@ -0,0 +1,73 @@
|
||||
#!/bin/bash
|
||||
|
||||
# multilib aktivieren in /etc/pacman.conf
|
||||
sudo sed -i.bak '/^#\[multilib\]/,+1 s/^#//' /etc/pacman.conf
|
||||
# Für Noobs wie mich
|
||||
# - erstellt Sicherheitskopie pacman.conf.bak vor der Änderung
|
||||
# - sucht nach "[multilib]"
|
||||
# - bezieht die nächste Zeile mit ein
|
||||
# - Ersetzt ^# mit nüscht -> Kommentar entfernt :-)
|
||||
|
||||
sudo pacman -Syu
|
||||
|
||||
# Install yay
|
||||
if pacman -Q yay &>/dev/null; then
|
||||
echo "yay bereits installiert; fahre fort."
|
||||
elif pacman -Si yay &>/dev/null; then
|
||||
echo "Installiere yay mit pacman ..."
|
||||
sudo pacman -S --needed yay
|
||||
else
|
||||
sudo pacman -S --needed base-devel git
|
||||
echo "installiere yay via git ..."
|
||||
git clone https://aur.archlinux.org/yay.git
|
||||
(
|
||||
cd yay || {
|
||||
echo "Fehler: CD in yay-Verzeichnis fehlgeschlagen";
|
||||
exit 1;
|
||||
}
|
||||
makepkg -si
|
||||
)
|
||||
rm -rf yay
|
||||
fi
|
||||
|
||||
sudo pacman -S --needed \
|
||||
fish \
|
||||
vim \
|
||||
nvim \
|
||||
openssh \
|
||||
rclone \
|
||||
rsync \
|
||||
unison \
|
||||
stow \
|
||||
nodejs \
|
||||
npm \
|
||||
starship \
|
||||
fastfetch \
|
||||
tree-sitter-cli \
|
||||
python \
|
||||
python-pip \
|
||||
extra/ttf-jetbrains-mono-nerd \
|
||||
unzip \
|
||||
ruff \
|
||||
python-ruff \
|
||||
python-debugpy \
|
||||
chromium \
|
||||
selene \
|
||||
opencode \
|
||||
tmux \
|
||||
yazi \
|
||||
zoxide \
|
||||
fzf \
|
||||
locate \
|
||||
ttf-jetbrains-mono-nerd \
|
||||
ttf-font-awesome
|
||||
|
||||
# fish as standard terminal
|
||||
chsh -s /usr/bin/fish
|
||||
|
||||
git clone https://github.com/jimeh/tmuxifier.git ~/.tmuxifier
|
||||
|
||||
npm install -g vscode-js-debug
|
||||
npm install -g eslint_d
|
||||
ya pkg add yazi-rs/plugins:git
|
||||
sudo updatedb
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
retry() {
|
||||
local N=$1; shift
|
||||
local t=$2; shift
|
||||
for i in $(seq 1 $N); do
|
||||
"$@" && return 0 || sleep $t
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
stow_nextcloud() {
|
||||
# Nextcloud
|
||||
if [ ! -d "$HOME/nextcloud/local_configs" ]; then
|
||||
echo "Fehler: Benötige $HOME/nextcloud/local_configs" >&2
|
||||
exit 1
|
||||
fi
|
||||
stow --dir=$HOME/nextcloud/local_configs --target=$HOME default
|
||||
}
|
||||
|
||||
nextcloud &
|
||||
|
||||
retry 90 10 stow_nextcloud
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
$HYPR_MONITOR_SETUP = ~/.config/hypr/modules/monitor_setup_0_auto.conf
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
export HYPR_WALLPAPER_LINK_SOURCE="$HOME/nextcloud/Photos/Wallpapers"
|
||||
export HYPR_WALLPAPER_LINK="$HOME/.config/wpaperd/wallpapers/linked"
|
||||
|
||||
ln -sf "$HYPR_WALLPAPER_LINK_SOURCE" "$HYPR_WALLPAPER_LINK"
|
||||
@@ -0,0 +1,34 @@
|
||||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend.
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 300 # 5.0min.
|
||||
on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor.
|
||||
on-resume = brightnessctl -r # monitor backlight restore.
|
||||
}
|
||||
|
||||
# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight.
|
||||
listener {
|
||||
timeout = 300 # 5.0min.
|
||||
on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight.
|
||||
on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 900 # 15min
|
||||
on-timeout = loginctl lock-session # lock screen when timeout has passed
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 1800 # 30min
|
||||
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
|
||||
on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected after timeout has fired.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 2700 # 45min
|
||||
on-timeout = systemctl suspend # suspend pc
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
-- Generated by HyprMod
|
||||
|
||||
-- Settings
|
||||
hl.config({
|
||||
general = {
|
||||
border_size = 5,
|
||||
col = {
|
||||
active_border = "0xcbe0e89b",
|
||||
inactive_border = "0xff0e0543",
|
||||
},
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,470 @@
|
||||
# #######################################################################################
|
||||
# AUTOGENERATED HYPRLAND CONFIG.
|
||||
# EDIT THIS CONFIG ACCORDING TO THE WIKI INSTRUCTIONS.
|
||||
# #######################################################################################
|
||||
|
||||
|
||||
|
||||
# This is an example Hyprland config file.
|
||||
# Refer to the wiki for more information.
|
||||
# https://wiki.hypr.land/Configuring/
|
||||
|
||||
# Please note not all available settings / options are set here.
|
||||
# For a full list, see the wiki
|
||||
|
||||
# You can split this configuration into multiple files
|
||||
# Create your files separately and then link them to this file like this:
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
source = ~/.config/hypr/env.conf
|
||||
exec = bash ~/.config/hypr/env.sh
|
||||
|
||||
|
||||
################
|
||||
### MONITORS ###
|
||||
################
|
||||
|
||||
enable_color_management = true
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Monitors/
|
||||
# monitor=,preferred,auto,auto
|
||||
|
||||
source = $HYPR_MONITOR_SETUP
|
||||
# source = ~/.config/hypr/modules/monitor_setup_buntes_monster.conf
|
||||
|
||||
# unscale XWayland
|
||||
xwayland {
|
||||
force_zero_scaling = true
|
||||
}
|
||||
|
||||
|
||||
###################
|
||||
### MY PROGRAMS ###
|
||||
###################
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Keywords/
|
||||
|
||||
# Set programs that you use
|
||||
$terminal = kitty
|
||||
$fileManager = dolphin
|
||||
#$menu = hyprlauncher
|
||||
$menu = wofi --show drun
|
||||
|
||||
|
||||
#################
|
||||
### AUTOSTART ###
|
||||
#################
|
||||
|
||||
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
||||
# Or execute your favorite apps at launch like this:
|
||||
|
||||
# exec = bash ~/.config/wpaperd/link_wallpapers.sh
|
||||
exec-once = waybar &
|
||||
# exec-one = hyprpaper &
|
||||
exec-once = wpaperd &
|
||||
exec-once = swaync &
|
||||
exec-once = hypridle &
|
||||
exec-once = nextcloud &
|
||||
exec-once = sh ~/.config/hypr/scripts/portal-host-override.sh
|
||||
exec-once = sh ~/.config/hypr/scripts/ensure-mime-defaults.sh
|
||||
# exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE XDG_MENU_PREFIX
|
||||
# exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE XDG_MENU_PREFIX
|
||||
|
||||
# exec = gsettings set org.gnome.desktop.interface gtk-theme "Breeze-Dark" # for GTK3 apps
|
||||
# exec = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark" # for GTK4 apps
|
||||
|
||||
# env = QT_QPA_PLATFORMTHEME,qt6ct # for Qt apps
|
||||
|
||||
|
||||
#############################
|
||||
### ENVIRONMENT VARIABLES ###
|
||||
#############################
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Environment-variables/
|
||||
|
||||
env = XCURSOR_SIZE,24
|
||||
env = HYPRCURSOR_SIZE,24
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||
env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = XDG_MENU_PREFIX,plasma-
|
||||
env = GTK_USE_PORTAL,1
|
||||
env = GTK_THEME,Adwaita:dark
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
||||
env = QT_QPA_PLATFORMTHEME,kde
|
||||
# env = QT_AUTO_SCREEN_SCALE_FACTOR,0.75
|
||||
# env = QT_SCALE_FACTOR,0.75
|
||||
# env = GDK_SCALE,1.5
|
||||
# env = GDK_DPI_SCALE,0.75
|
||||
|
||||
###################
|
||||
### PERMISSIONS ###
|
||||
###################
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Permissions/
|
||||
# Please note permission changes here require a Hyprland restart and are not applied on-the-fly
|
||||
# for security reasons
|
||||
|
||||
# ecosystem {
|
||||
# enforce_permissions = 1
|
||||
# }
|
||||
|
||||
# permission = /usr/(bin|local/bin)/grim, screencopy, allow
|
||||
# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
|
||||
# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
|
||||
|
||||
|
||||
#####################
|
||||
### COLOR SCHEMES ###
|
||||
#####################
|
||||
|
||||
source=themes/mocha.conf
|
||||
$color_active_border = rgba($sapphireAlphaee)
|
||||
$color_inactive_border = rgba($surface1Alphaee)
|
||||
$color_decoration_shadow = rgba($sapphireAlphaee)
|
||||
|
||||
#####################
|
||||
### LOOK AND FEEL ###
|
||||
#####################
|
||||
|
||||
# Refer to https://wiki.hypr.land/Configuring/Variables/
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#general
|
||||
general {
|
||||
gaps_in = 3
|
||||
gaps_out = 4
|
||||
|
||||
border_size = 3
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
|
||||
col.active_border = $color_active_border
|
||||
col.inactive_border = $color_inactive_border
|
||||
|
||||
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
||||
resize_on_border = true
|
||||
|
||||
# Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on
|
||||
allow_tearing = false
|
||||
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#decoration
|
||||
decoration {
|
||||
rounding = 5
|
||||
rounding_power = 2
|
||||
|
||||
# Change transparency of focused and unfocused windows
|
||||
active_opacity = 1.00
|
||||
inactive_opacity = 1.00
|
||||
|
||||
shadow {
|
||||
enabled = true
|
||||
range = 10
|
||||
render_power = 3
|
||||
color = $color_decoration_shadow
|
||||
}
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#blur
|
||||
blur {
|
||||
enabled = true
|
||||
size = 10
|
||||
passes = 2
|
||||
|
||||
vibrancy = 0.1696
|
||||
}
|
||||
}
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#animations
|
||||
animations {
|
||||
enabled = true
|
||||
|
||||
# Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves
|
||||
# NAME, X0, Y0, X1, Y1
|
||||
bezier = easeOutQuint, 0.23, 1, 0.32, 1
|
||||
bezier = easeInOutCubic, 0.65, 0.05, 0.36, 1
|
||||
bezier = linear, 0, 0, 1, 1
|
||||
bezier = almostLinear, 0.5, 0.5, 0.75, 1
|
||||
bezier = quick, 0.15, 0, 0.1, 1
|
||||
|
||||
# Default animations, see https://wiki.hypr.land/Configuring/Animations/
|
||||
# NAME, ONOFF, SPEED, CURVE, [STYLE]
|
||||
animation = global, 1, 10, default
|
||||
animation = border, 1, 5.39, easeOutQuint
|
||||
animation = windows, 1, 4.79, easeOutQuint
|
||||
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
|
||||
animation = windowsOut, 1, 1.49, linear, popin 87%
|
||||
animation = fadeIn, 1, 1.73, almostLinear
|
||||
animation = fadeOut, 1, 1.46, almostLinear
|
||||
animation = fade, 1, 3.03, quick
|
||||
animation = layers, 1, 3.81, easeOutQuint
|
||||
animation = layersIn, 1, 4, easeOutQuint, fade
|
||||
animation = layersOut, 1, 1.5, linear, fade
|
||||
animation = fadeLayersIn, 1, 1.79, almostLinear
|
||||
animation = fadeLayersOut, 1, 1.39, almostLinear
|
||||
animation = workspaces, 1, 1.94, almostLinear, fade
|
||||
animation = workspacesIn, 1, 1.21, almostLinear, fade
|
||||
animation = workspacesOut, 1, 1.94, almostLinear, fade
|
||||
animation = zoomFactor, 1, 7, quick
|
||||
}
|
||||
|
||||
# Ref https://wiki.hypr.land/Configuring/Workspace-Rules/
|
||||
# "Smart gaps" / "No gaps when only"
|
||||
# uncomment all if you wish to use that.
|
||||
workspace = w[tv1], gapsout:0, gapsin:0
|
||||
workspace = f[1], gapsout:0, gapsin:0
|
||||
windowrule {
|
||||
name = no-gaps-wtv1
|
||||
match:float = false
|
||||
match:workspace = w[tv1]
|
||||
|
||||
border_size = 0
|
||||
rounding = 0
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = no-gaps-f1
|
||||
match:float = false
|
||||
match:workspace = f[1]
|
||||
|
||||
border_size = 0
|
||||
rounding = 0
|
||||
}
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more
|
||||
dwindle {
|
||||
preserve_split = true # You probably want this
|
||||
}
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Master-Layout/ for more
|
||||
master {
|
||||
new_status = master
|
||||
}
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#misc
|
||||
misc {
|
||||
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
|
||||
}
|
||||
|
||||
|
||||
#############
|
||||
### INPUT ###
|
||||
#############
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#input
|
||||
input {
|
||||
kb_layout = de
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options = grp:alt_shift_toggle
|
||||
kb_rules =
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
numlock_by_default = true
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
|
||||
touchpad {
|
||||
natural_scroll = true
|
||||
}
|
||||
}
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Gestures
|
||||
gesture = 3, horizontal, workspace
|
||||
|
||||
# Example per-device config
|
||||
# See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more
|
||||
device {
|
||||
name = epic-mouse-v1
|
||||
sensitivity = -0.5
|
||||
}
|
||||
|
||||
|
||||
###################
|
||||
### KEYBINDINGS ###
|
||||
###################
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Keywords/
|
||||
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||
|
||||
# Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
|
||||
bind = $mainMod, RETURN, exec, $terminal
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod, ESCAPE, exec, hyprshutdown
|
||||
bind = $mainMod SHIFT, ESCAPE, exec, command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch exit
|
||||
bind = $mainMod CTRL, ESCAPE, exec, hyprshutdown -t 'Shutting down...' --post-cmd 'shutdown -P 0'
|
||||
bind = $mainMod ALT, ESCAPE, exec, hyprshutdown -t 'Restarting...' --post-cmd 'reboot'
|
||||
bind = $mainMod, E, exec, $fileManager
|
||||
bind = $mainMod, V, togglefloating,
|
||||
bind = $mainMod, SPACE, exec, $menu
|
||||
bind = $mainMod SHIFT, SPACE, exec, nwg-drawer
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod SHIFT, J, layoutmsg, togglesplit # dwindle
|
||||
bind = $mainMod, I, exec, firefox &
|
||||
bind = $mainMod, n, exec, ~/.local/bin/hyprltm-net
|
||||
|
||||
# Move focus with mainMod + WASD or Vim-style
|
||||
bind = $mainMod, h, movefocus, l
|
||||
bind = $mainMod, l, movefocus, r
|
||||
bind = $mainMod, k, movefocus, u
|
||||
bind = $mainMod, j, movefocus, d
|
||||
|
||||
# Move windows with mainMod + WASD or Vim-style
|
||||
bind = $mainMod SHIFT, a, movewindow, l
|
||||
bind = $mainMod SHIFT, d, movewindow, r
|
||||
bind = $mainMod SHIFT, w, movewindow, u
|
||||
bind = $mainMod SHIFT, s, movewindow, d
|
||||
bind = $mainMod SHIFT, h, movewindow, l
|
||||
bind = $mainMod SHIFT, l, movewindow, r
|
||||
bind = $mainMod SHIFT, k, movewindow, u
|
||||
bind = $mainMod SHIFT, j, movewindow, d
|
||||
|
||||
# Resize focused window with mainMod + Arrows
|
||||
bind = $mainMod, left, resizeactive, -10 0
|
||||
bind = $mainMod, right, resizeactive, 10 0
|
||||
bind = $mainMod, up, resizeactive, 0 -10
|
||||
bind = $mainMod, down, resizeactive, 0 10
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
binde = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bindl = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# # Example special workspace (scratchpad)
|
||||
# bind = $mainMod, S, togglespecialworkspace, magic
|
||||
# bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
# Laptop multimedia keys for volume and LCD brightness
|
||||
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+
|
||||
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-
|
||||
|
||||
# Requires playerctl
|
||||
bindl = , XF86AudioNext, exec, playerctl next
|
||||
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bindl = , XF86AudioPrev, exec, playerctl previous
|
||||
|
||||
# Screenshots
|
||||
$screenshot_folder = ~/Bilder/Screenshots/
|
||||
bindl = , PRINT, exec, hyprshot -m region --output-folder $screenshot_folder
|
||||
bindl = LCTRL, PRINT, exec, hyprshot -m window --output-folder $screenshot_folder
|
||||
bindl = SHIFT, PRINT, exec, hyprshot -m active --output-folder $screenshot_folder
|
||||
|
||||
# Screenlock
|
||||
bindl = LCTRL ALT, L, exec, hyprlock
|
||||
|
||||
##############################
|
||||
### WINDOWS AND WORKSPACES ###
|
||||
##############################
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Window-Rules/ for more
|
||||
# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
|
||||
|
||||
# Example windowrules that are useful
|
||||
|
||||
windowrule {
|
||||
# Ignore maximize requests from all apps. You'll probably like this.
|
||||
name = suppress-maximize-events
|
||||
match:class = .*
|
||||
|
||||
suppress_event = maximize
|
||||
}
|
||||
|
||||
windowrule {
|
||||
# Fix some dragging issues with XWayland
|
||||
name = fix-xwayland-drags
|
||||
match:class = ^$
|
||||
match:title = ^$
|
||||
match:xwayland = true
|
||||
match:float = true
|
||||
match:fullscreen = false
|
||||
match:pin = false
|
||||
|
||||
no_focus = true
|
||||
}
|
||||
|
||||
# Hyprland-run windowrule
|
||||
windowrule {
|
||||
name = move-hyprland-run
|
||||
|
||||
match:class = hyprland-run
|
||||
|
||||
move = 20 monitor_h-120
|
||||
float = yes
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = opacity-kitty-dolphin
|
||||
match:class = .*(kitty|dolphin).*
|
||||
opacity = 0.90 0.80
|
||||
}
|
||||
|
||||
layerrule = blur on, ignore_alpha 0.30, match:namespace waybar
|
||||
layerrule = blur_popups on, match:namespace waybar
|
||||
|
||||
decoration {
|
||||
blur {
|
||||
size = 8
|
||||
passes = 2
|
||||
}
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = no-rounding-fullscreen
|
||||
match:fullscreen = 1
|
||||
rounding = 0
|
||||
border_size = 0
|
||||
}
|
||||
|
||||
# windowrule {
|
||||
# name = no-rounding-steam-games
|
||||
# match:class = ^steam_app_.*$
|
||||
# rounding = 0
|
||||
# border_size = 0
|
||||
# }
|
||||
|
||||
# windowrule {
|
||||
# name = no-rounding-gamescope
|
||||
# match:class = ^gamescope$
|
||||
# rounding = 0
|
||||
# border_size = 0
|
||||
# }
|
||||
|
||||
# HyprMod managed settings
|
||||
source = /home/mathias/.config/hypr/hyprland-gui.conf
|
||||
@@ -0,0 +1,718 @@
|
||||
local var_color_active_border = "rgba(74c7ecee)"
|
||||
local var_color_inactive_border = "rgba(45475aee)"
|
||||
local var_color_decoration_shadow = "rgba(74c7ecee)"
|
||||
local var_mainMod = "SUPER"
|
||||
local var_terminal = "kitty"
|
||||
local var_fileManager = "dolphin"
|
||||
local var_menu = "wofi --show drun"
|
||||
local var_screenshot_folder = "~/Bilder/Screenshots/"
|
||||
|
||||
-- #######################################################################################
|
||||
|
||||
-- AUTOGENERATED HYPRLAND CONFIG.
|
||||
|
||||
-- EDIT THIS CONFIG ACCORDING TO THE WIKI INSTRUCTIONS.
|
||||
|
||||
-- #######################################################################################
|
||||
|
||||
-- This is an example Hyprland config file.
|
||||
|
||||
-- Refer to the wiki for more information.
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/
|
||||
|
||||
-- Please note not all available settings / options are set here.
|
||||
|
||||
-- For a full list, see the wiki
|
||||
|
||||
-- You can split this configuration into multiple files
|
||||
|
||||
-- Create your files separately and then link them to this file like this:
|
||||
|
||||
-- source = ~/.config/hypr/myColors.conf
|
||||
require("env")
|
||||
hl.exec_cmd("bash ~/.config/hypr/env.sh")
|
||||
|
||||
-- ###############
|
||||
|
||||
-- ## MONITORS ###
|
||||
|
||||
-- ###############
|
||||
-- See https://wiki.hypr.land/Configuring/Monitors/
|
||||
|
||||
-- monitor=,preferred,auto,auto
|
||||
require("modules.monitor_setup_buntes_monster")
|
||||
|
||||
-- source = ~/.config/hypr/modules/monitor_setup_buntes_monster.conf
|
||||
|
||||
-- unscale XWayland
|
||||
hl.config({
|
||||
xwayland = {
|
||||
force_zero_scaling = true,
|
||||
},
|
||||
})
|
||||
|
||||
-- ##################
|
||||
|
||||
-- ## MY PROGRAMS ###
|
||||
|
||||
-- ##################
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Keywords/
|
||||
|
||||
-- Set programs that you use
|
||||
|
||||
-- $menu = hyprlauncher
|
||||
|
||||
-- ################
|
||||
|
||||
-- ## AUTOSTART ###
|
||||
|
||||
-- ################
|
||||
|
||||
-- Autostart necessary processes (like notifications daemons, status bars, etc.)
|
||||
|
||||
-- Or execute your favorite apps at launch like this:
|
||||
|
||||
-- exec = bash ~/.config/wpaperd/link_wallpapers.sh
|
||||
hl.on("hyprland.start", function()
|
||||
hl.exec_cmd("waybar &")
|
||||
end)
|
||||
|
||||
-- exec-one = hyprpaper &
|
||||
hl.on("hyprland.start", function()
|
||||
hl.exec_cmd("wpaperd &")
|
||||
hl.exec_cmd("swaync &")
|
||||
hl.exec_cmd("hypridle &")
|
||||
hl.exec_cmd("nextcloud &")
|
||||
hl.exec_cmd("sh ~/.config/hypr/scripts/portal-host-override.sh")
|
||||
hl.exec_cmd("sh ~/.config/hypr/scripts/ensure-mime-defaults.sh")
|
||||
end)
|
||||
|
||||
-- exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE XDG_MENU_PREFIX
|
||||
|
||||
-- exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE XDG_MENU_PREFIX
|
||||
|
||||
-- exec = gsettings set org.gnome.desktop.interface gtk-theme "Breeze-Dark" # for GTK3 apps
|
||||
|
||||
-- exec = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark" # for GTK4 apps
|
||||
|
||||
-- env = QT_QPA_PLATFORMTHEME,qt6ct # for Qt apps
|
||||
|
||||
-- ############################
|
||||
|
||||
-- ## ENVIRONMENT VARIABLES ###
|
||||
|
||||
-- ############################
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Environment-variables/
|
||||
hl.env("XCURSOR_SIZE", "24")
|
||||
hl.env("HYPRCURSOR_SIZE", "24")
|
||||
hl.env("XDG_CURRENT_DESKTOP", "Hyprland")
|
||||
hl.env("XDG_SESSION_DESKTOP", "Hyprland")
|
||||
hl.env("XDG_SESSION_TYPE", "wayland")
|
||||
hl.env("XDG_MENU_PREFIX", "plasma-")
|
||||
hl.env("GTK_USE_PORTAL", "1")
|
||||
hl.env("GTK_THEME", "Adwaita:dark")
|
||||
hl.env("QT_WAYLAND_DISABLE_WINDOWDECORATION", "1")
|
||||
hl.env("QT_QPA_PLATFORMTHEME", "kde")
|
||||
|
||||
-- env = QT_AUTO_SCREEN_SCALE_FACTOR,0.75
|
||||
|
||||
-- env = QT_SCALE_FACTOR,0.75
|
||||
|
||||
-- env = GDK_SCALE,1.5
|
||||
|
||||
-- env = GDK_DPI_SCALE,0.75
|
||||
|
||||
-- ##################
|
||||
|
||||
-- ## PERMISSIONS ###
|
||||
|
||||
-- ##################
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Permissions/
|
||||
|
||||
-- Please note permission changes here require a Hyprland restart and are not applied on-the-fly
|
||||
|
||||
-- for security reasons
|
||||
|
||||
-- ecosystem {
|
||||
|
||||
-- enforce_permissions = 1
|
||||
|
||||
-- }
|
||||
|
||||
-- permission = /usr/(bin|local/bin)/grim, screencopy, allow
|
||||
|
||||
-- permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
|
||||
|
||||
-- permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
|
||||
|
||||
-- ####################
|
||||
|
||||
-- ## COLOR SCHEMES ###
|
||||
|
||||
-- ####################
|
||||
require("themes.mocha")
|
||||
|
||||
-- ####################
|
||||
|
||||
-- ## LOOK AND FEEL ###
|
||||
|
||||
-- ####################
|
||||
|
||||
-- Refer to https://wiki.hypr.land/Configuring/Variables/
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#general
|
||||
hl.config({
|
||||
general = {
|
||||
gaps_in = 3,
|
||||
gaps_out = 4,
|
||||
border_size = 3,
|
||||
},
|
||||
})
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
|
||||
hl.config({
|
||||
general = {
|
||||
col = {
|
||||
active_border = var_color_active_border,
|
||||
inactive_border = var_color_inactive_border,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- Set to true enable resizing windows by clicking and dragging on borders and gaps
|
||||
hl.config({
|
||||
general = {
|
||||
resize_on_border = true,
|
||||
},
|
||||
})
|
||||
|
||||
-- Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on
|
||||
hl.config({
|
||||
general = {
|
||||
allow_tearing = false,
|
||||
layout = "dwindle",
|
||||
},
|
||||
})
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#decoration
|
||||
hl.config({
|
||||
decoration = {
|
||||
rounding = 5,
|
||||
rounding_power = 2,
|
||||
},
|
||||
})
|
||||
|
||||
-- Change transparency of focused and unfocused windows
|
||||
hl.config({
|
||||
decoration = {
|
||||
active_opacity = 1.0,
|
||||
inactive_opacity = 1.0,
|
||||
shadow = {
|
||||
enabled = true,
|
||||
range = 10,
|
||||
render_power = 3,
|
||||
color = var_color_decoration_shadow,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#blur
|
||||
hl.config({
|
||||
decoration = {
|
||||
blur = {
|
||||
enabled = true,
|
||||
size = 10,
|
||||
passes = 2,
|
||||
vibrancy = 0.1696,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#animations
|
||||
hl.config({
|
||||
animations = {
|
||||
enabled = true,
|
||||
},
|
||||
})
|
||||
|
||||
-- Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves
|
||||
|
||||
-- NAME, X0, Y0, X1, Y1
|
||||
hl.curve("easeOutQuint", { type = "bezier", points = { {0.23, 1}, {0.32, 1} } })
|
||||
hl.curve("easeInOutCubic", { type = "bezier", points = { {0.65, 0.05}, {0.36, 1} } })
|
||||
hl.curve("linear", { type = "bezier", points = { {0, 0}, {1, 1} } })
|
||||
hl.curve("almostLinear", { type = "bezier", points = { {0.5, 0.5}, {0.75, 1} } })
|
||||
hl.curve("quick", { type = "bezier", points = { {0.15, 0}, {0.1, 1} } })
|
||||
|
||||
-- Default animations, see https://wiki.hypr.land/Configuring/Animations/
|
||||
|
||||
-- NAME, ONOFF, SPEED, CURVE, [STYLE]
|
||||
hl.animation({
|
||||
leaf = "global",
|
||||
enabled = true,
|
||||
speed = 10,
|
||||
bezier = "default",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "border",
|
||||
enabled = true,
|
||||
speed = 5.39,
|
||||
bezier = "easeOutQuint",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "windows",
|
||||
enabled = true,
|
||||
speed = 4.79,
|
||||
bezier = "easeOutQuint",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "windowsIn",
|
||||
enabled = true,
|
||||
speed = 4.1,
|
||||
bezier = "easeOutQuint",
|
||||
style = "popin 87%",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "windowsOut",
|
||||
enabled = true,
|
||||
speed = 1.49,
|
||||
bezier = "linear",
|
||||
style = "popin 87%",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "fadeIn",
|
||||
enabled = true,
|
||||
speed = 1.73,
|
||||
bezier = "almostLinear",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "fadeOut",
|
||||
enabled = true,
|
||||
speed = 1.46,
|
||||
bezier = "almostLinear",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "fade",
|
||||
enabled = true,
|
||||
speed = 3.03,
|
||||
bezier = "quick",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "layers",
|
||||
enabled = true,
|
||||
speed = 3.81,
|
||||
bezier = "easeOutQuint",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "layersIn",
|
||||
enabled = true,
|
||||
speed = 4,
|
||||
bezier = "easeOutQuint",
|
||||
style = "fade",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "layersOut",
|
||||
enabled = true,
|
||||
speed = 1.5,
|
||||
bezier = "linear",
|
||||
style = "fade",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "fadeLayersIn",
|
||||
enabled = true,
|
||||
speed = 1.79,
|
||||
bezier = "almostLinear",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "fadeLayersOut",
|
||||
enabled = true,
|
||||
speed = 1.39,
|
||||
bezier = "almostLinear",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "workspaces",
|
||||
enabled = true,
|
||||
speed = 1.94,
|
||||
bezier = "almostLinear",
|
||||
style = "fade",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "workspacesIn",
|
||||
enabled = true,
|
||||
speed = 1.21,
|
||||
bezier = "almostLinear",
|
||||
style = "fade",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "workspacesOut",
|
||||
enabled = true,
|
||||
speed = 1.94,
|
||||
bezier = "almostLinear",
|
||||
style = "fade",
|
||||
})
|
||||
hl.animation({
|
||||
leaf = "zoomFactor",
|
||||
enabled = true,
|
||||
speed = 7,
|
||||
bezier = "quick",
|
||||
})
|
||||
|
||||
-- Ref https://wiki.hypr.land/Configuring/Workspace-Rules/
|
||||
|
||||
-- "Smart gaps" / "No gaps when only"
|
||||
|
||||
-- uncomment all if you wish to use that.
|
||||
hl.workspace_rule({
|
||||
workspace = "w[tv1]",
|
||||
gaps_out = 0,
|
||||
gaps_in = 0,
|
||||
})
|
||||
hl.workspace_rule({
|
||||
workspace = "f[1]",
|
||||
gaps_out = 0,
|
||||
gaps_in = 0,
|
||||
})
|
||||
hl.window_rule({
|
||||
name = "no-gaps-wtv1",
|
||||
match = {
|
||||
float = false,
|
||||
workspace = "w[tv1]",
|
||||
},
|
||||
border_size = 0,
|
||||
rounding = 0,
|
||||
})
|
||||
hl.window_rule({
|
||||
name = "no-gaps-f1",
|
||||
match = {
|
||||
float = false,
|
||||
workspace = "f[1]",
|
||||
},
|
||||
border_size = 0,
|
||||
rounding = 0,
|
||||
})
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more
|
||||
hl.config({
|
||||
dwindle = {
|
||||
preserve_split = true,
|
||||
},
|
||||
})
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Master-Layout/ for more
|
||||
hl.config({
|
||||
master = {
|
||||
new_status = "master",
|
||||
},
|
||||
})
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#misc
|
||||
hl.config({
|
||||
misc = {
|
||||
force_default_wallpaper = -1,
|
||||
disable_hyprland_logo = false,
|
||||
},
|
||||
})
|
||||
|
||||
-- ############
|
||||
|
||||
-- ## INPUT ###
|
||||
|
||||
-- ############
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#input
|
||||
hl.config({
|
||||
input = {
|
||||
kb_layout = "de",
|
||||
kb_variant = "",
|
||||
kb_model = "",
|
||||
kb_options = "grp:alt_shift_toggle",
|
||||
kb_rules = "",
|
||||
follow_mouse = 1,
|
||||
numlock_by_default = true,
|
||||
sensitivity = 0,
|
||||
touchpad = {
|
||||
natural_scroll = true,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Gestures
|
||||
hl.gesture({
|
||||
fingers = 3,
|
||||
direction = "horizontal",
|
||||
action = "workspace",
|
||||
})
|
||||
|
||||
-- Example per-device config
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more
|
||||
hl.device({
|
||||
name = "epic-mouse-v1",
|
||||
sensitivity = -0.5,
|
||||
})
|
||||
|
||||
-- ##################
|
||||
|
||||
-- ## KEYBINDINGS ###
|
||||
|
||||
-- ##################
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Keywords/
|
||||
|
||||
-- Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
|
||||
hl.bind(var_mainMod .. " + RETURN", hl.dsp.exec_cmd(var_terminal))
|
||||
hl.bind(var_mainMod .. " + Q", hl.dsp.window.close())
|
||||
hl.bind(var_mainMod .. " + ESCAPE", hl.dsp.exec_cmd("hyprshutdown"))
|
||||
hl.bind(var_mainMod .. " + SHIFT + ESCAPE", hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch exit"))
|
||||
hl.bind(var_mainMod .. " + CTRL + ESCAPE", hl.dsp.exec_cmd("hyprshutdown -t 'Shutting down...' --post-cmd 'shutdown -P 0'"))
|
||||
hl.bind(var_mainMod .. " + ALT + ESCAPE", hl.dsp.exec_cmd("hyprshutdown -t 'Restarting...' --post-cmd 'reboot'"))
|
||||
hl.bind(var_mainMod .. " + E", hl.dsp.exec_cmd(var_fileManager))
|
||||
hl.bind(var_mainMod .. " + V", hl.dsp.window.float({ action = "toggle" }))
|
||||
hl.bind(var_mainMod .. " + SPACE", hl.dsp.exec_cmd(var_menu))
|
||||
hl.bind(var_mainMod .. " + SHIFT + SPACE", hl.dsp.exec_cmd("nwg-drawer"))
|
||||
hl.bind(var_mainMod .. " + P", hl.dsp.window.pseudo())
|
||||
hl.bind(var_mainMod .. " + SHIFT + J", hl.dsp.layout("togglesplit"))
|
||||
hl.bind(var_mainMod .. " + I", hl.dsp.exec_cmd("firefox &"))
|
||||
hl.bind(var_mainMod .. " + n", hl.dsp.exec_cmd("~/.local/bin/hyprltm-net"))
|
||||
|
||||
-- Move focus with mainMod + WASD or Vim-style
|
||||
hl.bind(var_mainMod .. " + a", hl.dsp.focus({ direction = "left" }))
|
||||
hl.bind(var_mainMod .. " + d", hl.dsp.focus({ direction = "right" }))
|
||||
hl.bind(var_mainMod .. " + w", hl.dsp.focus({ direction = "up" }))
|
||||
hl.bind(var_mainMod .. " + s", hl.dsp.focus({ direction = "down" }))
|
||||
hl.bind(var_mainMod .. " + h", hl.dsp.focus({ direction = "left" }))
|
||||
hl.bind(var_mainMod .. " + l", hl.dsp.focus({ direction = "right" }))
|
||||
hl.bind(var_mainMod .. " + k", hl.dsp.focus({ direction = "up" }))
|
||||
hl.bind(var_mainMod .. " + j", hl.dsp.focus({ direction = "down" }))
|
||||
|
||||
-- Move windows with mainMod + WASD or Vim-style
|
||||
hl.bind(var_mainMod .. " + SHIFT + a", hl.dsp.window.move({ direction = "left" }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + d", hl.dsp.window.move({ direction = "right" }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + w", hl.dsp.window.move({ direction = "up" }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + s", hl.dsp.window.move({ direction = "down" }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + h", hl.dsp.window.move({ direction = "left" }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + l", hl.dsp.window.move({ direction = "right" }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + k", hl.dsp.window.move({ direction = "up" }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + j", hl.dsp.window.move({ direction = "down" }))
|
||||
|
||||
-- Resize focused window with mainMod + Arrows
|
||||
hl.bind(var_mainMod .. " + left", hl.dsp.window.resize({ x = -10, y = 0, relative = true }))
|
||||
hl.bind(var_mainMod .. " + right", hl.dsp.window.resize({ x = 10, y = 0, relative = true }))
|
||||
hl.bind(var_mainMod .. " + up", hl.dsp.window.resize({ x = 0, y = -10, relative = true }))
|
||||
hl.bind(var_mainMod .. " + down", hl.dsp.window.resize({ x = 0, y = 10, relative = true }))
|
||||
|
||||
-- Switch workspaces with mainMod + [0-9]
|
||||
hl.bind(var_mainMod .. " + 1", hl.dsp.focus({ workspace = 1 }))
|
||||
hl.bind(var_mainMod .. " + 2", hl.dsp.focus({ workspace = 2 }))
|
||||
hl.bind(var_mainMod .. " + 3", hl.dsp.focus({ workspace = 3 }))
|
||||
hl.bind(var_mainMod .. " + 4", hl.dsp.focus({ workspace = 4 }))
|
||||
hl.bind(var_mainMod .. " + 5", hl.dsp.focus({ workspace = 5 }))
|
||||
hl.bind(var_mainMod .. " + 6", hl.dsp.focus({ workspace = 6 }))
|
||||
hl.bind(var_mainMod .. " + 7", hl.dsp.focus({ workspace = 7 }))
|
||||
hl.bind(var_mainMod .. " + 8", hl.dsp.focus({ workspace = 8 }))
|
||||
hl.bind(var_mainMod .. " + 9", hl.dsp.focus({ workspace = 9 }))
|
||||
hl.bind(var_mainMod .. " + 0", hl.dsp.focus({ workspace = 10 }))
|
||||
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"), {
|
||||
repeating = true,
|
||||
})
|
||||
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), {
|
||||
locked = true,
|
||||
})
|
||||
|
||||
-- Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
hl.bind(var_mainMod .. " + SHIFT + 1", hl.dsp.window.move({ workspace = 1 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 2", hl.dsp.window.move({ workspace = 2 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 3", hl.dsp.window.move({ workspace = 3 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 4", hl.dsp.window.move({ workspace = 4 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 5", hl.dsp.window.move({ workspace = 5 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 6", hl.dsp.window.move({ workspace = 6 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 7", hl.dsp.window.move({ workspace = 7 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 8", hl.dsp.window.move({ workspace = 8 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 9", hl.dsp.window.move({ workspace = 9 }))
|
||||
hl.bind(var_mainMod .. " + SHIFT + 0", hl.dsp.window.move({ workspace = 10 }))
|
||||
|
||||
-- # Example special workspace (scratchpad)
|
||||
|
||||
-- bind = $mainMod, S, togglespecialworkspace, magic
|
||||
|
||||
-- bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||
|
||||
-- Scroll through existing workspaces with mainMod + scroll
|
||||
hl.bind(var_mainMod .. " + mouse_down", hl.dsp.focus({ workspace = "e+1" }))
|
||||
hl.bind(var_mainMod .. " + mouse_up", hl.dsp.focus({ workspace = "e-1" }))
|
||||
|
||||
-- Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
hl.bind(var_mainMod .. " + mouse:272", hl.dsp.window.drag(), {
|
||||
mouse = true,
|
||||
})
|
||||
hl.bind(var_mainMod .. " + mouse:273", hl.dsp.window.resize(), {
|
||||
mouse = true,
|
||||
})
|
||||
|
||||
-- Laptop multimedia keys for volume and LCD brightness
|
||||
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"), {
|
||||
repeating = true,
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), {
|
||||
repeating = true,
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"), {
|
||||
repeating = true,
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"), {
|
||||
repeating = true,
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd("brightnessctl -e4 -n2 set 5%+"), {
|
||||
repeating = true,
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd("brightnessctl -e4 -n2 set 5%-"), {
|
||||
repeating = true,
|
||||
locked = true,
|
||||
})
|
||||
|
||||
-- Requires playerctl
|
||||
hl.bind("XF86AudioNext", hl.dsp.exec_cmd("playerctl next"), {
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86AudioPause", hl.dsp.exec_cmd("playerctl play-pause"), {
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause"), {
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl previous"), {
|
||||
locked = true,
|
||||
})
|
||||
|
||||
-- Screenshots
|
||||
hl.bind("PRINT", hl.dsp.exec_cmd("hyprshot -m region --output-folder " .. var_screenshot_folder), {
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("CTRL + PRINT", hl.dsp.exec_cmd("hyprshot -m window --output-folder " .. var_screenshot_folder), {
|
||||
locked = true,
|
||||
})
|
||||
hl.bind("SHIFT + PRINT", hl.dsp.exec_cmd("hyprshot -m active --output-folder " .. var_screenshot_folder), {
|
||||
locked = true,
|
||||
})
|
||||
|
||||
-- Screenlock
|
||||
hl.bind("CTRL + ALT + L", hl.dsp.exec_cmd("hyprlock"), {
|
||||
locked = true,
|
||||
})
|
||||
|
||||
-- #############################
|
||||
|
||||
-- ## WINDOWS AND WORKSPACES ###
|
||||
|
||||
-- #############################
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Window-Rules/ for more
|
||||
|
||||
-- See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
|
||||
|
||||
-- Example windowrules that are useful
|
||||
|
||||
-- Ignore maximize requests from all apps. You'll probably like this.
|
||||
hl.window_rule({
|
||||
name = "suppress-maximize-events",
|
||||
match = {
|
||||
class = ".*",
|
||||
},
|
||||
suppress_event = "maximize",
|
||||
})
|
||||
|
||||
-- Fix some dragging issues with XWayland
|
||||
hl.window_rule({
|
||||
name = "fix-xwayland-drags",
|
||||
match = {
|
||||
class = "^$",
|
||||
title = "^$",
|
||||
xwayland = true,
|
||||
float = true,
|
||||
fullscreen = false,
|
||||
pin = false,
|
||||
},
|
||||
no_focus = true,
|
||||
})
|
||||
|
||||
-- Hyprland-run windowrule
|
||||
hl.config({
|
||||
decoration = {
|
||||
blur = {
|
||||
size = 8,
|
||||
passes = 2,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "move-hyprland-run",
|
||||
match = {
|
||||
class = "hyprland-run",
|
||||
},
|
||||
move = "20 monitor_h-120",
|
||||
float = true,
|
||||
})
|
||||
hl.window_rule({
|
||||
name = "opacity-kitty-dolphin",
|
||||
match = {
|
||||
class = ".*(kitty|dolphin).*",
|
||||
},
|
||||
opacity = "0.90 0.80",
|
||||
})
|
||||
hl.layer_rule({
|
||||
match = {
|
||||
namespace = "waybar",
|
||||
},
|
||||
blur = true,
|
||||
})
|
||||
hl.layer_rule({
|
||||
match = {
|
||||
namespace = "waybar",
|
||||
},
|
||||
blur_popups = true,
|
||||
})
|
||||
hl.window_rule({
|
||||
name = "no-rounding-fullscreen",
|
||||
match = {
|
||||
fullscreen = 1,
|
||||
},
|
||||
rounding = 0,
|
||||
border_size = 0,
|
||||
})
|
||||
|
||||
-- windowrule {
|
||||
|
||||
-- name = no-rounding-steam-games
|
||||
|
||||
-- match:class = ^steam_app_.*$
|
||||
|
||||
-- rounding = 0
|
||||
|
||||
-- border_size = 0
|
||||
|
||||
-- }
|
||||
|
||||
-- windowrule {
|
||||
|
||||
-- name = no-rounding-gamescope
|
||||
|
||||
-- match:class = ^gamescope$
|
||||
|
||||
-- rounding = 0
|
||||
|
||||
-- border_size = 0
|
||||
|
||||
-- }
|
||||
|
||||
-- HyprMod managed settings
|
||||
require("hyprland-gui")
|
||||
@@ -0,0 +1,106 @@
|
||||
# sample hyprlock.conf
|
||||
# for more configuration options, refer https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock
|
||||
#
|
||||
# rendered text in all widgets supports pango markup (e.g. <b> or <i> tags)
|
||||
# ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#general-remarks
|
||||
#
|
||||
# shortcuts to clear password buffer: ESC, Ctrl+U, Ctrl+Backspace
|
||||
#
|
||||
# you can get started by copying this config to ~/.config/hypr/hyprlock.conf
|
||||
#
|
||||
|
||||
$font = Monospace
|
||||
|
||||
general {
|
||||
hide_cursor = false
|
||||
}
|
||||
|
||||
# uncomment to enable fingerprint authentication
|
||||
# auth {
|
||||
# fingerprint {
|
||||
# enabled = true
|
||||
# ready_message = Scan fingerprint to unlock
|
||||
# present_message = Scanning...
|
||||
# retry_delay = 250 # in milliseconds
|
||||
# }
|
||||
# }
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
bezier = linear, 1, 1, 0, 0
|
||||
animation = fadeIn, 1, 5, linear
|
||||
animation = fadeOut, 1, 5, linear
|
||||
animation = inputFieldDots, 1, 2, linear
|
||||
}
|
||||
|
||||
background {
|
||||
monitor =
|
||||
path = screenshot
|
||||
blur_passes = 3
|
||||
}
|
||||
|
||||
input-field {
|
||||
monitor =
|
||||
size = 20%, 5%
|
||||
outline_thickness = 3
|
||||
inner_color = rgba(0, 0, 0, 0.0) # no fill
|
||||
|
||||
outer_color = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||
check_color = rgba(00ff99ee) rgba(ff6633ee) 120deg
|
||||
fail_color = rgba(ff6633ee) rgba(ff0066ee) 40deg
|
||||
|
||||
font_color = rgb(143, 143, 143)
|
||||
fade_on_empty = false
|
||||
rounding = 15
|
||||
|
||||
font_family = $font
|
||||
placeholder_text = Input password...
|
||||
fail_text = $PAMFAIL
|
||||
|
||||
# uncomment to use a letter instead of a dot to indicate the typed password
|
||||
# dots_text_format = *
|
||||
# dots_size = 0.4
|
||||
dots_spacing = 0.3
|
||||
|
||||
# uncomment to use an input indicator that does not show the password length (similar to swaylock's input indicator)
|
||||
# hide_input = true
|
||||
|
||||
position = 0, -20
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
# TIME
|
||||
label {
|
||||
monitor =
|
||||
text = $TIME # ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#variable-substitution
|
||||
font_size = 90
|
||||
font_family = $font
|
||||
|
||||
position = -30, 0
|
||||
halign = right
|
||||
valign = top
|
||||
}
|
||||
|
||||
# DATE
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:60000] date +"%A, %d %B %Y" # update every 60 seconds
|
||||
font_size = 25
|
||||
font_family = $font
|
||||
|
||||
position = -30, -150
|
||||
halign = right
|
||||
valign = top
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = $LAYOUT[en,ru]
|
||||
font_size = 24
|
||||
onclick = hyprctl switchxkblayout all next
|
||||
|
||||
position = 250, -20
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
monitor=,preferred,auto,1.0
|
||||
@@ -0,0 +1 @@
|
||||
monitor=,preferred,auto,1.0
|
||||
@@ -0,0 +1,18 @@
|
||||
# monitorv2 {
|
||||
# output = DP-2
|
||||
# mode = highres highrr
|
||||
# position = 0x0
|
||||
# scale = 1.2
|
||||
# bitdepth = 10
|
||||
# cm = hdr
|
||||
# supports_wide_color = 1
|
||||
# supports_hdr = 1
|
||||
# sdr_min_luminance = 0.005
|
||||
# sdr_max_luminance = 200
|
||||
# min_luminance = 0.002
|
||||
# max_luminance = 200
|
||||
# max_avg_luminance = 150
|
||||
# }
|
||||
|
||||
monitor = DP-2, preferred, auto-left, 1.5
|
||||
monitor = DP-3, preferred, auto-right, 1.0
|
||||
@@ -0,0 +1,43 @@
|
||||
-- monitorv2 {
|
||||
|
||||
-- output = DP-2
|
||||
|
||||
-- mode = highres highrr
|
||||
|
||||
-- position = 0x0
|
||||
|
||||
-- scale = 1.2
|
||||
|
||||
-- bitdepth = 10
|
||||
|
||||
-- cm = hdr
|
||||
|
||||
-- supports_wide_color = 1
|
||||
|
||||
-- supports_hdr = 1
|
||||
|
||||
-- sdr_min_luminance = 0.005
|
||||
|
||||
-- sdr_max_luminance = 200
|
||||
|
||||
-- min_luminance = 0.002
|
||||
|
||||
-- max_luminance = 200
|
||||
|
||||
-- max_avg_luminance = 150
|
||||
|
||||
-- }
|
||||
hl.monitor({
|
||||
output = "DP-2",
|
||||
disabled = false,
|
||||
mode = "preferred",
|
||||
position = "auto-left",
|
||||
scale = 1.5,
|
||||
})
|
||||
hl.monitor({
|
||||
output = "DP-3",
|
||||
disabled = false,
|
||||
mode = "preferred",
|
||||
position = "auto-right",
|
||||
scale = 1.0,
|
||||
})
|
||||
@@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
|
||||
set -eu # Exit immediately if a command exits with a non-zero status, and treat unset variables as an error.
|
||||
|
||||
CONF_SOURCE="$HOME/.config/hypr/env.conf.template"
|
||||
CONF_TARGET="$HOME/.config/hypr/env.conf"
|
||||
SH_SOURCE="$HOME/.config/hypr/env.sh.template"
|
||||
SH_TARGET="$HOME/.config/hypr/env.sh"
|
||||
|
||||
|
||||
if [ ! -f "$CONF_TARGET" ]; then
|
||||
cp "$CONF_SOURCE" "$CONF_TARGET"
|
||||
echo "Created $CONF_TARGET from template $CONF_SOURCE"
|
||||
fi
|
||||
|
||||
if [ ! -f "$SH_TARGET" ]; then
|
||||
cp "$SH_SOURCE" "$SH_TARGET"
|
||||
echo "Created $SH_TARGET from template $SH_SOURCE"
|
||||
fi
|
||||
@@ -0,0 +1,29 @@
|
||||
#!/bin/sh
|
||||
|
||||
has_desktop() {
|
||||
[ -f "$HOME/.local/share/applications/$1" ] || [ -f "/usr/share/applications/$1" ]
|
||||
}
|
||||
|
||||
set_default_if_available() {
|
||||
desktop_id="$1"
|
||||
mime_type="$2"
|
||||
|
||||
if has_desktop "$desktop_id"; then
|
||||
xdg-mime default "$desktop_id" "$mime_type" >/dev/null 2>&1 || true
|
||||
fi
|
||||
}
|
||||
|
||||
set_default_if_available org.kde.gwenview.desktop image/jpeg
|
||||
set_default_if_available org.kde.gwenview.desktop image/png
|
||||
set_default_if_available org.kde.gwenview.desktop image/webp
|
||||
set_default_if_available org.kde.gwenview.desktop image/gif
|
||||
|
||||
set_default_if_available org.gnome.Papers.desktop application/pdf
|
||||
set_default_if_available io.github.celluloid_player.Celluloid.desktop video/mp4
|
||||
set_default_if_available io.github.celluloid_player.Celluloid.desktop video/webm
|
||||
set_default_if_available io.github.celluloid_player.Celluloid.desktop video/mpeg
|
||||
set_default_if_available celluloid.desktop video/x-matroska
|
||||
|
||||
set_default_if_available userapp-Thunderbird-MTXOJ3.desktop x-scheme-handler/mailto
|
||||
set_default_if_available userapp-Thunderbird-MTXOJ3.desktop x-scheme-handler/mid
|
||||
set_default_if_available lmstudio.desktop x-scheme-handler/lmstudio
|
||||
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
sudo pacman -Sy archlinux-xdg-menu
|
||||
sudo mv /etc/xdg/menus/arch-applications-menu /etc/xdg/menus/applications.menu
|
||||
kbuildsycoca6 --noincremental
|
||||
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ -f /etc/xdg/menus/plasma-applications.menu ] && command -v xdg-desktop-portal-kde >/dev/null 2>&1; then
|
||||
dbus-update-activation-environment --systemd XDG_MENU_PREFIX=plasma- >/dev/null 2>&1 || true
|
||||
systemctl --user set-environment XDG_MENU_PREFIX=plasma-
|
||||
else
|
||||
systemctl --user unset-environment XDG_MENU_PREFIX >/dev/null 2>&1 || true
|
||||
fi
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
out_dir="$HOME/dotfiles/themes/.config/catppuccin/mocha.conf"
|
||||
url="https://raw.githubusercontent.com/catppuccin/hyprland/main/themes/mocha.conf"
|
||||
|
||||
curl -o "$out_dir" "$url"
|
||||
@@ -0,0 +1,78 @@
|
||||
|
||||
$rosewater = rgb(f5e0dc)
|
||||
$rosewaterAlpha = f5e0dc
|
||||
|
||||
$flamingo = rgb(f2cdcd)
|
||||
$flamingoAlpha = f2cdcd
|
||||
|
||||
$pink = rgb(f5c2e7)
|
||||
$pinkAlpha = f5c2e7
|
||||
|
||||
$mauve = rgb(cba6f7)
|
||||
$mauveAlpha = cba6f7
|
||||
|
||||
$red = rgb(f38ba8)
|
||||
$redAlpha = f38ba8
|
||||
|
||||
$maroon = rgb(eba0ac)
|
||||
$maroonAlpha = eba0ac
|
||||
|
||||
$peach = rgb(fab387)
|
||||
$peachAlpha = fab387
|
||||
|
||||
$yellow = rgb(f9e2af)
|
||||
$yellowAlpha = f9e2af
|
||||
|
||||
$green = rgb(a6e3a1)
|
||||
$greenAlpha = a6e3a1
|
||||
|
||||
$teal = rgb(94e2d5)
|
||||
$tealAlpha = 94e2d5
|
||||
|
||||
$sky = rgb(89dceb)
|
||||
$skyAlpha = 89dceb
|
||||
|
||||
$sapphire = rgb(74c7ec)
|
||||
$sapphireAlpha = 74c7ec
|
||||
|
||||
$blue = rgb(89b4fa)
|
||||
$blueAlpha = 89b4fa
|
||||
|
||||
$lavender = rgb(b4befe)
|
||||
$lavenderAlpha = b4befe
|
||||
|
||||
$text = rgb(cdd6f4)
|
||||
$textAlpha = cdd6f4
|
||||
|
||||
$subtext1 = rgb(bac2de)
|
||||
$subtext1Alpha = bac2de
|
||||
|
||||
$subtext0 = rgb(a6adc8)
|
||||
$subtext0Alpha = a6adc8
|
||||
|
||||
$overlay2 = rgb(9399b2)
|
||||
$overlay2Alpha = 9399b2
|
||||
|
||||
$overlay1 = rgb(7f849c)
|
||||
$overlay1Alpha = 7f849c
|
||||
|
||||
$overlay0 = rgb(6c7086)
|
||||
$overlay0Alpha = 6c7086
|
||||
|
||||
$surface2 = rgb(585b70)
|
||||
$surface2Alpha = 585b70
|
||||
|
||||
$surface1 = rgb(45475a)
|
||||
$surface1Alpha = 45475a
|
||||
|
||||
$surface0 = rgb(313244)
|
||||
$surface0Alpha = 313244
|
||||
|
||||
$base = rgb(1e1e2e)
|
||||
$baseAlpha = 1e1e2e
|
||||
|
||||
$mantle = rgb(181825)
|
||||
$mantleAlpha = 181825
|
||||
|
||||
$crust = rgb(11111b)
|
||||
$crustAlpha = 11111b
|
||||
@@ -0,0 +1,15 @@
|
||||
# Copy / Paste (Wayland + Hyprland)
|
||||
map ctrl+shift+c copy_to_clipboard
|
||||
map ctrl+shift+v paste_from_clipboard
|
||||
copy_on_select yes
|
||||
|
||||
# Coloer theme
|
||||
include themes/mocha.conf
|
||||
|
||||
# Font
|
||||
font_family JetBrainsMono NF
|
||||
bold_font auto
|
||||
italic_font auto
|
||||
bold_italic_font auto
|
||||
font_size 10.0
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
out_dir="$HOME/dotfiles/themes/.config/themes/kitty/catppuccin/mocha.conf"
|
||||
url="https://raw.githubusercontent.com/catppuccin/kitty/main/themes/mocha.conf"
|
||||
|
||||
curl -o "$out_dir" "$url"
|
||||
@@ -0,0 +1,84 @@
|
||||
# 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
|
||||
|
||||
# Scrollbar colors
|
||||
scrollbar_handle_color #9399b2
|
||||
scrollbar_track_color #45475a
|
||||
|
||||
# URL 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
|
||||
@@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=Re-apply MIME defaults when mimeapps files change
|
||||
|
||||
[Path]
|
||||
PathChanged=%h/.config/mimeapps.list
|
||||
PathChanged=%h/.local/share/applications/mimeapps.list
|
||||
Unit=ensure-mime-defaults.service
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
||||
@@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=Ensure preferred MIME defaults are set
|
||||
After=graphical-session.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/bin/sh %h/.config/hypr/scripts/ensure-mime-defaults.sh
|
||||
|
||||
[Install]
|
||||
WantedBy=default.target
|
||||
@@ -0,0 +1,230 @@
|
||||
// -*- mode: jsonc -*-
|
||||
{
|
||||
"custom/gpu": {
|
||||
"format": "{text}",
|
||||
"tooltip": false,
|
||||
"exec": "~/.config/waybar/scripts/gpu-info.sh",
|
||||
"exec-interval": 1,
|
||||
"return-type": "json"
|
||||
},
|
||||
// "layer": "top", // Waybar at top layer
|
||||
"position": "bottom", // Waybar position (top|bottom|left|right)
|
||||
"height": 30, // Waybar height (to be removed for auto height)
|
||||
// "width": 800, // Waybar width
|
||||
"spacing": 4, // Gaps between modules (4px)
|
||||
// Choose the order of the modules
|
||||
"modules-left": [
|
||||
"hyprland/workspaces"
|
||||
//"hyprland/mode",
|
||||
//"hyprland/scratchpad",
|
||||
//"custom/media"
|
||||
],
|
||||
"modules-center": [
|
||||
"hyprland/window"
|
||||
],
|
||||
"modules-right": [
|
||||
"mpd",
|
||||
"idle_inhibitor",
|
||||
"pulseaudio",
|
||||
//"network",
|
||||
//"power-profiles-daemon",
|
||||
"cpu",
|
||||
"memory",
|
||||
"temperature",
|
||||
"backlight",
|
||||
"keyboard-state",
|
||||
//"hyprland/language",
|
||||
"battery",
|
||||
//"battery#bat2",
|
||||
"custom/gpu",
|
||||
"clock",
|
||||
"tray",
|
||||
"custom/power"
|
||||
],
|
||||
// Modules configuration
|
||||
"hyprland/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true,
|
||||
"warp-on-scroll": true,
|
||||
"format": "{name}: {icon}",
|
||||
"format-icons": {
|
||||
// "1": "",
|
||||
// "2": "",
|
||||
// "3": "",
|
||||
// "4": "",
|
||||
// "5": "",
|
||||
// "urgent": "",
|
||||
"active": "",
|
||||
"default": ""
|
||||
}
|
||||
},
|
||||
"keyboard-state": {
|
||||
"numlock": true,
|
||||
"capslock": true,
|
||||
"format": "{name} {icon}",
|
||||
"format-icons": {
|
||||
"locked": "",
|
||||
"unlocked": ""
|
||||
}
|
||||
},
|
||||
"hyprland/mode": {
|
||||
"format": "<span style=\"italic\">{}</span>"
|
||||
},
|
||||
"hyprland/scratchpad": {
|
||||
"format": "{icon} {count}",
|
||||
"show-empty": false,
|
||||
"format-icons": ["", ""],
|
||||
"tooltip": true,
|
||||
"tooltip-format": "{app}: {title}"
|
||||
},
|
||||
"mpd": {
|
||||
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
|
||||
"format-disconnected": "Disconnected ",
|
||||
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
|
||||
"unknown-tag": "N/A",
|
||||
"interval": 5,
|
||||
"consume-icons": {
|
||||
"on": " "
|
||||
},
|
||||
"random-icons": {
|
||||
"off": "<span color=\"#f53c3c\"></span> ",
|
||||
"on": " "
|
||||
},
|
||||
"repeat-icons": {
|
||||
"on": " "
|
||||
},
|
||||
"single-icons": {
|
||||
"on": "1 "
|
||||
},
|
||||
"state-icons": {
|
||||
"paused": "",
|
||||
"playing": ""
|
||||
},
|
||||
"tooltip-format": "MPD (connected)",
|
||||
"tooltip-format-disconnected": "MPD (disconnected)"
|
||||
},
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tray": {
|
||||
// "icon-size": 21,
|
||||
"spacing": 10//,
|
||||
// "icons": {
|
||||
// "blueman": "bluetooth",
|
||||
// "TelegramDesktop": "$HOME/.local/share/icons/hicolor/16x16/apps/telegram.png"
|
||||
// }
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%Y-%m-%d %H:%M}",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||
"on-click": "~/.config/waybar/scripts/copy-date.sh"
|
||||
//"format-alt": "{:%Y-%m-%d}"
|
||||
},
|
||||
"cpu": {
|
||||
"interval": 1,
|
||||
"format": "cpu:{usage:02}%@{avg_frequency:4.2f}MHz",
|
||||
"tooltip": false
|
||||
},
|
||||
"memory": {
|
||||
"interval": 1,
|
||||
"format": "mem:{:02}%"
|
||||
},
|
||||
"temperature": {
|
||||
// "thermal-zone": 2,
|
||||
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
|
||||
"critical-threshold": 80,
|
||||
// "format-critical": "{temperatureC}°C {icon}",
|
||||
"format": "{temperatureC}°C {icon}",
|
||||
"format-icons": ["", "", ""]
|
||||
},
|
||||
"backlight": {
|
||||
// "device": "acpi_video1",
|
||||
"format": "{percent}% {icon}",
|
||||
"format-icons": ["", "", "", "", "", "", "", "", ""]
|
||||
},
|
||||
"battery": {
|
||||
"states": {
|
||||
// "good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-full": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
// "format-good": "", // An empty format will hide the module
|
||||
// "format-full": "",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
"battery#bat2": {
|
||||
"bat": "BAT2"
|
||||
},
|
||||
"power-profiles-daemon": {
|
||||
"format": "{icon}",
|
||||
"tooltip-format": "Power profile: {profile}\nDriver: {driver}",
|
||||
"tooltip": true,
|
||||
"format-icons": {
|
||||
"default": "",
|
||||
"performance": "",
|
||||
"balanced": "",
|
||||
"power-saver": ""
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
// "interface": "wlp2*", // (Optional) To force the use of this interface
|
||||
"format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"format-ethernet": "{ipaddr}/{cidr} ",
|
||||
"tooltip-format": "{ifname} via {gwaddr} ",
|
||||
"format-linked": "{ifname} (No IP) ",
|
||||
"format-disconnected": "Disconnected ⚠",
|
||||
"format-alt": "{ifname}: {ipaddr}/{cidr}"
|
||||
},
|
||||
"pulseaudio": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth-muted": " {icon} {format_source}",
|
||||
"format-muted": " {format_source}",
|
||||
"format-source": "{volume}% ",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""]
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
},
|
||||
"custom/media": {
|
||||
"format": "{icon} {text}",
|
||||
"return-type": "json",
|
||||
"max-length": 40,
|
||||
"format-icons": {
|
||||
"spotify": "",
|
||||
"default": "🎜"
|
||||
},
|
||||
"escape": true,
|
||||
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
|
||||
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
|
||||
},
|
||||
"custom/power": {
|
||||
"format" : "⏻ ",
|
||||
"tooltip": false,
|
||||
"menu": "on-click",
|
||||
"menu-file": "$HOME/.config/waybar/power_menu.xml", // Menu file in resources folder
|
||||
"menu-actions": {
|
||||
"shutdown": "shutdown",
|
||||
"reboot": "reboot",
|
||||
"suspend": "systemctl suspend",
|
||||
"hibernate": "systemctl hibernate"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
DATE=$(date +"%Y-%m-%d_%H%M")
|
||||
echo -n "$DATE" | wl-copy
|
||||
notify-send "Date copied" "$DATE"
|
||||
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
# GPU monitoring for waybar (AMD radeontop + sysfs temp)
|
||||
|
||||
GPU_DATA=$(timeout 1 radeontop -d - -l 1 2>/dev/null | tail -1)
|
||||
|
||||
if [ -z "$GPU_DATA" ]; then
|
||||
echo "{\"text\": \"gpu:--\", \"tooltip\": \"Reading...\"}"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
GPU=$(echo "$GPU_DATA" | grep -oP 'gpu \K[0-9.]+' | head -1)
|
||||
GPU_INT=${GPU%.*}
|
||||
|
||||
VRAM=$(echo "$GPU_DATA" | grep -oP 'vram [\d.]+% \K[\d.]+' | head -1)
|
||||
VRAM_INT=${VRAM%.*}
|
||||
|
||||
SCLK=$(echo "$GPU_DATA" | grep -oP 'sclk [\d.]+% \K[\d.]+' | head -1)
|
||||
MCLK=$(echo "$GPU_DATA" | grep -oP 'mclk [\d.]+% \K[\d.]+' | head -1)
|
||||
|
||||
TEMP=$(( $(cat /sys/class/hwmon/hwmon2/temp1_input) / 1000 ))
|
||||
POWER=$(( $(cat /sys/class/hwmon/hwmon2/power1_average) / 1000 ))
|
||||
|
||||
echo "{\"text\": \"gpu:${GPU_INT}% ${VRAM_INT}MB ${TEMP}C\", \"tooltip\": \"GPU: ${GPU}%\\nVRAM: ${VRAM}MB\\nTemp: ${TEMP}C\\nPower: ${POWER}W\\nSCLK: ${SCLK}GHz\\nMCLK: ${MCLK}GHz\"}"
|
||||
@@ -0,0 +1,236 @@
|
||||
/* -------------------------------------------------
|
||||
Calm Glass (Hyprland / Waybar) — GTK CSS safe
|
||||
-------------------------------------------------- */
|
||||
|
||||
* {
|
||||
font-family: "JetBrainsMono Nerd Font", FontAwesome, sans-serif;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
/* ---------- GTK Color Definitions ---------- */
|
||||
@define-color fg rgba(235, 238, 242, 0.92);
|
||||
@define-color fg-dim rgba(235, 238, 242, 0.72);
|
||||
@define-color fg-muted rgba(235, 238, 242, 0.55);
|
||||
|
||||
@define-color glass rgba(18, 22, 30, 0.55);
|
||||
@define-color glass_2 rgba(18, 22, 30, 0.32);
|
||||
@define-color glass_3 rgba(18, 22, 30, 0.22);
|
||||
|
||||
@define-color stroke rgba(255, 255, 255, 0.12);
|
||||
@define-color stroke_2 rgba(255, 255, 255, 0.07);
|
||||
|
||||
/* ---------- Waybar Container ---------- */
|
||||
window#waybar {
|
||||
background-color: @glass;
|
||||
color: @fg;
|
||||
border-bottom: 1px solid @stroke;
|
||||
box-shadow: 0 10px 30px rgba(0,0,0,0.30);
|
||||
|
||||
transition-property: background-color, opacity;
|
||||
transition-duration: .5s;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.35;
|
||||
}
|
||||
|
||||
/* ---------- Buttons / Workspaces ---------- */
|
||||
button {
|
||||
box-shadow: inset 0 -2px transparent;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
button:hover {
|
||||
background: inherit;
|
||||
box-shadow: inset 0 -2px rgba(255,255,255,0.18);
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 0 8px;
|
||||
margin: 4px 3px;
|
||||
background-color: rgba(255,255,255,0.04);
|
||||
color: @fg-dim;
|
||||
border: 1px solid rgba(255,255,255,0.06);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: rgba(255,255,255,0.07);
|
||||
color: @fg;
|
||||
}
|
||||
|
||||
#workspaces button.focused,
|
||||
#workspaces button.active {
|
||||
background-color: rgba(255,255,255,0.10);
|
||||
color: @fg;
|
||||
border: 1px solid rgba(255,255,255,0.12);
|
||||
box-shadow: inset 0 -2px rgba(255,255,255,0.18);
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: rgba(190,110,120,0.35);
|
||||
border-color: rgba(190,110,120,0.50);
|
||||
color: @fg;
|
||||
}
|
||||
|
||||
#window,
|
||||
#workspaces {
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.modules-right > widget:last-child > #workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
/* ---------- Common “Chip” module style ---------- */
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#wireplumber,
|
||||
#custom-media,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#scratchpad,
|
||||
#power-profiles-daemon,
|
||||
#mpd,
|
||||
#language,
|
||||
#keyboard-state,
|
||||
#privacy,
|
||||
#privacy-item {
|
||||
padding: 0 10px;
|
||||
color: @fg;
|
||||
background-color: @glass_2;
|
||||
border: 1px solid @stroke_2;
|
||||
border-radius: 10px;
|
||||
margin: 4px 4px;
|
||||
}
|
||||
|
||||
#pulseaudio:hover,
|
||||
#wireplumber:hover,
|
||||
#network:hover,
|
||||
#clock:hover {
|
||||
background-color: @glass_3;
|
||||
}
|
||||
|
||||
#clock {
|
||||
border-color: rgba(140, 170, 190, 0.25);
|
||||
}
|
||||
|
||||
/* Battery */
|
||||
#battery.charging,
|
||||
#battery.plugged {
|
||||
background-color: rgba(120,170,140,0.22);
|
||||
border-color: rgba(120,170,140,0.34);
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: rgba(190,110,120,0.18);
|
||||
border-color: rgba(190,110,120,0.50);
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: rgba(190,110,120,0.35);
|
||||
border-color: rgba(190,110,120,0.55);
|
||||
color: @fg;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.6s;
|
||||
animation-timing-function: steps(10);
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
/* Network */
|
||||
#network.disconnected {
|
||||
background-color: rgba(190,110,120,0.30);
|
||||
border-color: rgba(190,110,120,0.45);
|
||||
}
|
||||
|
||||
/* Audio */
|
||||
#pulseaudio:hover {
|
||||
background-color: rgba(190,160,110,0.20);
|
||||
border-color: rgba(190,160,110,0.28);
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: rgba(140,170,190,0.18);
|
||||
border-color: rgba(140,170,190,0.26);
|
||||
color: @fg-dim;
|
||||
}
|
||||
|
||||
#wireplumber.muted {
|
||||
background-color: rgba(190,110,120,0.28);
|
||||
border-color: rgba(190,110,120,0.40);
|
||||
}
|
||||
|
||||
/* Temperature */
|
||||
#temperature.critical {
|
||||
background-color: rgba(190,110,120,0.30);
|
||||
border-color: rgba(190,110,120,0.45);
|
||||
}
|
||||
|
||||
/* Tray */
|
||||
#tray > .passive {
|
||||
-gtk-icon-effect: dim;
|
||||
}
|
||||
|
||||
#tray > .needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
background-color: rgba(190,110,120,0.30);
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
/* Idle inhibitor */
|
||||
#idle_inhibitor.activated {
|
||||
background-color: rgba(255,255,255,0.10);
|
||||
border-color: rgba(255,255,255,0.14);
|
||||
color: @fg;
|
||||
}
|
||||
|
||||
/* Scratchpad */
|
||||
#scratchpad {
|
||||
background: rgba(255,255,255,0.05);
|
||||
}
|
||||
|
||||
#scratchpad.empty {
|
||||
background-color: transparent;
|
||||
border-color: transparent;
|
||||
}
|
||||
|
||||
/* Privacy */
|
||||
#privacy {
|
||||
padding: 0;
|
||||
background-color: transparent;
|
||||
border-color: transparent;
|
||||
}
|
||||
|
||||
#privacy-item {
|
||||
padding: 0 6px;
|
||||
color: @fg;
|
||||
}
|
||||
|
||||
#privacy-item.screenshare {
|
||||
background-color: rgba(190,160,110,0.30);
|
||||
border-color: rgba(190,160,110,0.40);
|
||||
}
|
||||
#privacy-item.audio-in {
|
||||
background-color: rgba(120,170,140,0.25);
|
||||
border-color: rgba(120,170,140,0.36);
|
||||
}
|
||||
#privacy-item.audio-out {
|
||||
background-color: rgba(140,170,190,0.25);
|
||||
border-color: rgba(140,170,190,0.36);
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
[default]
|
||||
path = "~/.config/wpaperd/wallpapers/linked"
|
||||
mode = "center"
|
||||
#recursive = true
|
||||
#sorting = "random"
|
||||
#duration = "15m"
|
||||
|
After Width: | Height: | Size: 975 KiB |
@@ -0,0 +1,5 @@
|
||||
[preferred]
|
||||
default=hyprland;gtk;kde;
|
||||
org.freedesktop.impl.portal.OpenURI=gtk;kde;
|
||||
org.freedesktop.impl.portal.FileChooser=gtk;kde;
|
||||
org.freedesktop.impl.portal.Settings=gtk;kde;
|
||||
@@ -0,0 +1,97 @@
|
||||
numchr 96
|
||||
*0 0001 0001 0004 0010 //
|
||||
*1 0000 0012 0003 0021 //!
|
||||
*2 0001 0023 0004 0032 //"
|
||||
*3 0001 0034 0006 0043 //#
|
||||
*4 0001 0045 0006 0054 //$
|
||||
*5 0001 0056 0010 0065 //%
|
||||
*6 0001 0067 0007 0076 //&
|
||||
*7 0001 0078 0002 0087 //'
|
||||
*8 0001 0089 0003 0098 //(
|
||||
*9 0001 0100 0003 0109 //)
|
||||
*10 0001 0111 0004 0120 //*
|
||||
*11 0001 0122 0005 0131 //+
|
||||
*12 0001 0133 0002 0142 //,
|
||||
*13 0001 0144 0003 0153 //-
|
||||
*14 0001 0155 0002 0164 //.
|
||||
*15 0001 0166 0005 0175 ///
|
||||
*16 0001 0177 0006 0186 //0
|
||||
*17 0000 0188 0005 0197 //1
|
||||
*18 0001 0199 0006 0208 //2
|
||||
*19 0002 0210 0007 0219 //3
|
||||
*20 0002 0221 0007 0230 //4
|
||||
*21 0001 0232 0006 0241 //5
|
||||
*22 0001 0243 0006 0252 //6
|
||||
*23 0002 0254 0007 0263 //7
|
||||
*24 0001 0265 0006 0274 //8
|
||||
*25 0001 0276 0006 0285 //9
|
||||
*26 0001 0287 0002 0296 //:
|
||||
*27 0001 0298 0003 0307 //;
|
||||
*28 0001 0309 0004 0318 //<
|
||||
*29 0001 0320 0005 0329 //=
|
||||
*30 0001 0331 0004 0340 //>
|
||||
*31 0001 0342 0006 0351 //?
|
||||
*32 0001 0353 0007 0362 //@
|
||||
*33 0001 0364 0007 0373 //A
|
||||
*34 0001 0375 0007 0384 //B
|
||||
*35 0001 0386 0006 0395 //C
|
||||
*36 0001 0397 0007 0406 //D
|
||||
*37 0001 0408 0006 0417 //E
|
||||
*38 0001 0419 0006 0428 //F
|
||||
*39 0001 0430 0006 0439 //G
|
||||
*40 0001 0441 0007 0450 //H
|
||||
*41 0001 0452 0003 0461 //I
|
||||
*42 0001 0463 0007 0472 //J
|
||||
*43 0001 0474 0007 0483 //K
|
||||
*44 0001 0485 0005 0494 //L
|
||||
*45 0001 0496 0008 0505 //M
|
||||
*46 0001 0507 0007 0516 //N
|
||||
*47 0001 0518 0007 0527 //O
|
||||
*48 0001 0529 0006 0538 //P
|
||||
*49 0001 0540 0007 0549 //Q
|
||||
*50 0001 0551 0007 0560 //R
|
||||
*51 0001 0562 0006 0571 //S
|
||||
*52 0001 0573 0007 0582 //T
|
||||
*53 0001 0584 0007 0593 //U
|
||||
*54 0001 0595 0007 0604 //V
|
||||
*55 0001 0606 0008 0615 //W
|
||||
*56 0001 0617 0006 0626 //X
|
||||
*57 0002 0628 0008 0637 //Y
|
||||
*58 0001 0639 0006 0648 //Z
|
||||
*59 0001 0650 0003 0659 //[
|
||||
*60 0001 0661 0005 0670 //\
|
||||
*61 0001 0672 0003 0681 //]
|
||||
*62 0001 0683 0005 0692 //^
|
||||
*63 0001 0694 0006 0703 //_
|
||||
*64 0001 0705 0003 0714 //`
|
||||
*65 0002 0716 0006 0725 //a
|
||||
*66 0001 0727 0005 0736 //b
|
||||
*67 0002 0738 0006 0747 //c
|
||||
*68 0002 0749 0006 0758 //d
|
||||
*69 0002 0760 0006 0769 //e
|
||||
*70 0002 0771 0005 0780 //f
|
||||
*71 0002 0782 0006 0791 //g
|
||||
*72 0001 0793 0006 0802 //h
|
||||
*73 0001 0804 0003 0813 //i
|
||||
*74 0001 0815 0003 0824 //j
|
||||
*75 0001 0826 0005 0835 //k
|
||||
*76 0001 0837 0003 0846 //l
|
||||
*77 0001 0848 0008 0857 //m
|
||||
*78 0001 0859 0006 0868 //n
|
||||
*79 0002 0870 0006 0879 //o
|
||||
*80 0001 0881 0006 0890 //p
|
||||
*81 0002 0892 0006 0901 //q
|
||||
*82 0001 0903 0004 0912 //r
|
||||
*83 0001 0914 0005 0923 //s
|
||||
*84 0002 0925 0005 0934 //t
|
||||
*85 0001 0936 0006 0945 //u
|
||||
*86 0002 0947 0006 0956 //v
|
||||
*87 0002 0958 0008 0967 //w
|
||||
*88 0001 0969 0005 0978 //x
|
||||
*89 0001 0980 0006 0989 //y
|
||||
*90 0001 0991 0005 1000 //z
|
||||
*91 0001 1002 0004 1011 //{
|
||||
*92 0001 1013 0002 1022 //|
|
||||
*93 0001 1024 0004 1033 //}
|
||||
*94 0001 1035 0005 1044 //~
|
||||
*95 0001 1046 0010 1055 //
|
||||
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 6.2 KiB |
@@ -0,0 +1,97 @@
|
||||
numchr 96
|
||||
*0 0001 0001 0004 0010 //
|
||||
*1 0000 0012 0003 0021 //!
|
||||
*2 0001 0023 0004 0032 //"
|
||||
*3 0001 0034 0006 0043 //#
|
||||
*4 0001 0045 0006 0054 //$
|
||||
*5 0001 0056 0010 0065 //%
|
||||
*6 0001 0067 0007 0076 //&
|
||||
*7 0001 0078 0002 0087 //'
|
||||
*8 0001 0089 0003 0098 //(
|
||||
*9 0001 0100 0003 0109 //)
|
||||
*10 0001 0111 0004 0120 //*
|
||||
*11 0001 0122 0005 0131 //+
|
||||
*12 0001 0133 0002 0142 //,
|
||||
*13 0001 0144 0003 0153 //-
|
||||
*14 0001 0155 0002 0164 //.
|
||||
*15 0001 0166 0005 0175 ///
|
||||
*16 0001 0177 0006 0186 //0
|
||||
*17 0002 0188 0005 0197 //1
|
||||
*18 0001 0199 0006 0208 //2
|
||||
*19 0002 0210 0007 0219 //3
|
||||
*20 0002 0221 0007 0230 //4
|
||||
*21 0001 0232 0006 0241 //5
|
||||
*22 0001 0243 0006 0252 //6
|
||||
*23 0002 0254 0007 0263 //7
|
||||
*24 0001 0265 0006 0274 //8
|
||||
*25 0001 0276 0007 0285 //9
|
||||
*26 0001 0287 0002 0296 //:
|
||||
*27 0001 0298 0003 0307 //;
|
||||
*28 0001 0309 0004 0318 //<
|
||||
*29 0001 0320 0005 0329 //=
|
||||
*30 0001 0331 0004 0340 //>
|
||||
*31 0001 0342 0006 0351 //?
|
||||
*32 0001 0353 0007 0362 //@
|
||||
*33 0001 0364 0007 0373 //A
|
||||
*34 0001 0375 0007 0384 //B
|
||||
*35 0001 0386 0006 0395 //C
|
||||
*36 0001 0397 0007 0406 //D
|
||||
*37 0001 0408 0006 0417 //E
|
||||
*38 0001 0419 0006 0428 //F
|
||||
*39 0001 0430 0006 0439 //G
|
||||
*40 0001 0441 0007 0450 //H
|
||||
*41 0001 0452 0003 0461 //I
|
||||
*42 0001 0463 0007 0472 //J
|
||||
*43 0001 0474 0007 0483 //K
|
||||
*44 0001 0485 0005 0494 //L
|
||||
*45 0001 0496 0008 0505 //M
|
||||
*46 0001 0507 0007 0516 //N
|
||||
*47 0001 0518 0007 0527 //O
|
||||
*48 0001 0529 0006 0538 //P
|
||||
*49 0001 0540 0007 0549 //Q
|
||||
*50 0001 0551 0007 0560 //R
|
||||
*51 0001 0562 0006 0571 //S
|
||||
*52 0001 0573 0007 0582 //T
|
||||
*53 0001 0584 0007 0593 //U
|
||||
*54 0001 0595 0007 0604 //V
|
||||
*55 0001 0606 0008 0615 //W
|
||||
*56 0001 0617 0006 0626 //X
|
||||
*57 0002 0628 0008 0637 //Y
|
||||
*58 0001 0639 0006 0648 //Z
|
||||
*59 0001 0650 0003 0659 //[
|
||||
*60 0001 0661 0005 0670 //\
|
||||
*61 0001 0672 0003 0681 //]
|
||||
*62 0001 0683 0005 0692 //^
|
||||
*63 0001 0694 0006 0703 //_
|
||||
*64 0001 0705 0003 0714 //`
|
||||
*65 0002 0716 0006 0725 //a
|
||||
*66 0001 0727 0005 0736 //b
|
||||
*67 0002 0738 0006 0747 //c
|
||||
*68 0002 0749 0006 0758 //d
|
||||
*69 0002 0760 0006 0769 //e
|
||||
*70 0002 0771 0005 0780 //f
|
||||
*71 0002 0782 0006 0791 //g
|
||||
*72 0001 0793 0006 0802 //h
|
||||
*73 0001 0804 0003 0813 //i
|
||||
*74 0001 0815 0003 0824 //j
|
||||
*75 0001 0826 0005 0835 //k
|
||||
*76 0001 0837 0003 0846 //l
|
||||
*77 0001 0848 0008 0857 //m
|
||||
*78 0001 0859 0006 0868 //n
|
||||
*79 0002 0870 0006 0879 //o
|
||||
*80 0001 0881 0006 0890 //p
|
||||
*81 0002 0892 0006 0901 //q
|
||||
*82 0001 0903 0004 0912 //r
|
||||
*83 0001 0914 0005 0923 //s
|
||||
*84 0002 0925 0005 0934 //t
|
||||
*85 0001 0936 0006 0945 //u
|
||||
*86 0002 0947 0006 0956 //v
|
||||
*87 0002 0958 0008 0967 //w
|
||||
*88 0001 0969 0005 0978 //x
|
||||
*89 0001 0980 0006 0989 //y
|
||||
*90 0001 0991 0005 1000 //z
|
||||
*91 0001 1002 0004 1011 //{
|
||||
*92 0001 1013 0002 1022 //|
|
||||
*93 0001 1024 0004 1033 //}
|
||||
*94 0001 1035 0005 1044 //~
|
||||
*95 0001 1046 0010 1055 //
|
||||
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 4.9 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 4.9 KiB |
|
After Width: | Height: | Size: 5.7 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 9.6 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 84 KiB |
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 92 KiB |
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 93 KiB |
|
After Width: | Height: | Size: 93 KiB |
|
After Width: | Height: | Size: 316 B |
|
After Width: | Height: | Size: 423 B |
|
After Width: | Height: | Size: 314 B |
|
After Width: | Height: | Size: 6.8 KiB |
@@ -0,0 +1,96 @@
|
||||
numchr 95
|
||||
*0 0001 0001 0004 0014 //
|
||||
*1 0001 0016 0003 0029 //!
|
||||
*2 0001 0031 0007 0044 //"
|
||||
*3 0001 0046 0009 0059 //#
|
||||
*4 0001 0061 0008 0074 //$
|
||||
*5 0001 0076 0013 0089 //%
|
||||
*6 0001 0091 0010 0104 //&
|
||||
*7 0001 0106 0003 0119 //'
|
||||
*8 0001 0121 0004 0134 //(
|
||||
*9 0001 0136 0004 0149 //)
|
||||
*10 0001 0151 0006 0164 //*
|
||||
*11 0001 0166 0007 0179 //+
|
||||
*12 0001 0181 0003 0194 //,
|
||||
*13 0001 0196 0005 0209 //-
|
||||
*14 0001 0211 0004 0224 //.
|
||||
*15 0001 0226 0007 0239 ///
|
||||
*16 0001 0241 0009 0254 //0
|
||||
*17 0001 0256 0005 0269 //1
|
||||
*18 0001 0271 0008 0284 //2
|
||||
*19 0001 0286 0008 0299 //3
|
||||
*20 0001 0301 0009 0314 //4
|
||||
*21 0001 0316 0009 0329 //5
|
||||
*22 0001 0331 0009 0344 //6
|
||||
*23 0001 0346 0008 0359 //7
|
||||
*24 0001 0361 0008 0374 //8
|
||||
*25 0001 0376 0009 0389 //9
|
||||
*26 0001 0391 0003 0404 //:
|
||||
*27 0001 0406 0004 0419 //;
|
||||
*28 0001 0421 0006 0434 //<
|
||||
*29 0001 0436 0007 0449 //=
|
||||
*30 0001 0451 0005 0464 //>
|
||||
*31 0001 0466 0008 0479 //?
|
||||
*32 0001 0481 0011 0494 //@
|
||||
*33 0001 0496 0010 0509 //A
|
||||
*34 0001 0511 0009 0524 //B
|
||||
*35 0001 0526 0008 0539 //C
|
||||
*36 0001 0541 0009 0554 //D
|
||||
*37 0001 0556 0008 0569 //E
|
||||
*38 0001 0571 0007 0584 //F
|
||||
*39 0001 0586 0009 0599 //G
|
||||
*40 0001 0601 0009 0614 //H
|
||||
*41 0001 0616 0003 0629 //I
|
||||
*42 0001 0631 0009 0644 //J
|
||||
*43 0001 0646 0009 0659 //K
|
||||
*44 0001 0661 0008 0674 //L
|
||||
*45 0001 0676 0011 0689 //M
|
||||
*46 0001 0691 0009 0704 //N
|
||||
*47 0001 0706 0009 0719 //O
|
||||
*48 0001 0721 0008 0734 //P
|
||||
*49 0001 0736 0010 0749 //Q
|
||||
*50 0001 0751 0009 0764 //R
|
||||
*51 0001 0766 0009 0779 //S
|
||||
*52 0001 0781 0009 0794 //T
|
||||
*53 0001 0796 0008 0809 //U
|
||||
*54 0001 0811 0010 0824 //V
|
||||
*55 0001 0826 0011 0839 //W
|
||||
*56 0001 0841 0010 0854 //X
|
||||
*57 0001 0856 0009 0869 //Y
|
||||
*58 0001 0871 0008 0884 //Z
|
||||
*59 0001 0886 0005 0899 //[
|
||||
*60 0001 0901 0007 0914 //\
|
||||
*61 0001 0916 0004 0929 //]
|
||||
*62 0001 0931 0007 0944 //^
|
||||
*63 0001 0946 0008 0959 //_
|
||||
*64 0001 0961 0004 0974 //`
|
||||
*65 0002 0976 0008 0989 //a
|
||||
*66 0001 0991 0008 1004 //b
|
||||
*67 0001 1006 0007 1019 //c
|
||||
*68 0001 1021 0007 1034 //d
|
||||
*69 0002 1036 0008 1049 //e
|
||||
*70 0002 1051 0006 1064 //f
|
||||
*71 0002 1066 0008 1079 //g
|
||||
*72 0001 1081 0008 1094 //h
|
||||
*73 0001 1096 0004 1109 //i
|
||||
*74 0001 1111 0005 1124 //j
|
||||
*75 0001 1126 0007 1139 //k
|
||||
*76 0001 1141 0004 1154 //l
|
||||
*77 0001 1156 0012 1169 //m
|
||||
*78 0001 1171 0008 1184 //n
|
||||
*79 0002 1186 0008 1199 //o
|
||||
*80 0001 1201 0007 1214 //p
|
||||
*81 0001 1216 0007 1229 //q
|
||||
*82 0001 1231 0006 1244 //r
|
||||
*83 0001 1246 0007 1259 //s
|
||||
*84 0001 1261 0006 1274 //t
|
||||
*85 0001 1276 0008 1289 //u
|
||||
*86 0001 1291 0008 1304 //v
|
||||
*87 0002 1306 0011 1319 //w
|
||||
*88 0001 1321 0008 1334 //x
|
||||
*89 0001 1336 0008 1349 //y
|
||||
*90 0001 1351 0007 1364 //z
|
||||
*91 0001 1366 0005 1379 //{
|
||||
*92 0001 1381 0003 1394 //|
|
||||
*93 0001 1396 0006 1409 //}
|
||||
*94 0001 1411 0007 1424 //~
|
||||
|
After Width: | Height: | Size: 7.8 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 899 B |
|
After Width: | Height: | Size: 974 B |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1007 B |
|
After Width: | Height: | Size: 909 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 373 B |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 563 B |
|
After Width: | Height: | Size: 617 B |
|
After Width: | Height: | Size: 948 B |
|
After Width: | Height: | Size: 959 B |
|
After Width: | Height: | Size: 941 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 889 B |
|
After Width: | Height: | Size: 7.8 KiB |