feh Changelog

What's new in feh 3.3

Dec 5, 2019
  • New option --class allows setting the X11 class hint per feh instance (patch by Olof-Joachim Frahm)
  • Improve handling of NULL returns from Imlib2 calls (patch by Ben Boeckel)
  • Fix compilation with libcurl < v7.32

New in feh 3.2.1 (Jul 23, 2019)

  • Use --no-fehbg option in ~/.fehbg. This fixes cases where an X11 setup change may inadvertently alter the commandline stored in .fehbg.
  • Fix insufficient error handling when updating ~/.fehbg. Previously, a stat() error may have caused .fehbg to be update with excessive file permissions (patch by Tobias Stoeckmann)
  • Fix TOCTTOU when setting the file mode of ~/.fehbg (patch by Tobias Stoeckmann)

New in feh 3.1.2 (Feb 13, 2019)

  • Fix missing filenames in ~/.fehbg when using --bg-* on directories and/or with --randomize
  • Fix repeated --slideshow-delay/-D option not properly overriding the 'start paused' flag
  • Fix repeated --info option not properly overriding the 'draw info' flag

New in feh 3.1.1 (Dec 17, 2018)

  • Decrease libcurl timeout from indefinite to 30 minutes. This should be sufficient even for use cases with unusually high timeouts (just in case anyone wants to do interplanetary slideshows), while at the same time avoiding stalls in unattended slideshows when encountering temporary network issues.
  • Handle SIGINT/SIGTERM/SIGQUIT signals while loading images using libcurl. Previously, signals were ignored during a (possibly slow) libcurl network transfer, which was not intended behaviour.

New in feh 3.1 (Nov 23, 2018)

  • Running "feh --start-at .../file.jpg" without specifying images, directories or filelists to load is now equivalent to running "feh --start-at .../file.jpg $(dirname .../file.jpg)". This way, it is possible to view a specific file and browse all other files in the corresponding directory. This is especially useful when starting feh from file managers.
  • Introduce fuzzy matching in --start-at: If the specified path is not found in the file list, feh now resorts to comparing basenames (i.e., file names without the directory components). This allows calls like "feh --start-at cat.jpg ~/Pictures", which led to a file not found error in previous versions.
  • Respect -j / --output-dir when using save_image or save_filelist actions.

New in feh 3.0 (Nov 14, 2018)

  • Remove deprecated webcam scripts (feh-cam and gen-cam-menu)
  • Remove deprecated collage mode (-c/--collage)
  • Remove deprecated option --cycle-once (use --on-last-slide=quit instead)
  • Remove deprecated option --menu-bg
  • Change default save_filelist key from "f" to "L" (mnemonic: fileList)
  • Change default toggle_fullscreen key from "v" to "f" as this is also used by mplayer, mpv and similar
  • flip and rotation (keys "", "|", and "_") no longer change the underlying file. This leaves delete ("Ctrl+Delete") as the only destructive action which is enabled by default
  • Add option --edit, which makes flip and rotation change the underlying file as well as the displayed image. This was the default behaviour in feh 1.x and 2.x

New in feh 2.28.1 (Nov 8, 2018)

  • Do not ignore quit signals (SIGTERM, SIGINT, SIGQUIT) during preload
  • Add missing EXIF orientations 2, 4, 5, and 7 (when built with exif=1, patch by Olof-Joachim Frahm)
  • Improve randomness on non-glibc systems

New in feh 2.27.1 (Jul 22, 2018)

  • Fix feh occasionally becoming unresponsive when asked to terminate via SIGINT/SIGQUIT/SIGTERM
  • Fix --keep-zoom-vp issues introduced in 2.27

New in feh 2.26.2 (May 14, 2018)

  • Show correct filelist position in windows opened from thumbnail mode. Note that navigation is still not supported in those windows
  • Improve support for key input from stdin
  • Do not push menus off the screen when hitting screen limits

New in feh 2.18.3 (Apr 5, 2017)

  • Fix double-free/OOB-write in E17 IPC. This only affects the background setting options and requires a malicious X11 app to run alongside feh and pretend to be an E17 window manager. (patch by Tobias Stoeckmann)
  • Fix image-specific format specifiers not being updated correctly in thumbnail mode window titles
  • Fix memory leak when closing images opened from thumbnail mode
  • Fix a possible out of bounds read caused by an unterminated string when using --output to save images in long paths. (patch by Tobias Stoeckmann)
  • Fix out of bounds read/write when handling empty or broken caption files. (patch by Tobias Stoeckmann)
  • Fix memory leak when saving a filelist or image whose target filename already exists. (patch by Tobias Stoeckmann)

New in feh 2.18.1 (Jan 25, 2017)

  • Fix image-specific format specifiers not being updated correctly (e.g. %z not displaying the correct zoom value after zooming in / out)

