Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Sun, Oct 16, 2016 at 08:19:59AM -0700, GitHub wrote: > Make PNG support mandatory > > Traditionally, FVWM has always had the option of not linking to any image > renderer at all. > > But, the entire world has moved on, and support for images is becoming more > important, especially with third-party applications. Indeed, FVWM itself will > have a new default configuration soon which will make use of PNGs. It's a > good idea to support this out of the box. > > Choosing the default image library is not easy -- and although there's a sway > towards SVGs (which FVWM supports), PNGs are quite common still, so use that. Maybe it's a silly question, but *why* does fvwm need mandatory image support at all? Arent's images in a window manager just gimmicks? Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Sun, Oct 16, 2016 at 04:48:34PM +0100, Dominik Vogt wrote: > Maybe it's a silly question, but *why* does fvwm need mandatory > image support at all? Arent's images in a window manager just > gimmicks? It's not a silly question, but I'd hoped the commit message said enough. Gimmick is a matter of perspective. I'm trying to stike a balance through useability. I don't think it's unreasonable to assume one image library as the de facto; others are still available. I'm trying to frame this in terms of: * Making the default config useable and useful (which from what I'm seeing, does entail some form of image loading (for icons im menus and elsewhere) * Integrating with other third-party applications which generate menus (which use PNG). XPMs are dead. SVGs aren't as supported. PNGs feel like the right thing to support. HTH, Thomas Adam
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Sun, Oct 16, 2016 at 05:09:57PM +0100, Thomas Adam wrote: > On Sun, Oct 16, 2016 at 04:48:34PM +0100, Dominik Vogt wrote: > > Maybe it's a silly question, but *why* does fvwm need mandatory > > image support at all? Arent's images in a window manager just > > gimmicks? > > It's not a silly question, but I'd hoped the commit message said enough. > Gimmick is a matter of perspective. I'm trying to stike a balance through > useability. I don't think it's unreasonable to assume one image library as > the de facto; others are still available. I'm trying to frame this in terms > of: > > * Making the default config useable and useful (which from what I'm seeing, > does entail some form of image loading (for icons im menus and elsewhere) > > * Integrating with other third-party applications which generate menus (which > use PNG). I completely understand that, and PNG seems to be a sensible choice. The thing I'm unsure about is whether it should be possible to build fvwm without any libraries and expendable features to have a lean, minimalistic WM. But I've honestly no idea whether anybody did that in the recent past or not. Perosnally, if I weren't too lazy to change the config, I could perfectly do without image support: The menu logo is just decoration, icons work as well when done as text, and the FvwmButtons images could be replaced by thext or just menu entries. Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Sun, Oct 16, 2016 at 5:01 PM, Dominik Vogt wrote: > On Sun, Oct 16, 2016 at 05:09:57PM +0100, Thomas Adam wrote: > > On Sun, Oct 16, 2016 at 04:48:34PM +0100, Dominik Vogt wrote: > > > Maybe it's a silly question, but *why* does fvwm need mandatory > > > image support at all? Arent's images in a window manager just > > > gimmicks? > > > > It's not a silly question, but I'd hoped the commit message said enough. > > Gimmick is a matter of perspective. I'm trying to stike a balance > through > > useability. I don't think it's unreasonable to assume one image library > as > > the de facto; others are still available. I'm trying to frame this in > terms > > of: > > > > * Making the default config useable and useful (which from what I'm > seeing, > > does entail some form of image loading (for icons im menus and > elsewhere) > > > > * Integrating with other third-party applications which generate menus > (which > > use PNG). > > I completely understand that, and PNG seems to be a sensible > choice. The thing I'm unsure about is whether it should be > possible to build fvwm without any libraries and expendable > features to have a lean, minimalistic WM. But I've honestly no > idea whether anybody did that in the recent past or not. > Perosnally, if I weren't too lazy to change the config, I could > perfectly do without image support: The menu logo is just > decoration, icons work as well when done as text, and the > FvwmButtons images could be replaced by thext or just menu > entries. > > What about having libpng be default but having a --disable-libpng ./configure option to disable? Have it set up to error out if libpng and that option are not present with an error that says building without libpng may affect the default config and other applications. If you want to build without libpng use --disable-libpng. This way if someone really wants to build without image support they can without having to edit the configure script. Though the answer to having such an option may be on what happens when fvwm hits the .png images in the default config without support. I'm hoping it just throws a warning and leaves a blank place where the image should be. jaimos​
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Sun, Oct 16, 2016 at 05:36:51PM -0600, Jaimos Skriletz wrote: > What about having libpng be default but having a --disable-libpng > ./configure option to disable? Have it set up to error out if libpng and > that option are not present with an error that says building without libpng > may affect the default config and other applications. If you want to build > without libpng use --disable-libpng. I think having it compiled in is fine---that it might not be used in all cases is also fine. That's still down to the user. -- Thomas Adam
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 12:01:14AM +0100, Dominik Vogt wrote: > On Sun, Oct 16, 2016 at 05:09:57PM +0100, Thomas Adam wrote: > > On Sun, Oct 16, 2016 at 04:48:34PM +0100, Dominik Vogt wrote: > > > Maybe it's a silly question, but *why* does fvwm need mandatory > > > image support at all? Arent's images in a window manager just > > > gimmicks? > > > > It's not a silly question, but I'd hoped the commit message said enough. > > Gimmick is a matter of perspective. I'm trying to stike a balance through > > useability. I don't think it's unreasonable to assume one image library as > > the de facto; others are still available. I'm trying to frame this in terms > > of: > > > > * Making the default config useable and useful (which from what I'm seeing, > > does entail some form of image loading (for icons im menus and elsewhere) > > > > * Integrating with other third-party applications which generate menus > > (which > > use PNG). > > I completely understand that, and PNG seems to be a sensible > choice. The thing I'm unsure about is whether it should be > possible to build fvwm without any libraries and expendable > features to have a lean, minimalistic WM. But I've honestly no > idea whether anybody did that in the recent past or not. These days you find two camps---those programs which are deliberately minimalistic in some way, and those which want to include a lot of things; size doesn't matter. I suspect when FVWM was in its heyday, the cost of including certain features would have had an impact on resources and memory footprint, etc. This explains why GNOME and KDE at the time had a bad press for resources. It's worth bearing in mind though that keeping things minimal is always worthwhile. But having many options---even if they're things which you can opt in and out of, still carry with them a burden of responsibility on the maintainer(s). For example, we currently still carry around XPM and SVG. Why? XPM is dead, and I am <-> close to removing it. SVG support is much more promising, it's a shame more things don't support it externally to make it more viable. The image rendering code in FVWM is clever---overly complex in trying to abstract away the actual format so that FVWM doesn't care about it for things like menus and buttons, etc. If we went with something modular, but extensible, we'd still be having to maintain these things. It's a lot easier to cut out the chaff, and make a statement about the things we do support. That will be just as minimal and small, IMO, without sacrificing much else, if anything. -- Thomas Adam
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 12:50:53AM +0100, Thomas Adam wrote: > On Mon, Oct 17, 2016 at 12:01:14AM +0100, Dominik Vogt wrote: > > On Sun, Oct 16, 2016 at 05:09:57PM +0100, Thomas Adam wrote: > > > On Sun, Oct 16, 2016 at 04:48:34PM +0100, Dominik Vogt wrote: > > > > Maybe it's a silly question, but *why* does fvwm need mandatory > > > > image support at all? Arent's images in a window manager just > > > > gimmicks? > > > > > > It's not a silly question, but I'd hoped the commit message said enough. > > > Gimmick is a matter of perspective. I'm trying to stike a balance through > > > useability. I don't think it's unreasonable to assume one image library > > > as > > > the de facto; others are still available. I'm trying to frame this in > > > terms > > > of: > > > > > > * Making the default config useable and useful (which from what I'm > > > seeing, > > > does entail some form of image loading (for icons im menus and > > > elsewhere) > > > > > > * Integrating with other third-party applications which generate menus > > > (which > > > use PNG). > > > > I completely understand that, and PNG seems to be a sensible > > choice. The thing I'm unsure about is whether it should be > > possible to build fvwm without any libraries and expendable > > features to have a lean, minimalistic WM. But I've honestly no > > idea whether anybody did that in the recent past or not. > > These days you find two camps---those programs which are deliberately > minimalistic in some way, and those which want to include a lot of things; > size doesn't matter. > > I suspect when FVWM was in its heyday, the cost of including certain features > would have had an impact on resources and memory footprint, etc. This > explains why GNOME and KDE at the time had a bad press for resources. It's > worth bearing in mind though that keeping things minimal is always worthwhile. But keep small and/or embedded systems in mind. It's still possible to use just the core without any libraries and modules and have a very small WM that can even draw basic window decoration and some graphical effects. ... This may have gotten a bit out of hand (fvwm-2.6.7): $ ./configure --disable-nls --disable-mandoc --disable-sm --disable-shape --disable-shm --disable-xrender --disable-xinerama --disable-iconv --disable-xft --disable-bidi --disable-perllib --disable-gtk --disable-gtktest --disable-imlibtest --with-png-library=no --with-stroke-library=no --with-xpm-library=no --with-rplay-library=no --with-readline-library=no (everything turned off) $ make CFLAGS="-O3" $ cd fvwm $ ls -s --si fvwm 979k fvwm $ ldd fvwm linux-gate.so.1 => (0xb77d7000) libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xb77bd000) libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xb77a4000) libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xb7791000) libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xb7659000) libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb7633000) libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb74e1000) libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xb74db000) libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xb74b7000) libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb74b3000) /lib/ld-linux.so.2 (0xb77d9000) libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xb74b) libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xb74aa000) Not exactly what I'd call small and with few dependencies. libSM linked although explicitly disabled. This looks actually like a bug. Hm. > But having many options---even if they're things which you can opt in and out > of, still carry with them a burden of responsibility on the maintainer(s). > For example, we currently still carry around XPM and SVG. Why? XPM is dead, > and I am <-> close to removing it. SVG support is much more promising, it's a > shame more things don't support it externally to make it more viable. > > The image rendering code in FVWM is clever---overly complex in trying to > abstract away the actual format so that FVWM doesn't care about it for things > like menus and buttons, etc. If we went with something modular, but > extensible, we'd still be having to maintain these things. I'd be very much against removing the plug-in image format and hard coding PNG instead. While there definitely is some unpleasant to maintain bloat in fvwm, it's certainly not the image library. > It's a lot easier to cut out the chaff, and make a statement about the things > we do support. Sure, but I suspect in this specifice case we're going to regret it in the future. > That will be just as minimal and small, IMO, without > sacrificing much else, if anything. Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 01:58:10AM +0100, Dominik Vogt wrote: > This may have gotten a bit out of hand (fvwm-2.6.7): > > $ ./configure --disable-nls --disable-mandoc --disable-sm --disable-shape > --disable-shm --disable-xrender --disable-xinerama --disable-iconv > --disable-xft --disable-bidi --disable-perllib --disable-gtk > --disable-gtktest --disable-imlibtest --with-png-library=no > --with-stroke-library=no --with-xpm-library=no --with-rplay-library=no > --with-readline-library=no > > (everything turned off) > > $ make CFLAGS="-O3" Sorry ... $ make CFLAGS="-Os" $ cd fvwm $ ls -s --si fvwm 697k fvwm* $ strip fvwm $ ls -s --si fvwm 623k fvwm Still too big for small systems. Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 01:58:10AM +0100, Dominik Vogt wrote: > But keep small and/or embedded systems in mind. It's still > possible to use just the core without any libraries and modules > and have a very small WM that can even draw basic window > decoration and some graphical effects. Of course, but that was never FVWM's design goal, and it's a little unsuaul to suddenly make it one, given that it's not currently possible. I'm all for making things smaller (I already am), but I am not going to sacrifice anything else in FVWM to the point where the goals of giving something to the user are from the point of view of an arbitrary embedded system. That's not happening. > I'd be very much against removing the plug-in image format and > hard coding PNG instead. While there definitely is some > unpleasant to maintain bloat in fvwm, it's certainly not the image > library. I wasn't saying that. I was pointing out that in order to support many image formats (why?), it meant that this abstraction layer had to be written, for no real purpose other than to give people as much flexibility as possible, but putting a slight burden on the maintainer(s) of the code. The same example can be used in many other places in FVWM, and that's the trade-off between functionality and letting the design of FVWM grow organically through many different people, over a long period of time. Trying to reign that back, whilst still providing the same or similar functionality is important. > > It's a lot easier to cut out the chaff, and make a statement about the > > things > > we do support. > > Sure, but I suspect in this specifice case we're going to regret > it in the future. Well, we'll see, but given everything else in FVWM, I suspect this won't even be a blip on the radar. Kindly, -- Thomas Adam
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 07:53:17AM +0100, Thomas Adam wrote: > On Mon, Oct 17, 2016 at 01:58:10AM +0100, Dominik Vogt wrote: > > But keep small and/or embedded systems in mind. It's still > > possible to use just the core without any libraries and modules > > and have a very small WM that can even draw basic window > > decoration and some graphical effects. > > Of course, but that was never FVWM's design goal, > and it's a little unsuaul to > suddenly make it one, Keeping it small always was a design goal, although of course having a lot of functionality counteracts this somewhat. Maybe not aiming at embedded systems. > given that it's not currently possible. I'm all for > making things smaller (I already am), but I am not going to sacrifice anything > else in FVWM to the point where the goals of giving something to the user are > from the point of view of an arbitrary embedded system. That's not happening. > > > I'd be very much against removing the plug-in image format and > > hard coding PNG instead. While there definitely is some > > unpleasant to maintain bloat in fvwm, it's certainly not the image > > library. > > I wasn't saying that. I was pointing out that in order to support many image > formats (why?), it meant that this abstraction layer had to be written, for no > real purpose other than to give people as much flexibility as possible, but > putting a slight burden on the maintainer(s) of the code. And the logical consequence of this statement is to hard code image formats and remove the library code, no? > The same example can be used in many other places in FVWM, and that's the > trade-off between functionality and letting the design of FVWM grow > organically through many different people, over a long period of time. Trying > to reign that back, whilst still providing the same or similar functionality > is important. > > > > It's a lot easier to cut out the chaff, and make a statement about the > > > things > > > we do support. > > > > Sure, but I suspect in this specifice case we're going to regret > > it in the future. > > Well, we'll see, but given everything else in FVWM, I suspect this won't even > be a blip on the radar. When you say that XPM is dead, does this mean XPM support is on the remove list in favour of PNG? What other change could affect and possibly annoy more people at once? While it may be possible to convert the configuration files mostly automatically, converting system installed XPM icon libraries during is certainly not. Making PNG support mandatory is not going to have any positive effect on code size or maintainability unless something else is removed in favour of PNG. Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 02:04:54AM +0100, Dominik Vogt wrote: > On Mon, Oct 17, 2016 at 01:58:10AM +0100, Dominik Vogt wrote: > > This may have gotten a bit out of hand (fvwm-2.6.7): > > > > $ ./configure --disable-nls --disable-mandoc --disable-sm --disable-shape > > --disable-shm --disable-xrender --disable-xinerama --disable-iconv > > --disable-xft --disable-bidi --disable-perllib --disable-gtk > > --disable-gtktest --disable-imlibtest --with-png-library=no > > --with-stroke-library=no --with-xpm-library=no --with-rplay-library=no > > --with-readline-library=no > > > > (everything turned off) > > > > $ make CFLAGS="-O3" > > Sorry ... > > $ make CFLAGS="-Os" > $ cd fvwm > $ ls -s --si fvwm > 697k fvwm* > $ strip fvwm > $ ls -s --si fvwm > 623k fvwm > > Still too big for small systems. $ cd fvwm $ ls -s -S --si *.o 58k style.oC, S, P! 54k menus.oC, P 50k move_resize.o C, P 50k builtins.o P! 41k events.o C 41k fvwm.o C 37k add_window.o C 37k borders.o C, D 29k virtual.o C 25k icons.oD 25k ewmh.o I 21k conditional.o C 21k menustyle.oC, P, S 21k placement.oC 21k colorset.o D 17k stack.oC 17k module_list.o C 17k functable.oC 17k frame.oC, D 17k windowlist.o C 17k functions.oC 17k session.o I 13k ewmh_events.o I 13k expand.o C 13k geometry.o C 13k focus.oC 13k module_interface.o C 13k menuitem.o C 13k menubindings.o C 13k update.o C 13k gnome.oI 8.2k bindings.o C 8.2k ewmh_icons.o I 8.2k misc.o ? 8.2k cursor.o D 8.2k decorations.o D 8.2k read.o C 8.2k colormaps.o<--- candidate for removal 8.2k menucmd.o C 8.2k ewmh_conf.oI 4.1k modconf.o C 4.1k icccm2.o I 4.1k schedule.o C 4.1k windowshade.o D 4.1k infostore.o? 4.1k execcontext.o C 4.1k focus_policy.o C 4.1k repeat.o <--- candidate for removal, never really worked 4.1k menugeometry.o C 4.1k ewmh_names.o I 4.1k menudim.o C 4.1k condrc.o C C = important core functionality D = decorations related core code I = Interfacing code (external standards) P! = lots of parsing code P = considerable amount of parsing code S = lots of hard coded strings Really not a lot of potential for removing code from the core. The colourmap code is probably unnecessary nowadays, and the "repeat" feature is mostly a source of hard to debug crashes. Personally I'm very unhappy about the interfaces which traditionally cause more trouble than anything, but I guess people want them as long as there are applications around using them. $ cd fvwm $ ls -s -S --si *.o 46k PictureUtils.o 25k Flocale.o 17k Graphics.o 17k CombineChars.o 17k PictureGraphics.o 13k FScreen.o 13k FEvent.o 13k FlocaleCharset.o 13k Colorset.o 8.2k FTips.o 8.2k Parse.o 8.2k ColorUtils.o 8.2k Bindings.o 8.2k XError.o 8.2k PictureImageLoader.o 8.2k gravity.o 8.2k Module.o 8.2k PictureBase.o 4.1k Picture.o 4.1k XResource.o 4.1k Cursor.o 4.1k envvar.o 4.1k Target.o 4.1k System.o 4.1k WinMagic.o 4.1k Strings.o 4.1k queue.o 4.1k Grab.o 4.1k safemalloc.o 4.1k FImage.o 4.1k charmap.o 4.1k FRenderInit.o 4.1k Fft.o 4.1k fvwmrect.o 4.1k flist.o 4.1k wcontext.o 4.1k fvwmsignal.o 4.1k timeout.o 4.1k Rectangles.o 4.1k modifiers.o 4.1k FGettext.o 4.1k Ficonv.o 4.1k wild.o 4.1k ClientMsg.o 4.1k fio.o 4.1k fsm.o 4.1k Event.o 4.1k fvwmlib.o 4.1k FRender.o 4.1k setpgrp.o 4.1k BidiJoin.o 4.1k FShape.o 4.1k FBidi.o Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 07:01:52PM +0100, Dominik Vogt wrote: > And the logical consequence of this statement is to hard code > image formats and remove the library code, no? No. The logic stops in saying that out-of-the-box, PNG image support is available. At a minimum. Other renderers are available, and from what I can tell, pretty much every single FVWM installation which is packaged includes all image renderes FVWM supports. That's telling in and of itself. Perhaps the only exception to this is Gentoo. > When you say that XPM is dead, does this mean XPM support is on > the remove list in favour of PNG? What other change could affect No. I'm saying that as an image format used in the wild, all of the projects I can see don't support XPMs. I'm not saying it's being removed at all. It's an example showing that FVWM is carrying around optional support for it. *That's* a maintainer burden in that the cost of removing it is high because someone out there (presumably with a long beard, I couldn't say), is still using it. > Making PNG support mandatory is not going to have any positive > effect on code size or maintainability unless something else is > removed in favour of PNG. You mean making it optional? I disagree there. We already _support_ it. Go look at all the Linux distros which package FVWM. You'll quickly see what they chose to compile in. You'll have to prove to me there's a negative impact on FVWM. You'll have to prove to me the size increase is hampering something important, and you'll definitely have to tell me how this is a problem for maintainability, when we already support PNG image loading. No additional code is being added or taken away here, it's just a compile-time change. This change is additive, and helps FVWM out-of-the-box. And sorry, embedded systems don't count because as you've also seen, FVWM is too large anyway, even with all the optional libraries taken out and the binary stripped. That's also not taking into account modules as well---which, by the way, you also have with FVWM as a consequence. Kindly, -- Thomas Adam
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 07:36:28PM +0100, Thomas Adam wrote: > On Mon, Oct 17, 2016 at 07:01:52PM +0100, Dominik Vogt wrote: > I'm saying that as an image format used in the wild, all of the projects > I can see don't support XPMs. I'm not saying it's being removed at all. It's > an example showing that FVWM is carrying around optional support for it. > *That's* a maintainer burden in that the cost of removing it is high because > someone out there (presumably with a long beard, I couldn't say), is still > using it. Only if you ever want to remove it, which you said you wouldn't do. > > Making PNG support mandatory is not going to have any positive > > effect on code size or maintainability unless something else is > > removed in favour of PNG. > > You mean making it optional? I disagree there. We already _support_ it. Go > look at all the Linux distros which package FVWM. You'll quickly see what > they chose to compile in. Then what is the gain of making it mandatory if every distro has it anyway? With that line of argumwnt the only effect of making it mandatory is making fvwm harder to build for some people. > You'll have to prove to me there's a negative impact on FVWM. You'll have to > prove to me the size increase is hampering something important, and you'll > definitely have to tell me how this is a problem for maintainability, when we > already support PNG image loading. No additional code is being added or taken > away here, it's just a compile-time change. > This change is additive, and helps FVWM out-of-the-box. In what way does it help fvwm, or us developers or the users if PNG support is now guaranteed to be there while it just happened to be there unless the user compiled fvwm herself? > And sorry, embedded systems don't count because as you've also seen, FVWM is > too large anyway, even with all the optional libraries taken out and the > binary stripped. > That's also not taking into account modules as well---which, > by the way, you also have with FVWM as a consequence. Modules are optional. That's the only point of the module concept (everything they do could be done easier in the core). If you don't want them, you don't have to install them (which is a bit of manual work with the current Makefiles). No vital functionality is or should ever be in a module. So, let's forget about embedded systems, but people do use it in environments where simplicity and small installation size counts (e.g. a buddy of mine who uses it as the interface of his home grown media/entertainment setup, and he is explicitly happy that he did now have to have any image support but could do with simple menus and vector buttons). Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 08:10:00PM +0100, Dominik Vogt wrote: > Then what is the gain of making it mandatory if every distro has > it anyway? With that line of argumwnt the only effect of making > it mandatory is making fvwm harder to build for some people. Harder to build, how? We've just ruled out embedded systems. Even the most esoteric Linux distributions fare well, as would any of the BSDs too. Again, if this were a problem, it's going to be with a platform which most other people are maintaining themselves. > In what way does it help fvwm, or us developers or the users if > PNG support is now guaranteed to be there while it just happened > to be there unless the user compiled fvwm herself? Run-time functionality never helps developers. It will help users with the default config which is being worked on which will use images, and I think it's important to show that off. Having *some* consistency out-of-the-box is important, and I am utterly convinced supporting images is a good thing here. > So, let's forget about embedded systems, but people do use it in > environments where simplicity and small installation size counts > (e.g. a buddy of mine who uses it as the interface of his home > grown media/entertainment setup, and he is explicitly happy that > he did now have to have any image support but could do with simple > menus and vector buttons). And he's still able to do that with an extra library his fvwm configuration likely never uses. This is now all theoretical. I am not hearing anything which says this breaks things for any one, other that it offends peoples' sense of being forced into something they might not use. That's fine, since this is a small thing, IMO. -- Thomas Adam
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 08:19:20PM +0100, Thomas Adam wrote: > On Mon, Oct 17, 2016 at 08:10:00PM +0100, Dominik Vogt wrote: > > Then what is the gain of making it mandatory if every distro has > > it anyway? With that line of argumwnt the only effect of making > > it mandatory is making fvwm harder to build for some people. > > Harder to build, how? Examples: 1) User wants to compile himself; libpng-devel is not installed => could still compile without having to install if he wanted to. Now he's forced to figure out the package name and install it. Sure, no much harder, but still a little. This will definitely me after the next distro upgrade. 2) For some reason, libpng is incompatible on the system => you can't compile fvwm until you fix that distro problem. We've just ruled out embedded systems. Even the most > esoteric Linux distributions fare well, as would any of the BSDs too. Again, > if this were a problem, it's going to be with a platform which most other > people are maintaining themselves. > > > In what way does it help fvwm, or us developers or the users if > > PNG support is now guaranteed to be there while it just happened > > to be there unless the user compiled fvwm herself? > Run-time functionality never helps developers. It will help users with the > default config which is being worked on which will use images, and I think > it's important to show that off. Having *some* consistency out-of-the-box is > important, and I am utterly convinced supporting images is a good thing here. Agreed. > > So, let's forget about embedded systems, but people do use it in > > environments where simplicity and small installation size counts > > (e.g. a buddy of mine who uses it as the interface of his home > > grown media/entertainment setup, and he is explicitly happy that > > he did now have to have any image support but could do with simple > > menus and vector buttons). > > And he's still able to do that with an extra library his fvwm configuration > likely never uses. > > This is now all theoretical. I am not hearing anything which says this breaks > things for any one, other that it offends peoples' sense of being forced into > something they might not use. In my eyes, relying on third party software being available and not broken is always bad. One can do it if there are good reasons, but I don't see any here. You *can* use PNG in any configs coming with fvwm and still allow people who don't want them do their own thing. There's no conflict between these two. > That's fine, since this is a small thing, IMO. So, I see we won't find a common point of view. In my eyes, taking away the choice without any benefit (because every distro compiles fvwm with PNG support anyway) is bad. People may want to use it on tiny systems like a Raspberry Pi and this may make life more difficult for them. The intention of having a show off or default config using PNG is a good idea, but one can still have an option "--disable-png" and tell people: Warning: You have disabled PNG image support. While fvwm works fine without it, the sample configurations coming with fvwm (or configurations provided by other people) use PNG images that cannot be displayed without PNG support. Other than that, these configurations should work fine. And if the system does not have a useable libpng-devel installed: Error: No useable version of libpng found. PNG image support is required for the sample configurations coming with fvwm, but may be disabled with the --disable-png configure option. It is strongly recommended to not switch off PNG support unless the system where fvwm is intended to run has critical size limitations. there are critical size limitations on the target system. system (A default configuration may as well require additional libraries or tools that are otherwise optional.) Ciao Dominik ^_^ ^_^ -- Dominik Vogt
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 10:05:04PM +0100, Dominik Vogt wrote: > The intention of having a show off or default config using PNG is > a good idea, but one can still have an option "--disable-png" and > tell people: [...] OK -- so what if we do that, but it defaults to using PNG if it's on the system? Would that make things easier for everyone? If so, I'm happy to do that. -- Thomas Adam
Re: [fvwmorg/fvwm] d30479: Make PNG support mandatory
On Mon, Oct 17, 2016 at 10:30:37PM +0100, Thomas Adam wrote: > On Mon, Oct 17, 2016 at 10:05:04PM +0100, Dominik Vogt wrote: > > The intention of having a show off or default config using PNG is > > a good idea, but one can still have an option "--disable-png" and > > tell people: > > [...] > > OK -- so what if we do that, but it defaults to using PNG if it's on the > system? Fine with me, even if it produces an error message if libpng-devel is not found and --disable-png is not explicitly used. > Would that make things easier for everyone? If so, I'm happy to do that. Ciao Dominik ^_^ ^_^ -- Dominik Vogt