________         __ __      ______ __                                 
|  |  |  |.---.-.|  |  |    |      |  |--.---.-.-----.-----.-----.----.
|  |  |  ||  _  ||  |  |    |   ---|     |  _  |     |  _  |  -__|   _|
|________||___._||__|__|    |______|__|__|___._|__|__|___  |_____|__|  
                                                     |_____|           

About
------

Wall Changer is an automatic wallpaper changer for GNU/Linux.
User can select images that will be used as wallpapers,
select command to set wallpaper, wallpaper change time interval.

Program works in GNU/Linux, FreeBSD.

Version: 1.3.11 (last update: 06.03.2020)

Screenshot
-----------

Requirements
-------------

Program may work with previous versions, I just wrote on which I was compiling
this program and there were no problems.

Installation and running
-------------------------

Wall Changer may be installed from program package or from software repository.

Package version contains official program release with source code, configuration and build scripts.

Software repositories contains fresh, up to date program code, yet it still may be less stable than package version.

Program package can be downloaded from download section at program workspace:
https://savannah.nongnu.org/projects/wallchanger/

Arch linux package in AUR:
https://aur.archlinux.org/packages/wallchanger/

Downloading source code from GIT or Mercurial:

git clone https://git.savannah.nongnu.org/git/wallchanger.git
hg clone https://hg.savannah.nongnu.org/hgweb/wallchanger/

Software repositories does not contain configure and build scripts, user must have autotools installed and run autogen.sh to link appropriate scripts.

Compiling program - go to source code directory and type:

./configure
make
make install
Although I suggest to configure and compile with more detailed options described below.

For a normal daily use of this program a good option should be:
./configure CC="gcc" CFLAGS="-march=native -O2 -pipe -std=gnu11"
or with CLANG
./configure CC="clang" CFLAGS="-march=native -O2 -pipe -std=gnu11"
It disables the standard -g option which produces debugging information
needed for gdb and enlarges the output file,
CC="gcc"       sets the C compiler to gcc,
CC="clang"     sets the C compiler to clang,
-march=native  enables all instruction subsets supported by the local machine,
-O2            sets the code optimization to level 2,
-pipe          use pipes rather than temporary files for communication between
               the various stages of compilation,
-std=gnu11     sets the C standard to C11 with GNU extensions.
If compilation ends without problems, 2 executable files will be created:
wchangercfg
wchangerd

wchangerd works in background and changes wallpaper in specified time intervals

wchangercfg is a configuration window to set wallpaper change time intervals,
images on wallpaper list and a way wallpapers change

Afer changing settings using wchangercfg, there is no need to restart wchangerd, settings are loaded before every wallpaper change.

Application configuration is stored in
~/.config/wchanger.json

Contact and help
-----------------

In case of problems with the program, please contact me: michalb1981@o2.pl

To check out my other apps visit: http://init6.pomorze.pl/