New in feh 2.15 (Apr 11, 2016)

  • Patch by William Woodruff: Add --insecure option to disable HTTPS certificate checks
  • Patch by guraga: Add --no-recursive option to disable recursive directory expansion. Note that --no-recursive is the default behaviour of feh. This option is mostly useful to override a --recursive set in a theme or shell alias
  • Patch by Richard Molitor: Improve --scale-down in tiling environments. This fixes flickering when changing images at the cost of slightly less apaptive scale-down behaviour: Window size changes are now only processed when the active image is changed
  • --action and --action[1..9] now support action titles (e.g. --action '[some title]some-command %F'), which are displayed instead of the specified shell command. Note that the title must not start with a space. Titles starting with a space are treated as part of of the command so that actions like '[ -L %F ] && foo' still work

New in feh 2.14.2 (Feb 22, 2016)

  • make test: Ignore results on arm and mips since they expose a bug in Imlib2 1.4.7 and/or giflib 5.1.2. Note that due to this bug, feh may be unable to display gif images. x86 and amd64 are also affected. Again, see for more information
  • -f / --filelist: Do not print useless error message when a correct filelist file is specified
  • -f / --filelist: Fix bug in "-" / "/dev/stdin" handling affecting feh running in ksh and possibly other environments

New in feh 2.9.1 (Feb 15, 2013)

  • Set correct window dimensions on any Xinerama screen, not just the first one (active screen is determined by current pointer location).

