Releases: jarcode-foss/glava
Releases · jarcode-foss/glava
"native" transparency hotfix
- fixed a spelling error in
utils/premutliply.fragthat broke native transparency in most modules
Premultiply hotfix and stdin hotfix for vec4 datatypes
disclaimer: this release breaks "native" transparency, use 1.6.3 instead if you require it.
- Fixed a critical issue with
--stdinthat caused the alpha channel to be garbage data - Added a premultiply step to
barsto allow for proper handling of the alpha channel on"native"transparency. This is disabled by default, assignUSE_ALPHAto1inbars.glslto enable.
'circle' hotfix, stdin binding support
disclaimer: this release invokes undefined behavior due to a bug (fixed in later versions)
- A problem with artifacting in
circlehas been fixed, see #107 --stdinhas been added, which binds simple GLSL datatypes toSTDINin shaders. This evaluates to a uniform, and thus can be used to stream some data at runtime to GLava. This feature may be expanded on later (with backwards-compatible support for the current format/arguments)
FIFO support, new GLSL options, and many fixes.
- FIFO support has been added. See
README.mdfor details, also see #78 - Added sampling modes for the GLSL smoothing pass to allow for more accurate output
- Added support for disabling shader passes through GLSL, see #97
- Enhanced rendering and options for
graph, courtesy of @arch1t3cht30, see #97 - Fixed clickthrough on Openbox (and potentially other window managers), see #80
- Fixed the two lowest-frequency bars having the same value while running the
barsmodule - Fixed some build issues on Ubuntu, musl, see #94, #91
- Fixed a bug with
circlethat only manifested on some integrated graphics chips, see #70
Request option & other fixes
- Added a
--requestoption to allow users to supply requests that would normally go inrc.glslthrough the command line. - Fixed a memory leak that occurred when the GLava window was repositioned (or the root pixmap updated) while
"xroot"was selected. - Fixed a bug where preprocessor directives would not work at the end of the file, due to not having a trailing line break.
- Most compilation output has been now limited to the
--verboseoption.
System include prefix & 'graph' module fixes
- Added a
@include prefix that reads from the system (installation) configuration path, rather than the active path (usually@ -> /etc/xdg/glava,: -> ~/.config/glava). - Added some new functionality to the GLSL preprocessor that allows re-occurring defines to override the previous value instead of failing with an error
- These two changes allow for including both the system and user module configurations into fragment shaders, which helps prevent breaking changes (see this reply in #73).
- The
radialmodule now has configurable offsets, see #69 - The
graphmodule has been optimized, has new defaults for theCOLORmacro, and has new options to disable/enable the outline and highlight, see #76
Thanks to @Patiga, who exclusively reported the mentioned issues.
Static memory leak hotfix
- Fixed some minor leaks introduced through shader instantiation (non-growing).
- Fixed a bug where
munmapwas called on a buffer allocated throughmalloc. This didn't cause any issues on most systems, due to the underlyingmallocimplementation.
Window obstruction hotfix
- Fixed a critical issue that caused GLava to stop rendering if it was previously obstructed.
Makefile changes & desktop defaults
- i3, i3-gaps, and AwesomeWM now all have suitable defaults in their respective
env_*.glslfiles. - The dependency on the
gladsubmodule is no longer needed, but is optional. Pre-generated headers and bindings are provided inglad.candglad.h, however users are free to generate their own by cloning into the submodule and runningmake gladin GLava build directory. make uninstallnow properly respectsDESTDIRSHADERDIRhas been added as an option to theMakefileto customize where shaders are installed and used from (use withmakeandmake install), by default it is/etc/xdg/glava.EXECDIRhas also been added as aMakefileoption to configure where the glava executable is installed to, by default it is/usr/bin/.
This update may have some breaking changes for package maintainers, my goal was to avoid glad causing problems with unreproducible builds.
Window visibility & makefile changes
-march=nativeis no longer default in theMakefile. Sorry @coderobe!XROOTPMAP_IDis now monitored to handle changes to the root window background with `"xroot" transparency- GLava now automatically suspends rendering when it is minimized (parent unmapped) or completely obscured, see #68. As a result
#request setfullscreencheckhas defaulted tofalsesince the built-in behavior achieves the same effect in most circumstances.