8000 GitHub - Gigas002/imgvwr: a minimal, fast image viewer for Wayland, written in Rust · GitHub
[go: up one dir, main page]

Skip to content
{"props":{"color_mode":"dark","logged_in":false,"marketing_page":false,"home_path":"/","login_path":"/login?return_to=https%3A%2F%2Fgithub.com%2FGigas002%2Fimgvwr","signup_path":"/signup?ref_cta=Sign+up\u0026ref_loc=header+logged+out\u0026ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E\u0026source=header-repo\u0026source_repo=Gigas002%2Fimgvwr","signup_enabled":true,"is_signup_controller":false,"show_search_and_nav":true,"hide_search":false,"private_mode_enabled":false,"should_use_dotcom_links":true,"auth_hydro_click":"{\"event_type\":\"authentication.click\",\"payload\":{\"location_in_page\":\"site header menu\",\"repository_id\":null,\"auth_type\":\"SIGN_UP\",\"originating_url\":\"https://github.com/Gigas002/imgvwr\",\"user_id\":null}}","auth_hydro_click_hmac":"2567753349e601ba5ed2cedda5fe9bfc3bd34d7050876710dae88e2bbef8e308"}}
Gigas002Public

About

a minimal, fast image viewer for Wayland, written in Rust

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

imgvwr

A minimal, fast image viewer for Wayland, written in Rust.


Requirements

Runtime:

  • A Wayland compositor
  • libwayland-client
  • libxkbcommon

Optional runtime dependencies (feature-gated):

Feature Runtime requirement
gpu-vulkan Vulkan-capable driver (Mesa, NVIDIA, etc.)
gpu-gles EGL + OpenGL ES 3.1 driver (vello needs compute shaders)
dmabuf Compositor with zwp_linux_dmabuf_v1 support (implies gpu-vulkan)
decorations Compositor with zxdg_decoration_manager_v1 support
avif / avif-anim libdav1d
jxl / jxl-anim libjxl
gif / webp-anim / apng libc (virtually always present)

Build-time:

  • Rust toolchain
  • pkg-config
  • Wayland protocol headers (wayland-protocols)

Feature reference

Feature Default Description
png yes PNG decoding
jpeg no JPEG decoding
webp no WebP (static) decoding
webp-anim no WebP animation
avif no AVIF (static) decoding via dav1d
avif-anim no AVIF animation via dav1d + mp4parse
jxl no JPEG XL (static) decoding
jxl-anim no JPEG XL animation
gif no GIF (animated) decoding
apng no Animated PNG decoding
decorations no Server-side window decorations
gpu-vulkan no GPU rendering via vello on wgpu/Vulkan
gpu-gles no GPU rendering via vello on wgpu/OpenGL ES
dmabuf no DMA-BUF zero-copy display (implies gpu-vulkan)
logging yes RUST_LOG-driven tracing output
config yes TOML config file parsing
keybinds yes Configurable keybindings
completions no Shell completion script generation

Usage

imgvwr [OPTIONS] [PATHS]...

Open one or more image files:

imgvwr image.png
imgvwr *.jpg
imgvwr ~/pictures/**/*.webp

CLI options

Option Description
[PATHS]... One or more image file paths to open
--config <PATH> Load an additional config file (layered on top of system/user config)
-d, --decorations [true|false] Override window decoration setting
-a, --antialiasing [true|false] Override antialiasing setting
--min-scale <FLOAT> Minimum zoom factor (e.g. 0.1)
--max-scale <FLOAT> Maximum zoom factor (e.g. 100.0)
--scale-step <FLOAT> Zoom step per scroll notch (e.g. 0.1)
--filter-method <METHOD> Scaling filter: nearest, triangle, catmull-rom, gaussian, lanczos3
--log-level <LEVEL> Log level: error, warn, info, debug, trace
-h, --help Print help

Default keybindings

Key Action
q Quit
[ Rotate 90° counter-clockwise
] Rotate 90° clockwise
Delete Delete current file from disk and advance

Acknowledgements

Thanks to Harry Jeffery for creating imv. It is the reference for what a minimal Wayland image viewer should be, and the direct inspiration for this project.

About

a minimal, fast image viewer for Wayland, written in Rust

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages

0