New in feh 2.8 (Dec 27, 2012)

  • Do not apply --scale-down to the thumbnail window. It will be applied to windows opened from this, though.
  • Patch by Rob Cornish: Respect --image-bg when setting a wallpaper (bg-center and bg-max)
  • Add %V (feh process ID) format specifier
  • Fix delete not working on last image with --cycle-once
  • Treat quick, low-offset drags (1px or 2px move in

New in feh 2.7 (Oct 16, 2012)

  • Add --min-dim and --max-dim options to only process images with certain dimensions

New in feh 2.6.3 (Sep 28, 2012)

  • Fix segfault when doing lossless mirror/rotate and jpegexiforient is not present

New in feh 2.6.2 (Sep 27, 2012)

  • Set EXIF orientation tag to 1 ("0,0 is top left" aka normal) after running jpegtran. Previously, when doing a lossless rotate, the image was rotated but the corresponding EXIF tag not updated, resulting in wrong image display in programs aware of this EXIF tag.
  • Fix spelling in feh(1)
  • Compile debug builds with -O0

New in feh 2.6.1 (Sep 14, 2012)

  • Fix freedesktop.org Thumbnail Managing Standard implementation: when running feh on the current working directory, '/path/to/./image.png' was used for thumbnail name generation. Now it is always '/path/to/image.png'
  • Show error message if lossless rotate / flip failed on non-JPEG image
  • Show error message if -O / -o failed to save image
  • Show error message if load failed and magick is disabled (was broken by feh 2.4)

New in feh 2.6 (Aug 29, 2012)

  • Fixes and additions in EXIF tag support.
  • ImageMagick (convert) is now disabled by default; use --magick-timeout to enable it.
  • The format specifiers %o (image offset), %r (image rotation), and %z (image zoom) were added.
  • The deprecated --menu-style option was removed.
  • --reload now accepts non-decimal values and a bug when using --filelist with .txt files was fixed.
  • Also, --reload and --slideshow-delay are no longer mutually exclusive.
  • When opening HTTP URLs, %f and %F will now return the URL instead of the temporary local filename.

New in feh 2.4 (Mar 7, 2012)

  • This version has limited support for all file types supported by ImageMagick, using the convert binary to load them (if available).
  • The behaviour of --quiet and --verbose was adjusted to the documentation.
  • The new %S and %P format specifiers can be used to print the image size / number of pixels in human readable form with a suffix.

New in feh 2.1 (Nov 3, 2011)

  • This version fixes handling of images with very long names (mostly from HTTP URLs).
  • It adds support for tiling window managers by re-applying --scale-down every time the window is resized.

New in feh 2.0 (Oct 11, 2011)

  • The button options -0 to -9 are no longer supported; use the new buttons configuration file instead.
  • The --index-{dim,name,size} options have also been removed; use format strings with the new --index-info option instead.
  • The background setting options now accept multiple filenames, so for multimonitor setups, you can specify one file per screen.
  • A new %S (size in kB) format specifier has been added, and in thumbnail mode, you can now run actions on the currently-selected thumbnail.
  • feh can now be compiled with stat64=1 to support CIFS shares mounted from 64bit hosts on 32bit machines.

New in feh 1.16.2 (Sep 27, 2011)

  • This version fixes a high memory consumption issue when using --reload with HTTP and two bugs related to --title-font.

New in feh 1.16.1 (Sep 13, 2011)

  • This version fixes image reload issues introduced in 1.16. Most notably, the < and > keys work as expected again.

New in feh 1.15.1 (Aug 17, 2011)

  • This version fixes a segmentation fault when clicking on a menu item introduced in 1.15.

New in feh 1.15 (Aug 15, 2011)

  • This version fixes various bugs related to the themes file, --reload, and saving/deleting images.
  • It also adds the _ and | keys for lossless image flipping and mirroring. Alt+Up/Down/... was added for pagewise image movement.
  • It is now possible to create keybindings using multiple modifiers.

New in feh 1.14.1 (May 20, 2011)

  • This version fixes compilation with curl=0 and makes the zoom_default key work properly when using the --geometry option.

New in feh 1.14 (May 12, 2011)

  • Thumbnail mode can now be controlled with keys: you can use next/prev to select an image and the render key to open it.
  • When reading a directory, feh now reads the files in alphabetical order instead of a seemingly random order by default.
  • This release also includes a bunch of bugfixes.

New in feh 1.13 (Apr 26, 2011)

  • The --bg options are now Xinerama-aware. That is, they set the image in the respective mode (scale/fill/max/center) on each Xinerama screen.
  • Use --no-xinerama to disable this. For convenience, feh will now show all images in the current directory when invoked without file arguments.
  • The --force-aliasing option was added with "A" as toggle.
  • Sending SIGUSR1 or SIGUSR2 in multiwindow mode reloads all imeges.
  • Unloadable images with image-related escapes (%h etc) in --title no longer make feh segfault.
  • The reload mechanism now immediately works (it used to take two tries).

New in feh 1.12 (Mar 14, 2011)

  • Add --zoom fill as equivalent for --auto-zoom
  • Add --zoom max (zooming like in --bg-max)
  • --menu-style is now deprecated
  • http images are now viewed using libcurl, not wget (thanks to talisein) This adds libcurl as dependency, and removes the wget recommendation
  • Slight build system change: make now has flags, e.g. "make xinerama=0 debug=1". By default feh is compiled with xinerama and libcurl support enabled, see README.
  • Remove builtin http client (--builtin) * Fix compilation issues with libpng 1.5.1

New in feh 1.11.2 (Feb 10, 2011)

  • Use wget --no-clobber to prevent TOCTTOU-based hole allowing a well-informed attacker to rewrite arbitrary user files with images. The attacker needs to know feh's PID and the URL the user gave it. It is still possible for an attacker to _create_ arbitrary files via the same hole.

New in feh 1.11.1 (Jan 27, 2011)

  • Show correct image dimensions in for cached thumbnails
  • Allow commandline options to override those set in a theme
  • Remove support for FEH_OPTIONS (was deprecated >5 years ago)
  • Restrict available modifiers to Control/Mod1/Mod4

New in feh 1.11 (Jan 24, 2011)

  • Patch by Pascal Bleser: Use getaddrinfo for builtin http client, this enables IPv6 support
  • Fix zooming when --scale-down is used
  • The themes are now read from ~/.config/feh/themes (BC for .fehrc exists)
  • Key bindings can now be configured via ~/.config/feh/keys
  • Removes --rcpath, use XDG_CONFIG_HOME instead
  • Increase movement steps for Ctrl+Left etc.
  • Make in/out zoom use equal zoom ratio

New in feh 1.10.1 (Dec 5, 2010)

  • Partially fix --scale-down behaviour (zooming is still broken)
  • Fix buffer overflow when using --draw-actions
  • Fix segfaults after trying to load several unloadable images
  • Fix fehrc created by feh (contined escape errors)

New in feh 1.10 (Oct 8, 2010)

  • --bg-seamless has been replaced by --bg-max (like --bg-fill but with borders), which should be way more useful.
  • It is now possible to display arbitrary information in the image by using the --info option.
  • Minor workarounds and improvements for scrolling and Xinerama handling have been made.
  • This is also the first release in which the graphical (X11) parts of feh have been tested in a number of ways.
  • The test scripts and test images are included in the archive (and are the reason why it is so big compared to the previous release).

New in feh 1.9 (Aug 25, 2010)

  • --scale-down now somewhat works with tiling window managers.
  • Zooming via keyboard has seen large improvements and can now also be done by pressing the Up/Down keys.
  • Image moving is now possible with CTRL + Arrow Keys.
  • A few short option aliases for long-only options were added.
  • The --menu-border option was removed because it is extremely useless.
  • A few image menu background images were also removed.

New in feh 1.8 (Jun 26, 2010)

  • This release addresses a security issue with --wget-timestamps, which passed unescaped URLs to a system() call and thus allowed arbitrary code execution.
  • It also disables fullscreen mode for the --thumbnail window (but allows the setting for the images opened from that window) and disables filelist saving for thumbnail mode, which caused undefined behaviour if the user removed a file before saving. --font now sets the global font, and were improved, and feh now no longer adds "?something" to URLs before downloading them.

New in feh 1.7 (Jun 14, 2010)

  • Fix segfault in Thumbnail mode when trying to open a no longer existing image (e.g. when the file was renamed by a previous action)
  • Set a negative slideshow-delay to start the slideshow in paused mode
  • Remove Shift+Key bindings, they were doing the same as Nothing+Key anyways. Plus, I might want to bind Shift + < already used key > to other stuff in the future
  • Documentation improvements
  • Remove undocumented hjkl menu keys. Most of the menu options can also be accessed directly with keys, plus the number of non-qwerty users (which have no use for these shortcuts) is growing.
  • Draw a nice little message when in caption editing mode with empty caption (to indicate that caption editing is actually active) * caption mode: Automatically create caption directory if it doesn't exist * Slideshow mode: SIGUSR1 = next image, SIGUSR2 = previous image