feh.finalrewind.org / archive

feh v3.10.3


feh-3.10.3.tar.bz2 (signature)

  • Fix feh not respecting aspect ratio of thumbnails that are smaller than --thumb-width and --thumb-height
  • Fix --no-recursive behaving like --recursive (Patch by GitHub user wwsmiff, thanks!)
  • Fix rotation by 180° corrupting images (Patch by GitHub user wwsmiff, thanks!)
  • Speed up --sort=size and --sort=mtime by caching stat(2) calls (Patch by Naïm Favier, thanks!)

feh v3.10.2


feh-3.10.2.tar.bz2 (signature)

  • Fix crash in right-click / menu rendering code on some distributions (patch by Ametov Imil)

feh v3.10.1


feh-3.10.1.tar.bz2 (signature)

  • Do not call signal-unsafe functions within signal handlers

feh v3.10


feh-3.10.tar.bz2 (signature)

  • Add --sort=none option to un-set sort modes specified earlier
  • Improve error messages for Imlib2 ≥ 1.8
  • Fix build with clang 16. (Patch by orbea)
  • Fix tests when building with magic=1

feh v3.9.1


feh-3.9.1.tar.bz2 (signature)

  • Set libcurl user agent to "feh/3.9.1". Previously, feh did not send a user agent.

feh v3.9


feh-3.9.tar.bz2 (signature)

  • Fix compilation on macOS by defining _DARWIN_C_SOURCE for mkdtemp and mkstemps. (Patch by Ryan Schmidt)
  • Remove magic byte check before passing an image to Imlib2. This check was introduced in feh 3.6 to work around an issue with Imlib2 being slow to determine image loadability in some cases https://phab.enlightenment.org/T8739. By now, an Imlib2 version without this issue should be available in all recent distributions, so the check in feh is no longer required. For a slight speed-up, or to use feh with an affected Imlib2 version (1.6.x or 1.7.0), compile feh with magic=1. In this case, feh will use libmagic to determine whether a file is an image, and only pass images to Imlib2. (Patch by Christian Hesse)
  • Fix crash (segmentation fault due to null pointer dereference) when toggling fullscreen mode while moving the cursor.
  • Note that feh no longer supplies its own getopt_long function. getopt_long is provided by a wide range of libc implementations, so there is no need for feh to duplicate it. (Patch by Guilherme Janczak)

feh v3.8


feh-3.8.tar.bz2 (signature)

  • Add button ID "0" to cursor bindings. This pseudo-button is triggered whenever feh observes a cursor movement. It does not have a default binding.
  • Support hexadecimal IDs in --window-id
  • Disable --auto-rotate in feh builds compiled with Imlib2 1.7.5 or later. Imlib2 1.7.5 introduces transparent EXIF-based image orientation adjustment, so --auto-rotate is no longer needed (and would cause mis-orientation of images, as Imlib2 has already adjusted the orientation).

feh v3.7.2


feh-3.7.2.tar.bz2 (signature)

  • Fix crash when running feh without stdin file descriptor

feh v3.7.1


feh-3.7.1.tar.bz2 (signature)

  • Support JPEG XL files when using imlib2-jxl (patch by Alistair)
  • Fix support for images smaller than 16 bytes (patch by David Buchanan)
  • Fix some out of bounds reads (patches by Tobias Stoeckmann)

feh v3.7


feh-3.7.tar.bz2 (signature)

  • Use compact representation instead of key-value pairs for common EXIF data (only applies when compiling feh with exif=1)
  • Add --window-id windowid option (draw to an existing window)
  • Add --zoom-step percent option (specify zoom step size)
  • Pass gopher:// and gophers:// URLs to libcurl
  • Fix --reload / --auto-reload reloading the wrong directory when using --start-at and no file arguments or filelists have been specified
  • Fix Ctrl+key causing unintended behaviour when controlling feh via stdin
  • Fix high CPU usage when closing stdin after starting feh from a terminal

feh v3.6.3


feh-3.6.3.tar.bz2 (signature)

  • Fix --start-at not handling URL-encoded file:/// paths properly. Notably, this also fixes feh not displaying images with spaces or unicode elements in their path when opened from a file manager.

feh v3.6.2


feh-3.6.2.tar.bz2 (signature)

  • Fix save_filelist not respecting --output-dir
  • Fix file descriptor leak when attempting to load truncated image files. The issue was introduced in v3.6.

feh v3.6.1


