Under some systems libasound.so is not available by default (reserved to devel packages), which will trigger some LD_PRELOAD warnings.
Bristol fails to start because of this, as it's not expecting such output when first requesting jack sample-rate and buffer-size.
Adding .2 to the library name ensures that the alsa library is always present on non-devel systems, and fixes the Bristol issue.
The exit code detection for apps ran in terminal is not working,
at least with xterm. xterm doesnt seem to be able to return exit
code of its child process.
when alsapid is preloaded libasound is not loaded yet
for some unknown reason, late call to dlvsym() fails as well,
at least for mididings (python loads _mididings.so that
implicitly loads libasound.so)
this changeset implements the late symbol lookup,
because it makes the code smaller
the actual fix is to LD_PRELOAD libasound.so as well
This will allow expansion of env vars used in commandline to happen
when apps are started in terminal. It already happens when apps are
started without terminal.
This breaks the default title, at least for xterm. For it, it is now
set explicitly.
Starting through shell is not used when there is no '$' in the
commandline. This should minimize the title problems when xterm is not
used.
* code for the service lifecycle object moved to main.c - remove polution by fake OO concept
* removed types.h - typedefs for public structs are evil. typedefs for handles must be per header
* compile with -Wall and -Werror flags. Warnings are here to help.
* define _GNU_SOURCE globally, in config.h. This is propoerty of the whole daemon codebase.
* common.h is header to collect stuff that is needed almost everywhere in the ladishd
* cleanup loader module.