Giter Site home page Giter Site logo

rexso / feh Goto Github PK

View Code? Open in Web Editor NEW

This project forked from derf/feh

0.0 1.0 0.0 6.81 MB

fast and light Imlib2-based image viewer

Home Page: http://feh.finalrewind.org

License: Other

Makefile 1.44% Perl 6.62% Shell 0.48% C 91.10% C++ 0.36%

feh's Introduction

build status

feh

Imlib2 based image viewer

Dependencies

  • Imlib2
  • libcurl (disable with make curl=0)
  • libpng
  • libX11
  • libXinerama (disable with make xinerama=0)

If built with exif=1:

  • libexif-dev
  • libexif12

Recommended

  • jpegtran (supplied by the jpeg library, for lossless image rotation)
  • convert (supplied by ImageMagick, can be used to load unsupported formats)

Installation

For end users:

$ make
$ sudo make install app=1

For package maintainers and users who do not want feh to install its icons into /usr/share:

$ make
$ sudo make install

Explanation: feh ships some icons and an X11 desktop entry, which allow it to be used from file managers, desktop menus and similar. However, installing icons to /usr/local/share/... does not seem to work reliable in all cases. Because of this, when using "make install app=1", feh will install its icons to /usr/share/..., even though they technically belong into /usr/local.

ZSH Completion for feh is available here

Make flags

Flags can be used to control the build and installation process.

e.g.

make flag=bool
make install flag=bool

or

export flag=bool
make && make install

For example, make xinerama=0 debug=1 will disable Xinerama support and produce a debug build.

Available flags are:

Flag Default value Description
app 0 install icons to /usr/share, regardless of DESTDIR and `PREFIX, and call gtk-update-icon-cache afterwards
cam 0 install deprecated feh-cam und gen-cam-menu scripts
curl 1 use libcurl to view http:// and similar images
debug 0 debug build, enables --debug
exif 0 Builtin EXIF tag display support
help 0 include help text (refers to the manpage otherwise)
stat64 0 Support CIFS shares from 64bit hosts on 32bit machines
verscmp 1 Support naturing sorting (--version-sort). Requires a GNU-compatible libc exposing strverscmp
xinerama 1 Support Xinerama/XRandR multiscreen setups

So, by default libcurl and Xinerama are enabled, the rest is disabled.

Additionally, the standard variables PREFIX and DESTDIR are supported.

PREFIX (default: /usr) controls where the application and its data files will be installed. It must be set both during make and make install.

DESTDIR (default: empty) sets the installation root during "make install". It is mostly useful for package maintainers.

Note: config.mk is designed so that in most cases, you can set environment variables instead of editing it. E.g.:

CFLAGS='-g -Os' make
export DESTDIR=/tmp/feh PREFIX=/usr
make && make install

Builtin EXIF support is maintained by Dennis Real, here.

Testing (non-X)

$ make test

Requires perl >= 5.10 with Test::Command. The tests are non-interactive and work without X, so they can safely be run even on a headless buildserver.

Testing (X)

Requires

  • import (usually supplied by imagemagick)
  • perl >= 5.10 with GD, Test::More and X11::GUITest
  • twm
  • Xephyr
$ make test-x11

Be aware that this is quite experimental, so far the X-tests have only been run on one machine. So they may or may not work for you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.