feh-3.6.1.tar.bz2 (signature)

  • Fix excessive memory consumption when showing long-running slideshows with thousands to tens of thousands of images and feh has been compiled with exif=1 (see https://github.com/derf/feh/issues/553)
  • Fix memory leak when showing long-running slideshows with relatively few images and feh has been compiled with exif=1 (ibid.)
  • Fix memory leak when reloading an image and feh has been compiled with exif=1
  • Fix memory leak in --draw-exif
  • Fix memory leak when reloading HTTP files with --no-conversion-cache

feh v3.6


feh-3.6.tar.bz2 (signature)

  • Add flip and rotate options to the menu
  • Improve unloadable image detection time (e.g. for large video files) by checking a file's header before passing it to Imlib2. For rarely used image formats, there is a very small chance that an image which could be loaded by feh 3.5 is reported as unloadable by feh 3.6 due to this change. Set FEH_SKIP_MAGIC=1 to bypass the header check in this case. See https://phab.enlightenment.org/T8739 and https://github.com/derf/feh/issues/505 for details.

feh v3.5


feh-3.5.tar.bz2 (signature)

  • Enable --version-sort on systems without strverscmp support. This works by bundling the strverscmp of musl libc with feh and using it when feh is compiled without the verscmp flag (i.e., when the system libc does not provide the verscmp function). Patch by Tim van der Molen
  • Add %a format specifier (slideshow state: "playing" / "paused")
  • Fix crashes when combining --reload and --multiwindow

feh v3.4.1


feh-3.4.1.tar.bz2 (signature)

  • Fix lossless JPG rotate not being lossless when using feh with Imlib2 v1.6 or later

feh v3.4


feh-3.4.tar.bz2 (signature)

  • Images loaded via HTTPS/curl, ImageMagick, and dcraw are now cached by default to decrease image load time on subsequent slideshow passes. Caching is disabled when using --reload and can also be disabled with the new --no-conversion-cache option. Suggestion and initial patch by Awal Garg.
  • Handle SIGINT/SIGTERM/SIGQUIT signals while loading images using libcurl < v7.32. Patch by @c99pedant.
  • "feh --start-at URL" now loads a single-image slideshow displaying URL. This allows feh.desktop to handle URLs as well as ordinary files. file:/// URLs are treated as local files, so "feh --start-at file:///..." without filelist arguments behaves just like "feh --start-at ..." (i.e., feh will load the entire directory and start the slideshow at ...)
  • Fix a memory leak when repeatedly cycling through slideshows containing images loaded via libcurl, ImageMagick or dcraw.

feh v3.3


feh-3.3.tar.bz2 (signature)

  • 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

feh v3.2.1


feh-3.2.1.tar.bz2 (signature)

  • 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)

feh v3.2


feh-3.2.tar.bz2 (signature)

  • Build feh with inotify=1 to automatically reload changed files in slideshow mode. Introduces the inotify build flag and the --auto-reload option.
  • Reload current image(s) when receiving SIGUSR1 or SIGUSR2 in single-image slideshows or in multiwindow mode

feh v3.1.3


feh-3.1.3.tar.bz2 (signature)

  • Fix missing filename in ~/.fehbg when using --no-xinerama on a feh binary compiled with xinerama=1. This issue was introduced in v3.1.2.

feh v3.1.2


feh-3.1.2.tar.bz2 (signature)

  • 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

feh v3.1.1


feh-3.1.1.tar.bz2 (signature)

  • 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.

feh v3.1


feh-3.1.tar.bz2 (signature)

  • 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.

feh v3.0


feh-3.0.tar.bz2 (signature)

  • 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

feh v2.28.1


feh-2.28.1.tar.bz2 (signature)

  • 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

feh v2.28


feh-2.28.tar.bz2 (signature)

  • Decrease loading time for RAW images by utilizing dcraw to display the embedded JPEG preview (patch by @ulteq)
  • Rename --magick-timeout to --conversion-timeout. --magick-timeout is now deprecated and will be removed in a future release
  • Fix unintened aliasing in rotated images whose rotation is not a multiple of 90 degrees (patch by @ulteq)
  • New option: --on-last-slide=hold|quit|resume. hold will cause feh to stop advancing beyond the last slide (patch by @ulteq), quit replaces --cycle-once (which is now deprecated), and resume is the default (continue at the first image)

feh v2.27.1


feh-2.27.1.tar.bz2 (signature)

  • Fix feh occasionally becoming unresponsive when asked to terminate via SIGINT/SIGQUIT/SIGTERM (based on a patch by @giladogit)
  • Fix --keep-zoom-vp issues introduced in 2.27 (patch by @ulteq)

feh v2.27


feh-2.27.tar.bz2 (signature)

  • Fix size_to_image ("w") command when both --scale-down and --keep-zoom-vp are enabled
  • Fix --auto-zoom not being triggered on window resize events when --scale-down is enabled
  • Fix --auto-zoom conflicting with manual zoom
  • Prevent --zoom <percent> from blocking --scale-down in fullscreen / fixed geometry mode
  • Prevent --keep-zoom-vp from blocking the dynamic window resizing mechanism
  • Prevent automatic recalculation of the zoom ratio when --keep_zoom_vp is enabled
  • All patches provided by @ulteq. Thanks a lot!

feh v2.26.4


feh-2.26.4.tar.bz2 (signature)

  • Correctly save --bg-max in ~/.fehbg (patch by Sebastian Bickerle)

