···11+22+dedicated arch linux configs that are not part of the other dotfiles.
33+44+additional hyprland, or dedicated linux script.
55+
+44
_arch-linux/ghostty/config
···11+# This is the configuration file for Ghostty.
22+#
33+# This template file has been automatically created at the following
44+# path since Ghostty couldn't find any existing config files on your system:
55+#
66+# /home/sspaeti/.config/ghostty/config
77+#
88+# The template does not set any default options, since Ghostty ships
99+# with sensible defaults for all options. Users should only need to set
1010+# options that they want to change from the default.
1111+#
1212+# Run `ghostty +show-config --default --docs` to view a list of
1313+# all available config options and their default values.
1414+#
1515+# Additionally, each config option is also explained in detail
1616+# on Ghostty's website, at https://ghostty.org/docs/config.
1717+1818+# Config syntax crash course
1919+# ==========================
2020+# # The config file consists of simple key-value pairs,
2121+# # separated by equals signs.
2222+font-family = Iosevka
2323+# window-padding-x = 2
2424+#
2525+# # Spacing around the equals sign does not matter.
2626+# # All of these are identical:
2727+# key=value
2828+# key= value
2929+# key =value
3030+# key = value
3131+#
3232+# # Any line beginning with a # is a comment. It's not possible to put
3333+# # a comment after a config option, since it would be interpreted as a
3434+# # part of the value. For example, this will have a value of "#123abc":
3535+# background = #123abc
3636+#
3737+# # Empty values are used to reset config keys to default.
3838+# key =
3939+#
4040+# # Some config options have unique syntaxes for their value,
4141+# # which is explained in the docs for that config option.
4242+# # Just for example:
4343+# resize-overlay-duration = 4s 200ms
4444+confirm-close-surface=false
+16
_arch-linux/hypr/hypridle.conf
···11+general {
22+ lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
33+ before_sleep_cmd = loginctl lock-session # lock before suspend.
44+ after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
55+}
66+77+listener {
88+ timeout = 300 # 5min
99+ on-timeout = loginctl lock-session # lock screen when timeout has passed
1010+}
1111+1212+listener {
1313+ timeout = 330 # 5.5min
1414+ on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
1515+ on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected
1616+}
+36
_arch-linux/hypr/hyprland.conf
···11+# Learn how to configure Hyprland: https://wiki.hyprland.org/Configuring/
22+33+# Change your personal monitor setup in here to keep the main config portable
44+source = ~/.config/hypr/monitors.conf
55+66+# Default applications
77+$terminal = ghostty
88+$fileManager = nautilus --new-window
99+$browser = brave --new-window --ozone-platform=wayland --force-device-scale-factor=1.0
1010+$music = spotify
1111+$passwordManager = 1password
1212+$messenger = signal-desktop
1313+$webapp = $browser --app
1414+1515+# Use defaults Omarchy defaults
1616+source = ~/.local/share/omarchy/default/hypr/autostart.conf
1717+source = ~/.local/share/omarchy/default/hypr/bindings.conf
1818+source = ~/.local/share/omarchy/default/hypr/envs.conf
1919+source = ~/.local/share/omarchy/default/hypr/looknfeel.conf
2020+source = ~/.local/share/omarchy/default/hypr/input.conf
2121+source = ~/.local/share/omarchy/default/hypr/windows.conf
2222+source = ~/.config/omarchy/current/theme/hyprland.conf
2323+2424+# Extra autostart processes (uncomment to run Dropbox)
2525+# exec-once = dropbox-cli start
2626+2727+# Extra env variables
2828+env = GDK_SCALE,2 # Change to 1 if on a 1x display
2929+3030+3131+3232+# Use multiple keyboard layouts and switch between them with Alt + Space
3333+# input {
3434+# kb_layout = us,dk
3535+# kb_options = compose:caps,grp:alt_space_toggle
3636+# }
···11+# Refer to https://wiki.hyprland.org/Configuring/Variables/
22+33+# https://wiki.hyprland.org/Configuring/Variables/#general
44+general {
55+ gaps_in = 1.2
66+ gaps_out = 0
77+88+ border_size = 0
99+1010+ # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
1111+ col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
1212+ col.inactive_border = rgba(595959aa)
1313+1414+ # Set to true enable resizing windows by clicking and dragging on borders and gaps
1515+ resize_on_border = false
1616+1717+ # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
1818+ allow_tearing = false
1919+2020+ layout = dwindle
2121+}
2222+2323+# https://wiki.hyprland.org/Configuring/Variables/#decoration
2424+decoration {
2525+ rounding = 0
2626+2727+ shadow {
2828+ enabled = true
2929+ range = 2
3030+ render_power = 3
3131+ color = rgba(1a1a1aee)
3232+ }
3333+3434+ # https://wiki.hyprland.org/Configuring/Variables/#blur
3535+ blur {
3636+ enabled = true
3737+ size = 3
3838+ passes = 1
3939+4040+ vibrancy = 0.1696
4141+ }
4242+}
4343+4444+# https://wiki.hyprland.org/Configuring/Variables/#animations
4545+animations {
4646+ enabled = no, please :)
4747+4848+ # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
4949+5050+ bezier = easeOutQuint,0.23,1,0.32,1
5151+ bezier = easeInOutCubic,0.65,0.05,0.36,1
5252+ bezier = linear,0,0,1,1
5353+ bezier = almostLinear,0.5,0.5,0.75,1.0
5454+ bezier = quick,0.15,0,0.1,1
5555+5656+ animation = global, 1, 10, default
5757+ animation = border, 1, 5.39, easeOutQuint
5858+ animation = windows, 1, 4.79, easeOutQuint
5959+ animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
6060+ animation = windowsOut, 1, 1.49, linear, popin 87%
6161+ animation = fadeIn, 1, 1.73, almostLinear
6262+ animation = fadeOut, 1, 1.46, almostLinear
6363+ animation = fade, 1, 3.03, quick
6464+ animation = layers, 1, 3.81, easeOutQuint
6565+ animation = layersIn, 1, 4, easeOutQuint, fade
6666+ animation = layersOut, 1, 1.5, linear, fade
6767+ animation = fadeLayersIn, 1, 1.79, almostLinear
6868+ animation = fadeLayersOut, 1, 1.39, almostLinear
6969+ animation = workspaces, 0, 0, ease
7070+}
7171+7272+# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
7373+# "Smart gaps" / "No gaps when only"
7474+# uncomment all if you wish to use that.
7575+# workspace = w[tv1], gapsout:0, gapsin:0
7676+# workspace = f[1], gapsout:0, gapsin:0
7777+# windowrule = bordersize 0, floating:0, onworkspace:w[tv1]
7878+# windowrule = rounding 0, floating:0, onworkspace:w[tv1]
7979+# windowrule = bordersize 0, floating:0, onworkspace:f[1]
8080+# windowrule = rounding 0, floating:0, onworkspace:f[1]
8181+8282+# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
8383+dwindle {
8484+ pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
8585+ preserve_split = true # You probably want this
8686+ force_split = 2 # Always split on the right
8787+}
8888+8989+# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
9090+master {
9191+ new_status = master
9292+}
9393+9494+# https://wiki.hyprland.org/Configuring/Variables/#misc
9595+misc {
9696+ disable_hyprland_logo = true
9797+ disable_splash_rendering = true
9898+}
9999+
+30
_arch-linux/hypr/omarchy/default/windows.conf
···11+# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
22+windowrule = suppressevent maximize, class:.*
33+44+# Force chromium into a tile to deal with --app bug
55+windowrule = tile, class:^(Chromium)$
66+77+# Float sound and bluetooth settings
88+windowrule = float, class:^(org.pulseaudio.pavucontrol|blueberry.py)$
99+1010+# Float Steam, fullscreen RetroArch
1111+windowrule = float, class:^(steam)$
1212+windowrule = fullscreen, class:^(com.libretro.RetroArch)$
1313+1414+# Just dash of opacity
1515+windowrule = opacity 0.97 0.9, class:.*
1616+windowrule = opacity 1 0.97, class:^(Chromium|chromium|google-chrome|google-chrome-unstable)$
1717+windowrule = opacity 1 1, initialTitle:^(youtube.com_/)$ # Youtube
1818+windowrule = opacity 1 1, class:^(zoom|vlc|org.kde.kdenlive|com.obsproject.Studio|com.github.PintaProject.Pinta)$
1919+windowrule = opacity 1 1, class:^(com.libretro.RetroArch|steam)$
2020+2121+# Fix some dragging issues with XWayland
2222+windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
2323+2424+# Proper background blur for wofi
2525+layerrule = blur,wofi
2626+2727+# Float in the middle for clipse clipboard manager
2828+windowrule = float, class:(clipse)
2929+windowrule = size 622 652, class:(clipse)
3030+windowrule = stayfocused, class:(clipse)
+16
_arch-linux/hypr/scripts/obsidian-toggle.sh
···11+#!/bin/bash
22+# Save as ~/.config/hypr/scripts/obsidian-smart-focus.sh
33+44+OBSIDIAN_INFO=$(hyprctl clients | grep -A 10 "class: obsidian")
55+66+if [ -n "$OBSIDIAN_INFO" ]; then
77+ # Get workspace of obsidian window
88+ WORKSPACE=$(echo "$OBSIDIAN_INFO" | grep "workspace:" | head -1 | awk '{print $2}')
99+1010+ # Switch to workspace and focus window
1111+ hyprctl dispatch workspace "$WORKSPACE"
1212+ hyprctl dispatch focuswindow "class:obsidian"
1313+else
1414+ # Obsidian is not running, start it
1515+ obsidian --disable-gpu
1616+fi
+29
_arch-linux/kanata/kanata.kbd
···11+22+(defsrc
33+ esc 1 2 3 4 5 6 7 8 9 0 - = bspc
44+ tab q w e r t y u i o p [ ] \
55+ caps a s d f g h j k l ; ' ret
66+ lsft z x c v b n m , . / rsft
77+ lctl lmet lalt spc ralt rmet menu rctl
88+)
99+1010+(defalias
1111+ ;; Define Caps Lock as a tap-hold: tap for Escape, hold for layer
1212+ caps-key (tap-hold 200 200 esc (layer-while-held caps-layer))
1313+)
1414+1515+(deflayer base
1616+ esc 1 2 3 4 5 6 7 8 9 0 - = bspc
1717+ tab q w e r t z u i o p [ ] \
1818+ @caps-key a s d f g h j k l ; ' ret
1919+ lsft y x c v b n m , . / rsft
2020+ lctl lmet lalt spc ralt rmet menu rctl
2121+)
2222+2323+(deflayer caps-layer
2424+ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2525+ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2626+ _ _ _ _ _ _ left down up rght _ _ _
2727+ _ _ _ _ _ _ _ _ _ _ _ _
2828+ _ _ _ _ _ _ _ _
2929+)
···11+#this script is done to automatically backup alls my dotsfiles for arch that are not part of backup_dotfiles.sh
22+33+cp -r ~/.config/hypr/ _arch-linux/
44+cp -r ~/.local/share/omarchy/default/hypr/* _arch-linux/hypr/omarchy/default
55+66+#keyboard shortcuts
77+cp /etc/kanata/kanata.kbd _arch-linux/kanata/
88+cp /etc/systemd/system/kanata.service _arch-linux/kanata/
99+1010+cp -r ~/.config/waybar/ _arch-linux/waybar/
1111+cp -r ~/.config/wofi/ _arch-linux/wofi
1212+1313+1414+1515+#! I also have the mac ghostty settings in the dots files one level above
1616+cp -r ~/.config/ghostty/ _arch-linux/ghostty