brewery
notashelf /
d145d88b7ee83cfd47af56afaae79a177b49d436

chroma

public

Lightweight wallpaper daemon for Wayland

Star0tarball
clone
ssh://git@git.notashelf.dev:33/notashelf/chroma.git

Commit d145d88b7ee8

tarball

NotAShelf <raf@notashelf.dev> · 2026-01-31 12:15 UTC

unverified1 files changed+55-3
meta: add downsampling options to sample config

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ie0aac45e64dfe292b3cd8de330f6b2d86a6a6964
diff --git a/chroma.conf.sample b/chroma.conf.sampleindex cd52968..27dad16 100644--- a/chroma.conf.sample+++ b/chroma.conf.sample@@ -27,15 +27,59 @@ default_image = ~/.config/chroma/default.jpg # Usually set via command line option --daemon, but can be set here too daemon_mode = false +# Global scaling mode for wallpapers (used as default for all outputs)+# Options: fill, fit, stretch, center+#   fill    - Fill entire output, crop if necessary (default)+#   fit     - Fit image within output, add borders if needed+#   stretch - Stretch to fill output, may distort aspect ratio+#   center  - Center image at original size+scale_mode = fill++# Global image filtering quality (used as default for all outputs)+# Options: nearest, linear, bilinear, trilinear+#   nearest   - Nearest neighbor filtering (pixelated, fast)+#   linear    - Linear filtering (smooth, default)+#   bilinear  - Bilinear filtering (smoother)+#   trilinear - Trilinear filtering (smoothest)+filter_quality = linear++# Image downsampling settings for performance optimization+# ===================================================+# Enable automatic downsampling of large images to save memory and improve performance+# Set to false to keep original resolution for all images (uses more memory!)+enable_downsampling = true++# Maximum expected output resolution+# Images larger than these dimensions may be automatically downsampled+# Adjust based on your actual monitor setup+max_output_width = 3840   # 4K width (change to 2560 for 1440p, 1920 for 1080p)+max_output_height = 2160  # 4K height (change to 1440 for 1440p, 1080 for 1080p)++# Minimum scale factor+# Prevents images from being scaled below this percentage of original size+# Useful to preserve detail on very high-resolution images+# Range: 0.1 to 1.0 (10% to 100%)+min_scale_factor = 0.25  # Don't scale below 25% of original size+ # Output-specific wallpaper mappings # ==================================-# Format: output.OUTPUT_NAME = /path/to/image.ext+# Basic format: output.OUTPUT_NAME = /path/to/image.ext+#+# Extended format with per-output settings:+#   output.OUTPUT_NAME = /path/to/image.ext+#   output.OUTPUT_NAME.scale = fill|fit|stretch|center+#   output.OUTPUT_NAME.filter = nearest|linear|bilinear|trilinear # # To find your output names, run one of these commands:-#   - wlr-randr (for wlroots-based compositors like Sway, Hyprland)+#+#   Compositor Agnostic:+#   - wlr-randr (for wlroots-based compositors) #   - wayland-info | grep wl_output #   - kanshi list-outputs #+#   Compositor Specific+#   - hyprctl monitors -j | jq .[].name (Hyprland specific)+# # Common output name patterns: #   - DP-1, DP-2, DP-3, etc. (DisplayPort) #   - HDMI-A-1, HDMI-A-2, etc. (HDMI)@@ -43,6 +87,14 @@ daemon_mode = false #   - DVI-D-1, DVI-I-1 (DVI) #   - VGA-1 (VGA, legacy) #-#  Example:+#  Examples: #  output.HDMI-A-1 = ~/Pictures/wallpaper.jpg+#  output.DP-1 = ~/Pictures/monitor1.png+#  output.DP-1.scale = fit+#  output.DP-1.filter = bilinear+#  output.DP-2 = ~/Pictures/monitor2.jpg+#  output.DP-2.scale = stretch+#  output.eDP-1 = ~/Pictures/laptop-wallpaper.jpg+#  output.eDP-1.scale = center+#  output.eDP-1.filter = trilinear