feh v2.26.3


feh-2.26.3.tar.bz2 (signature)

  • Properly escape --image-bg argument in ~/.fehbg (broken in 2.26.1)

feh v2.26.2


feh-2.26.2.tar.bz2 (signature)

  • 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

feh v2.26.1


feh-2.26.1.tar.bz2 (signature)

  • Restore pre-2.21 ~/.fehbg behaviour. This fixes nondeterministic wallpaper setting when using --bg-* --randomize, issues when specifying --theme both in ~/.fehbg and on the commandline, and possibly other edge cases
  • Fix /tmp being cluttered with temporary ImageMagick files when using --magick-timeout and a conversion takes longer than allowed

feh v2.26


feh-2.26.tar.bz2 (signature)

  • Save absolute file paths in ~/.fehbg, similar to the behaviour prior to feh 2.21
  • Add %g (window dimensions) and %Z (precise zoom level) format specifiers
  • Improve -z/--randomize randomness

feh v2.25.1


feh-2.25.1.tar.bz2 (signature)

  • Fix compilation issues when using CFLAGS=-m64 on some gcc versions
  • Re-render current image when toggle_fixed_geometry is input

feh v2.25


feh-2.25.tar.bz2 (signature)

  • Add --version-sort option to enable natural sorting of file and directory names. This requires a libc with strverscmp support, which is a non-POSIX GNU extension. Use the new build flag verscmp=0 to disable this feature on systems which do not ship strverscmp (patch by ulteq)
  • Allow arbitrary X11 colors as -B/--image-bg argument (patch by ulteq)
  • Improve --image-bg support and transparency handling in --bg-* mode
  • Respect --geometry settings in --bg-fill mode
  • Add keybinding toggle_auto_zoom (default Z) to toggle --auto-zoom
  • Fix filelists specified by -f/--filelist not being reloaded when using --reload

feh v2.24


feh-2.24.tar.bz2 (signature)

  • Improve performance when using --{max,min}-dimension in slideshow mode (patch by ulteq)
  • Fix crash when using %m format specifier in slideshow mode (introduced in feh 2.23.1)

feh v2.23.2


feh-2.23.2.tar.bz2 (signature)

  • Fix support for nested quotes in .confeg/feh/themes

feh v2.23.1


feh-2.23.1.tar.bz2 (signature)

  • The Makefile no longer honors CPPFLAGS and instead consistently uses CFLAGS for user-provided include paths
  • Fix %u format specifier in multiwindow and list modes (patch by ulteq)
  • Minor performance improvements (patches by ulteq)
  • Stability improvements when using --magick-timeout (patch by ulteq)

feh v2.23


feh-2.23.tar.bz2 (signature)

  • Fix broken thumbnail/index windows when using --scale-down
  • Use Imlib2 in-memory image cache (default cache size: 4MiB). This allows for significant performance improvements especially in small slideshows
  • Add --cache-size option to set Imlib2 image cache size

feh v2.22.2


feh-2.22.2.tar.bz2 (signature)

  • Fix HTTPS certificate errors on some systems (broken in 2.22)

feh v2.22.1


feh-2.22.1.tar.bz2 (signature)

  • Allow ~/.fehbg to be sourced (instead of executed) from other shell scripts again (broken in 2.22)

feh v2.22


feh-2.22.tar.bz2 (signature)

  • Add support for CURL_CA_BUNDLE environment variable when loading images via HTTPS
  • Fix ~/.fehbg not being updated when setting a wallpaper via menu (broken in 2.21)

feh v2.21


feh-2.21.tar.bz2 (signature)

  • Add toggle_fixed_geometry (g) key binding to toggle window auto-resize
  • Improve control via terminal input
  • Fix crash (segmentation fault) when using feh -O in non-index mode
  • Fix --force-aliasing (and possibly other options) missing from ~/.fehbg when using them for background setting

feh v2.20


