Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/artemsen/swayimg
Image viewer for Wayland
https://github.com/artemsen/swayimg
Last synced: 3 months ago
JSON representation
Image viewer for Wayland
- Host: GitHub
- URL: https://github.com/artemsen/swayimg
- Owner: artemsen
- License: mit
- Created: 2020-08-03T14:21:48.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-08-03T15:17:57.000Z (3 months ago)
- Last Synced: 2024-08-03T17:12:56.700Z (3 months ago)
- Language: C
- Homepage:
- Size: 2.23 MB
- Stars: 333
- Watchers: 8
- Forks: 26
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Swayimg: image viewer for Wayland
Lightweight image viewer for Wayland display servers.
In a [Sway](https://swaywm.org) compatible mode, the viewer creates an "overlay"
above the currently active window, which gives the illusion that you are opening
the image directly in a terminal window.![Viewer mode](https://raw.githubusercontent.com/artemsen/swayimg/master/.github/viewer.png)
![Gallery mode](https://raw.githubusercontent.com/artemsen/swayimg/master/.github/gallery.png)## Supported image formats
- JPEG (via [libjpeg](http://libjpeg.sourceforge.net));
- JPEG XL (via [libjxl](https://github.com/libjxl/libjxl));
- PNG (via [libpng](http://www.libpng.org));
- GIF (via [giflib](http://giflib.sourceforge.net));
- SVG (via [librsvg](https://gitlab.gnome.org/GNOME/librsvg));
- WebP (via [libwebp](https://chromium.googlesource.com/webm/libwebp));
- HEIF/AVIF (via [libheif](https://github.com/strukturag/libheif));
- AV1F/AVIFS (via [libavif](https://github.com/AOMediaCodec/libavif));
- TIFF (via [libtiff](https://libtiff.gitlab.io/libtiff));
- EXR (via [OpenEXR](https://openexr.com));
- BMP (built-in);
- PNM (built-in);
- TGA (built-in).## Usage
`swayimg [OPTIONS]... [FILE]...`
See `man swayimg` for details.
Examples:
- View multiple files:
```
swayimg photo.jpg logo.png
```
- Start slideshow for all files (recursively) in the current directory in random order:
```
swayimg --slideshow --recursive --order=random
```
- View using pipes:
```
wget -qO- https://www.kernel.org/theme/images/logos/tux.png | swayimg -
```
- Loading stdout from external commands:
```
swayimg "exec://wget -qO- https://www.kernel.org/theme/images/logos/tux.png" \
"exec://curl -so- https://www.kernel.org/theme/images/logos/tux.png"
```
- View all images from the current directory in gallery mode:
```
swayimg --gallery
```## Configuration
The viewer searches for the configuration file with name `config` in the
following directories:
- `$XDG_CONFIG_HOME/swayimg`
- `$HOME/.config/swayimg`
- `$XDG_CONFIG_DIRS/swayimg`
- `/etc/xdg/swayimg`Sample file is available [here](https://github.com/artemsen/swayimg/blob/master/extra/swayimgrc) or locally `/usr/share/swayimg/swayimgrc`.
See `man swayimgrc` for details.
## Install
[![Packaging status](https://repology.org/badge/tiny-repos/swayimg.svg)](https://repology.org/project/swayimg/versions)
List of supported distributives can be found on the [Repology page](https://repology.org/project/swayimg/versions).
Arch users can install the program from the extra repository: [swayimg](https://archlinux.org/packages/extra/x86_64/swayimg) or from AUR [swayimg-git](https://aur.archlinux.org/packages/swayimg-git) package.
## Build
The project uses Meson build system:
```
meson setup _build_dir
meson compile -C _build_dir
meson install -C _build_dir
```