diff --git a/add-144hz-mode-xorg.sh b/add-144hz-mode-xorg.sh new file mode 100755 index 0000000..6c2041b --- /dev/null +++ b/add-144hz-mode-xorg.sh @@ -0,0 +1,13 @@ +#!/bin/bash +# Script to add 144Hz mode to i3 + +echo "Adding 144Hz mode to i3..." + +DISPLAY="DisplayPort-0" +MODE="2560x1440_144.00_rb2" + +xrandr --newmode $MODE 586.59 2560 2568 2600 2640 1440 1529 1537 1543 +hsync -vsync +xrandr --addmode $DISPLAY $MODE +xrandr --output $DISPLAY --mode $MODE + +echo "144Hz mode should now be active. Check with: xrandr" diff --git a/home_dotfiles/.config/sway/config b/home_dotfiles/.config/sway/config index 0e4e698..3bfa127 100644 --- a/home_dotfiles/.config/sway/config +++ b/home_dotfiles/.config/sway/config @@ -74,8 +74,10 @@ output * bg /home/raga/.config/sway/wallpaper.jpg fill # Multi-monitor setup # You can get your output names by running: swaymsg -t get_outputs # DP-2 is the primary monitor on the left, and DP-1 is on the right. -output DP-2 { - mode 2560x1440@144Hz +output HDMI-A-1 { +#output DP-2 { +# mode 2560x1440@60Hz + mode 2560x1440@120Hz position 0 0 } @@ -469,7 +471,8 @@ bindsym $mod+i bar mode toggle bar { position bottom mode dock - font pango:monospace 10 + #font pango:monospace 10 + font pango: FontAwesome, monospace 10 separator_symbol " " strip_workspace_numbers yes workspace_min_width 36 @@ -508,3 +511,5 @@ exec --no-startup-id nm-applet # Include additional config files if they exist include /etc/sway/config.d/* + +bindsym $mod+x exec "$(file="/tmp/click"; if test "0" = "$(cat "$file")"; then printf '1\n' > "$file"; else printf '0\n' > "$file"; fi)" diff --git a/home_dotfiles/.config/sway/i3status-rust.toml b/home_dotfiles/.config/sway/i3status-rust.toml index c6b836b..86cd85b 100644 --- a/home_dotfiles/.config/sway/i3status-rust.toml +++ b/home_dotfiles/.config/sway/i3status-rust.toml @@ -16,6 +16,8 @@ format_alt = " $icon $frequency{ $boost} " block = "memory" format = " $icon $mem_used_percents.eng(w:2) " interval = 10 +warning_mem = 80.0 +critical_mem = 90.0 [[block]] block = "battery" @@ -83,4 +85,4 @@ format = " $icon $timestamp.datetime(f:'%Y-%m-%d %H:%M:%S') " interval = 1 [icons] -icons = "awesome4" +icons = "awesome6" diff --git a/home_dotfiles/.config/swayimg/swayimgrc b/home_dotfiles/.config/swayimg/swayimgrc new file mode 100644 index 0000000..311db8f --- /dev/null +++ b/home_dotfiles/.config/swayimg/swayimgrc @@ -0,0 +1,275 @@ +# Swayimg configuration file. +# vim: filetype=dosini + +# This file contains the default configuration. +# The viewer searches for the config file in the following locations: +# 1. $XDG_CONFIG_HOME/swayimg/config +# 2. $HOME/.config/swayimg/config +# 3. $XDG_CONFIG_DIRS/swayimg/config +# 4. /etc/xdg/swayimg/config + +# Any of these options can be overridden using the --config argument +# on the command line, for instance: +# $ swayimg --config="general.mode=gallery" + +################################################################################ +# General configuration +################################################################################ +[general] +# Mode at startup (viewer/slideshow/gallery) +mode = viewer +# Window size (fullscreen/image, or absolute size) +size = 1280,720 +# Sway/Hyprland only: Window position (auto or absolute coordinates, e.g. 10,20) +position = auto +# Sway/Hyprland only: create floating window above the currently focused one +overlay = yes +# Use window decoration (yes/no) +decoration = no +# Action performed by SIGUSR1 signal (same format as for key bindings) +sigusr1 = reload +# Action performed by SIGUSR2 signal (same format as for key bindings) +sigusr2 = next_file +# Application ID and window class name +app_id = swayimg + +################################################################################ +# Viewer mode configuration +################################################################################ +[viewer] +# Window background color (auto/extend/mirror/RGBA) +window = #00000000 +# Background for transparent images (grid/RGBA) +transparency = grid +# Default image scale (optimal/width/height/fit/fill/real/keep) +scale = optimal +# Initial image position on the window (center/top/bottom/free/...) +position = center +# Anti-aliasing mode (none/box/bilinear/bicubic/mks13) +antialiasing = mks13 +# Loop image list: jump to first image when end of list is reached (yes/no) +loop = yes +# Number of previously viewed images to store in cache +history = 1 +# Number of preloaded images (read ahead) +preload = 1 + +################################################################################ +# Slideshow mode configuration +################################################################################ +[slideshow] +# Slideshow image display time (seconds) +time = 3 +# Window background color (auto/extend/mirror/RGBA) +window = auto +# Background for transparent images (grid/RGBA) +transparency = #000000ff +# Default image scale (optimal/width/height/fit/fill/real) +scale = fit +# Initial image position on the window (center/top/bottom/free/...) +position = center +# Anti-aliasing mode (none/box/bilinear/bicubic/mks13) +antialiasing = mks13 + +################################################################################ +# Gallery mode configuration +################################################################################ +[gallery] +# Height and width of each thumbnail (pixels) +size = 200 +# Max number of invisible thumbnails stored in memory cache +cache = 100 +# Load not only visible but also adjacent thumbnails +preload = no +# Enable/disable storing thumbnails in persistent storage (yes/no) +pstore = no +# Fill the entire tile with thumbnail (yes/no) +fill = yes +# Anti-aliasing mode for thumbnails (none/box/bilinear/bicubic/mks13) +antialiasing = mks13 +# Background color of the window (RGBA) +window = #00000000 +# Background color of non-selected tiles (RGBA) +background = #202020ff +# Background color of the selected tile (RGBA) +select = #404040ff +# Border color of the selected tile (RGBA) +border = #000000ff +# Shadow color of the selected tile (RGBA) +shadow = #000000ff + +################################################################################ +# Image list configuration +################################################################################ +[list] +# Default order (none/alpha/numeric/mtime/size/random) +order = alpha +# Reverse order (yes/no) +reverse = no +# Read directories recursively (yes/no) +recursive = no +# Add files from the same directory as the first file (yes/no) +all = no +# Enable file system monitoring for adding new images to the list (yes/no) +fsmon = yes + +################################################################################ +# Font configuration +################################################################################ +[font] +# Font name +name = monospace +# Font size (pt) +size = 14 +# Font color (RGBA) +color = #ccccccff +# Shadow color (RGBA) +shadow = #000000d0 +# Background color (RGBA) +background = #00000000 + +################################################################################ +# Image meta info scheme (format, size, EXIF, etc.) +################################################################################ +[info] +# Show on startup (yes/no) +show = yes +# Timeout to hide info (seconds, 0 to always show) +info_timeout = 5 +# Timeout to hide status message (seconds) +status_timeout = 3 + +# Display scheme for viewer mode (position = content) +[info.viewer] +top_left = +name,+format,+filesize,+imagesize,+exif +top_right = index +bottom_left = scale,frame +bottom_right = status + +# Display scheme for slideshow mode (position = content) +[info.slideshow] +top_left = none +top_right = none +bottom_left = none +bottom_right = dir,status + +# Display scheme for gallery mode (position = content) +[info.gallery] +top_left = none +top_right = index +bottom_left = none +bottom_right = name,status + +################################################################################ +# Viewer mode key binding configuration: key = action [parameters] +################################################################################ +[keys.viewer] +F1 = help +Home = first_file +End = last_file +Prior = prev_file +Next = next_file +Space = next_file +Shift+r = rand_file +Shift+d = prev_dir +d = next_dir +Shift+o = prev_frame +o = next_frame +c = skip_file +s = mode slideshow +n = animation +f = fullscreen +Return = mode gallery +Left = step_left 10 +Right = step_right 10 +Up = step_up 10 +Down = step_down 10 +Equal = zoom +10 +Plus = zoom +10 +Minus = zoom -10 +w = zoom width +Shift+w = zoom height +z = zoom fit +Shift+z = zoom fill +0 = zoom real +BackSpace = zoom optimal +k = zoom keep +Alt+s = zoom +bracketleft = rotate_left +bracketright = rotate_right +m = flip_vertical +Shift+m = flip_horizontal +a = antialiasing +r = reload +i = info +Shift+Delete = exec trash-put '%' && echo "File trashed: %"; skip_file +Escape = exit +q = exit +# Mouse related +ScrollLeft = step_right 5 +ScrollRight = step_left 5 +ScrollUp = step_up 5 +ScrollDown = step_down 5 +Ctrl+ScrollUp = zoom +10 +Ctrl+ScrollDown = zoom -10 +Shift+ScrollUp = prev_file +Shift+ScrollDown = next_file +Alt+ScrollUp = prev_frame +Alt+ScrollDown = next_frame +MouseLeft = drag +MouseSide = prev_file +MouseExtra = next_file + +################################################################################ +# Slideshow mode key binding configuration: key = action [parameters] +################################################################################ +[keys.slideshow] +F1 = help +Home = first_file +End = last_file +Prior = prev_file +Next = next_file +Shift+r = rand_file +Shift+d = prev_dir +d = next_dir +Space = pause +i = info +f = fullscreen +Return = mode +Escape = exit +q = exit + +################################################################################ +# Gallery mode key binding configuration: key = action [parameters] +################################################################################ +[keys.gallery] +F1 = help +Home = first_file +End = last_file +Left = step_left +Right = step_right +Up = step_up +Down = step_down +Prior = page_up +Next = page_down +c = skip_file +s = mode slideshow +f = fullscreen +Return = mode viewer +a = antialiasing +r = reload +i = info +Equal = thumb +20 +Plus = thumb +20 +Minus = thumb -20 +Shift+Delete = exec trash-put '%' && echo "File trashed: %"; skip_file +Escape = exit +q = exit +# Mouse related +ScrollLeft = step_right +ScrollRight = step_left +ScrollUp = step_up +ScrollDown = step_down +Ctrl+ScrollUp = thumb +20 +Ctrl+ScrollDown = thumb -20 +MouseLeft = mode viewer diff --git a/install-arch-sway.sh b/install-arch-sway.sh index e8c1b27..ecde279 100755 --- a/install-arch-sway.sh +++ b/install-arch-sway.sh @@ -34,6 +34,12 @@ echo "Installing main Sway config..." cp $SCRIPT_DIR/home_dotfiles/.config/sway/config ~/.config/sway/config echo "✓ Sway config installed to ~/.config/sway/config" +# === SWAYIMG CONFIG === +echo "" +echo "Installing swayimg config..." +cp $SCRIPT_DIR/home_dotfiles/.config/swayimg/swayimgrc ~/.config/swayimg/swayimgrc +echo "✓ Swayimg config installed to ~/.config/swayimg/swayimgrc" + # === I3STATUS-RUST CONFIG === # Comment out this section if you don't want i3status-rust echo "" @@ -58,7 +64,7 @@ echo "✓ Bluetooth script installed to ~/.config/sway/bluetooth-sway.sh" # === VOLUME NOTIFY SCRIPT === # Comment out this section if you don't want volume notifications -if [ -f volume-notify-sway.sh ]; then +if [ -f $SCRIPT_DIR/home_dotfiles/.config/sway/volume-notify-sway.sh ]; then echo "" echo "Installing volume notify script..." cp $SCRIPT_DIR/home_dotfiles/.config/sway/volume-notify-sway.sh ~/.config/sway/volume-notify-sway.sh @@ -82,6 +88,7 @@ echo "" echo "Config files installed:" echo "- ~/.config/mako/config (notification styling)" echo "- ~/.config/sway/config (main Sway config)" +echo "- ~/.config/swayimg/swayimgrc (image viewer config)" echo "- ~/.config/sway/i3status-rust.toml (status bar config)" echo "- ~/.config/sway/weather-sway.sh (weather script)" if [ -f ~/.config/sway/volume-notify-sway.sh ]; then diff --git a/set-displays-order-xorg.sh b/set-displays-order-xorg.sh new file mode 100755 index 0000000..110131a --- /dev/null +++ b/set-displays-order-xorg.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +xrandr \ + --output HDMI-A-0 --primary --pos 0x0 \ + --output DisplayPort-0 --pos 2560x0