feh-2.20.tar.bz2 (signature)

  • Fix clang/gcc warnings (Patches by orbea)
  • Add support for control via terminal input. feh will read key presses from the controlling terminal and handle them like X11 key presses inside the feh window. Note that at the moment, only lower / upper case ASCII letters and a very small set of additional keys are supported.
  • Fix broken ImageMagick support (see --magick-timeout) when using some ImageMagick versions (GitHub #323)
  • Remove images from the filelist if they were removed by executing a user-defined action (GitHub #322)

feh v2.19.3


feh-2.19.3.tar.bz2 (signature)

  • Save geometry data in .fehbg when setting a wallpaper with --geometry
  • Fix Imlib2 developer warning and improve out-of-memory error message when using --thumbnails / --index on large directories

feh v2.19.2


feh-2.19.2.tar.bz2 (signature)

  • Show ImageMagick loader errors unless --quiet is specified
  • Fix crash when handling certain media keys (introduced in 2.19.1)

feh v2.19.1


feh-2.19.1.tar.bz2 (signature)

  • Fix Shift modifier not being recognized for tab, space and similar keys. This lead to keybindings like Shift+Tab or Shift+Space being parsed as if the Shift modifier had not been specified

feh v2.19


feh-2.19.tar.bz2 (signature)

  • Follow the freedesktop.org Thumbnail Managing Standard by saving thumbnails in ${XDG_CACHE_HOME}/thumbnails (defaulting to ~/.cache/thumbnails) instead of ~/.thumbnails (patch by Olof-Joachim Frahm)
  • Install app icons with the correct permissions of 644
  • Documentation improvements

feh v2.18.3


feh-2.18.3.tar.bz2 (signature)

  • 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)

feh v2.18.2


feh-2.18.2.tar.bz2 (signature)

  • Fix crash when using both --thumbnails and --title. This bug was introduced in v2.18.1.

feh v2.18.1


feh-2.18.1.tar.bz2 (signature)

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

feh v2.18


feh-2.18.tar.bz2 (signature)

  • Move README to README.md
  • New key binding: ! / zoom_fill (zoom to fill window, may cut off image parts)
  • Only for builds with exif=1: Disable EXIF-based auto rotation by default, add --auto-rotate option to enable it (Patch by Elliot Wolk)

feh v2.17.1


feh-2.17.1.tar.bz2 (signature)

  • Fix compilation on systems where HOST_NAME_MAX is not defined, such as FreeBSD (patch by Niclas Zeising)

feh v2.17


feh-2.17.tar.bz2 (signature)

  • Install feh icon (both 48x48 and scalable SVG) to /usr/share/icons when running make install app=1
  • Fix --sort not being respected after the first reload when used in conjunction with --reload
  • All key actions can now also be bound to a button by specifying them in .config/feh/buttons. However, note that button actions can not be bound to keys.
  • Rename menu key action to toggle_menu, prev to prev_img and next to next_img. The old names are still supported, but no longer documented.
  • feh now also sets the X11 _NET_WM_PID and WM_CLIENT_MACHINE window properties

feh v2.16.2


feh-2.16.2.tar.bz2 (signature)

  • Also support in-place editing for images loaded via libcurl or imagemagick. Results will not be written back to disk in this case.

feh v2.16.1


feh-2.16.1.tar.bz2 (signature)

  • Fix crash when trying to rotate a JPEG image without having jpegtran / jpegexiforient installed
  • Handle failing fork() calls gracefully

feh v2.16


feh-2.16.tar.bz2 (signature)

  • Fix invalid key/button definitions mis-assigning keys/buttons to other actions
  • Add sort mode --sort dirname to sort images by directory instead of by name. For example, where a normal recursive run will show images in the order foo/a.jpgfoo/bar/baz.jpgfoo/fnord.jpg, a dirname sort will result in foo/a.jpgfoo/fnord.jpgfoo/bar/baz.jpg (Patch by Sung Pae)
  • Add navigation keys next_dir (]) and prev_dir ([) to jump to the first image of the nex/previous directory (Patch by Sung Pae)

feh v2.15.4


feh-2.15.4.tar.bz2 (signature)

  • Fix toggle_filenames key displaying wrong file numbers in multiwindow mode

feh v2.15.3


feh-2.15.3.tar.bz2 (signature)

  • Rescale image when resizing a window and --scale-down or --geometry is active. This largely fixes the --scale-down issues introduced in 2.15. However, note that --scale-down still introduces a fixed window size which will not be updated when changing images (as was the case in feh < 2.15). This may or may not be fixed in the future.

feh v2.15.2


feh-2.15.2.tar.bz2 (signature)

  • Fix --keep-zoom-vp not keeping the viewport x/y offsets (broken by 2.15)

feh v2.15.1


feh-2.15.1.tar.bz2 (signature)

  • Fix w (size_to_image) key not updating window size when --scale-down or --geometry is active

feh v2.15


feh-2.15.tar.bz2 (signature)

  • 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

feh v2.14.2


feh-2.14.2.tar.bz2 (signature)

  • 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 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=813729 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

feh v2.14.1


feh-2.14.1.tar.bz2 (signature)

feh v2.14


feh-2.14.tar.bz2 (signature)

  • Add --xinerama-index option for background setting (patch by James Knight)
  • When removing the last image in slidsehow mode, stay on the last (previously second-to-last) image (patch by Lior Shiponi)
  • Allow --sort and --randomize to override each other (most recently specified option wins) instead of always preferring --sort
  • Thumbnail mode: Mark image as processed when executing an action (--action) by clicking on an image
  • It is now possible to override feh's idea of the active xinerama screen using the --xinerama-index option
  • Remove (undocumented) feature allowing to override feh's idea of the active xinerama screen by setting the XINERAMA_SCREEN environment variable

feh v2.13.1


feh-2.13.1.tar.bz2 (signature)

  • Fix --scale-down breaking image centering in fullscreen mode

feh v2.13


feh-2.13.tar.bz2 (signature)

  • print --verbose output to stderr
  • Show progress when using --verbose and --loadable / --unloadable
  • ~/.fehbg is now a shell script and can be executed directly (sourcing it still works)
  • --max-dimension: ignore width/height limit of 0 pixels
  • Do not re-render images when toggling keep_zoom_vp
  • feh/themes: Support quoting with '' too (previously, only "" worked)
  • Fix potential out of bounds array access in EXIF code (when built with exif=1)

feh v2.12.1


feh-2.12.1.tar.bz2 (signature)

  • Handle missing HOME in environment
  • Fix memory leak when a slideshow contains many unloadable images
  • Fix memory leak when --prelaod removes files from the filelist

feh v2.12


feh-2.12.tar.bz2 (signature)

  • feh-cam and gen-cam-menu are no longer installed by default. Use make install cam=1 to install them or make uninstall cam=1 && make install cam=0 to remove them permanently
  • feh no longer depends on giblib. Instead, the relevant parts of the giblib source were imported into the feh source. Rationale: giblib is unmaintained and, as far as I know, only used by three projects (one of which is feh). There is at least one known bug in it, and as I do not have the time to take over giblib development, importing the library seems to be the best solution.
  • Fix/improve --randomize for short filelists (closes #151)
  • Fix a buffer overflow in the printf implementation when handling unknown format specifiers (affects --action, --customlist, --index-info, --info, --thumb-title and --title)
  • Update help (if built with help=1)

feh v2.11


feh-2.11.tar.bz2 (signature)

  • Patch by Michael Vorburger: Fix erroneous free() in case of failed scandir (closes #140, #147)
  • Patch by rangerer: --randomize: re-randomize after list is through (closes #154)
  • When setting a wallpaper from a URL, do not try to store it as absolute path in .fehbg (closes #153)
  • Add --scroll-step <px> option to change scroll_{up,left,down,right} scroll offset in pixels
  • feh(1): Escape %V (interpreted as mdoc macro) (closes debian #745467)
  • Respect --image-bg=checks in fullscreen mode (default remains black) (closes #156)

feh v2.10


feh-2.10.tar.bz2 (signature)

  • Allow non-centered wallpapers using the --geometry option (Patch by Joel Bradshaw)
  • Add ; flag to --info (as in "--info ';echo foo'") to disable info display on startup
  • Partially fix off-by-one pixel error when warping the pointer in the bottom/right window border
  • thumbnail mode: If --action is set, run specified command instead of opening image on click.
  • feh.desktop: Use feh %F since we support multiple files
  • Fix --borderless not working on some 64bit systems (Patch by Brian Mattern)
  • Always use absolute paths in .fehbg

feh v2.9.3


feh-2.9.3.tar.bz2 (signature)

  • Patch by David Gowers: Add %L format code (temporary copy of filelist)
  • Fix buffer overflows in printf implementation (affects --action, --customlist, --index-info, --info, --thumb-title, --title)
  • Fix tests failing when compiled with help=1

feh v2.9.2


feh-2.9.2.tar.bz2 (signature)

  • Fix -F --zoom 100 not working in Gnome+Unity when compiling feh with gcc and enabled optimizations (not -O0)
  • EXIF updates by Dennis Real

feh v2.9.1


feh-2.9.1.tar.bz2 (signature)

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

feh v2.9


feh-2.9.tar.bz2 (signature)

  • Add --keep-zoom-vp option to keep zoom and offsets when switching images (patch by sdaau). Press k to toggle it.
  • Add --sort mtime option (patch by guns)
  • Add a desktop file (installed to share/applications/feh.desktop)
  • Use feh - to read image from stdin
  • Fix Imlib2 and X11 warnings when opening a URL that returned an HTTP error
  • Add button bindings to zoom in / out (patch by sdaau)

feh v2.8


feh-2.8.tar.bz2 (signature)

  • Do not apply --scale-down to the thumbnail window. It will be applied to windows opened from this, though. (GitHub #106)
  • Patch by Rob Cornish: Respect --image-bg when setting a wallpaper (bg-center and bg-max) (GitHub #105)
  • Add %V (feh process ID) format specifier (GitHub #109)
  • Fix delete not working on last image with --cycle-once (GitHub #107)
  • Treat quick, low-offset drags (1px or 2px move in <1 second) as clicks to improve graphics tablet support (GitHub #113)
  • Respect --start-at in thumbnail mode (GitHub #116)
  • Make 'z' (jump_random) work in thumbnail mode as well, fix thumbnail selection roll-over (GitHub #115)

feh v2.7


feh-2.7.tar.bz2 (signature)

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

feh v2.6.3


feh-2.6.3.tar.bz2 (signature)

  • Fix segfault when doing lossles mirror/rotate with jpegexiforient not available (GitHub #100)

feh v2.6.2


feh-2.6.2.tar.bz2 (signature)

  • 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

feh v2.6.1


feh-2.6.1.tar.bz2 (signature)

  • 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)

feh v2.6


feh-2.6.tar.bz2 (signature)

  • Dennis Real: EXIF mode fixes, support for more camera models
  • feh(1): Document behaviour for duplicate key bindings (GitHub #91)
  • menu: simpler background, remove drop shadows
  • Remove --menu-style support (deprecated in 1.12)
  • Allow --slideshow-delay and --reload to be used together
  • New format specifiers:
    • %o x,y image offset relative to top-left window corner
    • %r image rotation
    • %z image zoom
  • Always use file URL as filename when opening http files. (consequence: lossless rotate no longer works for such files)
  • --reload now accepts non-decimal values
  • Fix --filelist trying to load .txt files with imagemagick
  • imagemagick support is now disabled by default, to make feh behaviour less confusing. Set --magick-timeout to a non-negative value to enable it (--magick-timeout 5 for feh-2.5 behaviour)

feh v2.5


feh-2.5.tar.bz2 (signature)

  • Add R, * and / bindings for keypad begin, keypad * and keypad /
  • Try to convert unloadable files with imagemagick for up to 5 seconds
  • Add --magick-timeout option to set imagemagick conversion timeout or disable it altogether
  • Clean up temporary / to-delete files when receiving SIG{INT,TERM,QUIT}
  • Do not scroll past image borders when using key bindings
  • --loadable / --unloadable: indicate result in exit status

feh v2.4


feh-2.4.tar.bz2 (signature)

  • exif-support fixes by Dennis Real
  • format specifier %S now uses the appropriate suffix (B/kB/MB)
  • format specifier %P now prints the number of pixels with k/M suffix, like %S. Printing the program name ("feh") is no longer supported
  • feh --list now uses %S/%P to print image size and amount of pixels
  • make --quiet and --verbose behave more like their documented way, never ignore out of memory errors
  • Use ImageMagick (convert) as loader for unsupported file formats

feh v2.3


feh-2.3.tar.bz2 (signature)

  • Add %F and %N format specifiers, containing an escaped version of %f/%n. Example: %F for foo'bar".jpg will return 'foo'"'"'bar".jpg' (GitHub #77)
  • Mention URL support in the SYNOPSIS (Debian #655431)
  • Do not refer to --help unless help is compiled in (Debian #657171)
  • Do not overwrite filelist file if it actually is an image (-f and -F may get mixed up) (GitHub #79)
  • Patch by Dennis Real: Add optional EXIF tag view support (make exif=1)
  • Accept offset-only arguments for --geometry (GitHub #73)

feh v2.2


feh-2.2.tar.bz2 (signature)

  • Add --no-fehbg option to disable ~/.fehbg creation (patch by Felix Crux)
  • Pause slideshow when editing captions
  • Makefile: Respect CPPFLAGS when creating deps.mk (GitHub #74)
  • Fix --montage mode (GitHub #76)
  • Follow HTTP redirects (Debian #653689)

feh v2.1


feh-2.1.tar.bz2 (signature)

  • Experimental --scale-down and --auto-zoom tiling support (--scale-down is now re-applied every time the image is resized) (GitHub #54)
  • Fix http image load for long image names (Debian #646421)

feh v2.0


feh-2.0.tar.bz2 (signature)

  • The --bg-options now accept multiple filenames, one per Xinerama screen
  • Fix --info bug when the command wrote no lines to stdout
  • The button-options -0 through -9 are no longer supported. Use .config/feh/buttons instead (see feh manpage)
  • New format specifier: %S (size in kB)
  • The --index-{dim,name,size} options are no longer supported. Use --index-info with format specifiers instead
  • The thumbnail index now supports actions on the currently selected thumbnail (patch by Olof-Joachim Frahm)
  • feh now supports make stat64=1 to access CIFS shares mounted from 64bit hosts if the local system is 32bit (for 32<->32 and 64<->64, this works anyways)

feh v1.16.2


feh-1.16.2.tar.bz2 (signature)

  • Fix useless memory use when using feh --reload on HTTP URLs (fun fact: strictly speaking, this was not a memory leak) (GitHub #62)
  • "--image-bg default" was renamed to "--image-bg checks"
  • Fix --title-font fallback behaviour
  • Fix delayed title display when using --title-font

feh v1.16.1


feh-1.16.1.tar.bz2 (signature)

  • Fix reload after image rotation and similar (broken by 1.16) (GitHub #63)

feh v1.16


feh-1.16.tar.bz2 (signature)

  • Reload image after executing an action with the hold-action flag set (GitHub #59)
  • Fix bug in --info (used to swallow the last output character in some cases)
  • Add --draw-tinted option to make overlay text (filename, caption etc.) better readable (GitHub #60)
  • The --collage option (aka collage mode) is now deprecated
  • The feh-cam and gen-cam-menu tools are deprecated as well (but will remain in this distribution for at least 1 year)
  • The --filelist option now supports /dev/stdin (or "-" as shortcut)
  • Several Xinerama fixes, only --fullscreen on screen != 0 is still broken (GitHub #5)
  • Fix segfault when reloading no longer loadable (but still existing) images. feh will now display a warning and try to reload ad infinitum
  • Fix memory leak in reload functionality for directories (GitHub #62)
  • When using --no-menus and clicking the menu button, feh will now ignore it instead of quitting (which was undocumented behaviour anyways)

feh v1.15.1


feh-1.15.1.tar.bz2 (signature)

feh v1.15


feh-1.15.tar.bz2 (signature)

  • Respect --image-bg option in full-screen mode
  • Disable blur / rotation in thumbnail viewer window
  • Fix --reload behaviour when combined with --fullscreen / --geometry (GitHub #57)

Patches by Yu-Jie Lin

  • Add scroll by page actions
  • Allow combination of multiple key modifiers
  • Fix option pair bug in theme config (GitHub #49)
  • Allow Shift modifier in key config (GitHub #30)
  • New actions: lossless flip (_) and mirror (|) (GitHub #53)
  • Fix save_image key for *.JPG and similar filenames (GitHub #51)
  • Show correct file number after deleting image (GitHub #46)
  • Add experimental reload functionality for directories (GitHub #14)

feh v1.14.2


feh-1.14.2.tar.bz2 (signature)

  • Fix --draw-filename "x of y" being cut off by short filenames (GitHub #45)
  • Use --zoom 100 to show all images at 100% in --fullscreen mode (GitHub #47)
  • Add toggle_info key to switch --info display on/off (defaults to i) (GitHub #48)
  • Fix minor documentation bugs
  • Fix minor memleak in the recursive file loader for directories

feh v1.14.1


feh-1.14.1.tar.bz2 (signature)

  • Fix compilation with curl=0
  • Make zoom_default key work properly with --geometry

feh v1.14


feh-1.14.tar.bz2 (signature)

  • Only create caption directory when actually writing out a caption. github #42
  • The --menu-bg option has been deprecated. It will be removed along with --menu-style by the end of 2012. github #27
  • read directory contents sorted by filename instead of 'randomly' (as returned by readdir) by default. Thanks talisein! github #20
  • Show certain warnings in the image window as well as on the commandline github #43
  • Since the manual is way better structured and more detailed than the --help output, it now simply refers to the manual. To include the old help text, build feh with 'help=1'
  • You can now use the next/prev/jump keys to navigate thumbnails. Use the render key to open the currently selected thumbnail. github #26
  • Change a patch for NETWM fullscreen support to only apply to fullscreen windows. This fixes the moving windows bug in fluxbox (since fluxbox doesn't report its window border width). github #22 debian #570903
  • Minor manpage fixes. debian #625683
  • Fix --auto-zoom / --zoom max/fill documentation, the "Auto-Zoom" menu option is now always checked when these options are used
  • Set _NET_WM_NAME and _NET_WM_ICON_NAME properties github #44
  • The 'A' key (toggle_aliasing) now actually changes the current window, and not just the default for new windows
  • The zoom_default key now works fine with --scale-down github #41
  • Fix access of uninitialized memory / malloc/realloc clash in continued theme definition handling. Having a theme line with just one option/value pair used to produce undefined behaviour

feh v1.13


feh-1.13.tar.bz2 (signature)

  • Fix segfault upon unloadable images when image-related format specifiers (e.g. %h) are used in --title
  • Show images in current directory when invoked without file arguments
  • Option to disable antialiasing, either global (--force-aliasing) or per image (press 'A' to toggle, keybinding toggle_aliasing)
  • Use SIGUSR1/SIGUSR2 to reload all images in multiwindow mode
  • Fix Imlib2 caching bug in reload (only worked after the second try)
  • 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.

feh v1.12


feh-1.12.tar.bz2 (signature)

  • 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

feh v1.11.2


feh-1.11.2.tar.bz2 (signature)

  • 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.

feh v1.11.1


feh-1.11.1.tar.bz2 (signature)

  • 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

feh v1.11


feh-1.11.tar.bz2 (signature)

  • 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

feh v1.10.1


feh-1.10.1.tar.bz2 (signature)

  • 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)

feh v1.10


feh-1.10.tar.bz2 (signature)

  • Patch by Stefan Mark: Add --bg-max (scaled with borders)
  • Removed rather obscure --bg-seamless mode
  • Short option -Y for --hide-pointer
  • Panning via keys: Make it behave like scrolling (inverted directions)
  • Workaround for Xinerama fuckups: Set XINERAMA_SCREEN to the correct xinerama screen number
  • Add --info option to display custom image information
  • Do not change to the next slide when executing an action with ; as first character (this character is stripped when executing the action)
  • Speed up panning, zooming etc. by hiding image overlay text
  • Zoom button: Zoom to 100% on button release, not button click
  • --draw-filename: Always show position in filelist

feh v1.9


feh-1.9.tar.bz2 (signature)

  • Add --fullscreen option, --full-screen is now deprecated
  • Removed --menu-border option, it is largely useless
  • Add short options: -P for --cache-thumbnails, -K for --caption-papth, -G for --draw-actions and -J for --thumb-redraw
  • Patch by Noel Cragg: Improve support for tiling window managers
  • Set correct window title when starting feh in paused mode
  • Add Up/Down keys for zooming
  • When zooming via keyboard: Always zoom around the center of the window
  • The image can now be panned with Ctrl + arrow keys

feh v1.8


feh-1.8.tar.bz2 (signature)

  • support LDLIBS in Makefile/config.mk
  • Don't make the --thumbnails window fullscreen. The images launched from thumbnail mode may be fullscreen, though. You can still use 'v' to toggle fullscreen, should you really need it.
  • --font now sets the global default font (for action/filename display etc.)
  • Rename --screen-clip 0 to --no-screen-clip
  • Allow multiline theme definitions (via backslash, like in the shell)
  • Center the image after pressing or
  • Saving the filelist from thumbnail mode caused undefined behaviour due to handling of uninitialised memory. Since I consider this a rarely useful action, the feature has been disabled for thumbnail mode.
  • Remove -G/--wget-timestamp option. It was probably not working correctly, plus it contained a code execution hole when used with malicious URLs containing shell metacharacters (but only if those URLs led to a valid file)
  • Don't add ?randomnumber to URLs when downloading them, it confuses some servers and is not really neccessary in general

feh v1.7


feh-1.7.tar.bz2 (signature)

  • 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 + 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

feh v1.6.1


feh-1.6.1.tar.bz2 (signature)

  • Fix omitted image borders at high zoom levels
  • Re-add getopt_long files (possibly relevant for non-glibc systems)
  • Do not require a running X server for -L, -u, -U options

feh v1.6


feh-1.6.tar.bz2 (signature)

  • Patch by aaptel: Support numpad keys for actions
  • Fix blur mode (Ctrl + left mouse key)
  • Center images in index/thumbnail mode relative to the text below them
  • Support caching of "large" (up to 256x256 pixels) thumbnails
  • New --thumb-redraw option as workaround to speed up thumbnail mode (thumbnail mode redrawing is quite slow, so now a redraw only happens every 10 thumbnails by default - can be changed with this option)
  • Because of that: Major speed improvements for --thumbnails, especially with cached thumbnails
  • Do not link against Xext and freetype, they're only used by other libs
  • Fix "make uninstall". You do NOT want to call this for feh versions 1.4.2 to 1.5

feh v1.5


feh-1.5.tar.bz2 (signature)

  • Rewrite parts of the menu code & fix a memory leak while there
  • Make --start-at work with filenames instead of list positions
  • Add keybinding to toggle pointer visibility (see --hide-pointer)
  • Sort manual a bit

feh v1.4.3


feh-1.4.3.tar.bz2 (signature)

  • Warp the pointer when reaching a window border in pan mode
  • Various zoom mode improvements, should be more intuitive now
    • When entering zoom mode, always continue from previous zoom level
    • The image part you clicked on to start zoom mode will remain where it is. The zoom happen around at that pixel.
  • Manpage review

feh v1.4.2


feh-1.4.2.tar.bz2 (signature)

  • Replace autoconf by config.mk
  • patch by decklin: Use z key to randomly jump in the filelist
  • patch by muennich: Correctly set [Paused] window title in slideshow mode
  • patch by dylan: Remove temporary files if url opening fails
  • Fix problems with unexpectedly empty filelists

feh v1.4.1


feh-1.4.1.tar.bz2 (signature)

  • Fix chrome theme in the default .fehrc
  • Rename cam to feh-cam and gen_cam_menu.sh to gen-cam-menu
  • Add manual for feh-cam and gen-cam-menu (from Debian)
  • Fix lossless rotate for filenames with spaces etc.

feh v1.4


feh-1.4.tar.bz2 (signature)

  • Lots of documentation fixes/improvements (including previously undocumented options)
  • Fix --(un)loadable option
  • Add --draw-actions (show defined actions and their number)
  • Use to antialias the image
  • Fix some keypad keys (+,-,/,*)
  • The button-related options have changed (NOT backwards-compatible)
  • Remove --xinerama option
  • Use jpegtran binary instead of libjpeg for lossless rotation
  • Add --bg-fill option (patch by Anonymous)

feh v1.3.5


feh-1.3.5.tar.bz2 (signature)

  • Import various Debian patches
  • Update feh(1) manpage
  • Make feh -l / feh -O work without a running X
  • Don't die after encountering three or more unloadable images (former "No more slides in show" error)
  • Depracate --xinerama <0|1>, use --no-xinerama or nothing instead
  • Fix transparency in thumbnail mode
famfamfam iki