# the future of gtk and alternatives?



## wolffnx (Dec 19, 2018)

Hello, this post is about my personal opinion and maybe a little help form the others opinion to search a alternative..
First of all I use FVWM, no KDE, no Gnome and no XFCE.


 GTK3 sucks, there is no organization, only a CSS modified file, no themes, and the icons follow the gray/black "without life and color" style
 QT apps seems to be a alternative, but again, the applications seem to follow their own styles. I can't change the icon's themes (QT5)
 I know that GTK2 contains bugs but it is usable and has styles, icons, themes, I mean, it works 

So far I got..

File manager : Thunar
Terminal emulator : Terminator
Web browser :
Here is a problem, Firefox follow the "without life" style, can't change the icons, GTK3 not have theme to choose in one word, ugly
Seamonkey give the choice to use gtk2 or gtk3 in ports, but is slow.
Midori and light derivatives browsers not work fine on some sites
otter-browser runs very well but again, I can't change the icon theme

And the other applications runs in console, freerdp, virtualbox-ose-nox11, feh, etc

So, what your thinks guys about the future of gtk apps? What your prefer for alternatives?


----------



## MarcoB (Dec 19, 2018)

Personally I use console/ncurses applications as much as possible. If I have to use a toolkit I look at Qt first. You can configure it with misc/qt5ct, including the icon theme.


----------



## wolffnx (Dec 19, 2018)

MarcoB said:


> Personally I use console/ncurses applications as much as possible. If I have to use a toolkit I look at Qt first. *You can configure it with misc/qt5ct*, including the icon theme.



Yes, I use it. But the applications don't change it, for example otter-browser. But thanks for the tip.
Maybe it's me but I don't see organization, every QT application needs a search and hack to make it look live a like I want.


----------



## MarcoB (Dec 19, 2018)

Hmm works fine here, on Qt5 applications only of course. Do you have `QT_QPA_PLATFORMTHEME=qt5ct`in your .xsession or .xinitrc?


----------



## wolffnx (Dec 19, 2018)

Sorry, but the menu icons and actions(forward,home) in QT5 or any version are icon theme independent?


----------



## wolffnx (Dec 19, 2018)

MarcoB said:


> Hmm works fine here, on Qt5 applications only of course. Do you have `QT_QPA_PLATFORMTHEME=qt5ct`in your .xsession or .xinitrc?



Yes, but only I set the env QT_QPA_PLATFORMTHEME before using qt5ct

edit: www/otter-browser , I put the variable in .xinitrc ,select "qt5ct-style" in widget style
and the advanced option in about:config , /interface/UseSystemIconTheme to True and now I see colors icons!
I see life! 
the mistake was not to put the variable in .xinitrc


----------



## Sevendogsbsd (Dec 19, 2018)

I have been an exclusive gtk "user" since the late 90's (Gnome 1). I am finding now that qt (5) apps just seem to look better to me. I also use as many console apps as I can, but for some I need a graphical app. I use x11-fm/xfe for files, x11/uxterm for terminal, mail/sylpheed for mail (like to move to mail/neomutt), and www/firefox for web, but I am testing out www/falkon as a replacement. 

Icons I really don't care about but maybe that is because I don't use any in my window manager and my file manager has one
set that I never change. I do use x11/qt5ct (?) to change the overall theme and look of my qt apps.

There has long been a divide between the qt and gtk camps - I don't know the merits of each, just how they look. I will agree that css seems like an odd way to style gtk3; css is for web pages, but then again gnome 3 has always been an odd duck.


----------



## wolffnx (Dec 19, 2018)

Sevendogsbsd said:


> I have been an exclusive gtk "user" since the late 90's (Gnome 1). I am finding now that qt (5) apps just seem to look better to me. I also use as many console apps as I can, but for some I need a graphical app. I use x11-fm/xfe for files, x11/uxterm for terminal, mail/sylpheed for mail (like to move to mail/neomutt), and www/firefox for web, but I am testing out www/falkon as a replacement.
> 
> Icons I really don't care about but maybe that is because I don't use any in my window manager and my file manager has one
> set that I never change. I do use x11/qt5ct (?) to change the overall theme and look of my qt apps.
> ...



From the init of times, but I'm afraid that GTK future is a sh#@, the applications that you named are the best, fast and without many dependencies. I use it in the late 90 and still are the best but I like it gtk2 apps.


----------



## obsigna (Dec 19, 2018)

Only since a few days, I am fighting with desktop systems on FreeSBD 12 (and I never touched Linux), so you may want to call me a Noob.

However, from what I saw – I testet OpenBox, XFCE, KDE5 and GNOME 3, in that order –, I am already in a position to tell you that you are mixing up technical details with graphics design. All the graphics frameworks which were mentioned GTK , Qt or others which were not, GNUstep, Cocotron, or even the graphics libraries like Cairo and OpenGL are so versatile that developers can do any design they want with it. So, the question cannot be whether GTK or Qt is ugly or not, these are only tools which maybe more or less suitable. Whether the design a developer happened to realize with one of the said frameworks or libraries is beautiful or not is also not an absolute measure, since the beauty lies in the eyes of the beholder. A physicist would say, that in full accordance to the general theory of relativity of Albert Einstein his design is beautiful and your’s not, is it? :-D

In addition I cannot share your opinion about CSS. In the world the number of people being very familliar with CSS and doing amazing things with it, is by some orders of magnitude higher than the number of GTKv2 nerds, being able to change the font size of a headline in the respective configuration file. So chances are, that we'll see much more and much better themes only because of CSS in the not so distant future.

I was almost about to stay with KDE5, when I found the show stopper for me. I am a German living in Brazil for quite some time, which means, I bought most of the computer hardware here in BR, and also the keyboards which happen to be Brazilian Portuguese models. Nonetheless, I prefer de_DE localization of my desktop. For some idiocy, KDE5 hard-linked the desktop localization to the keyboard layout, which let me in the situation to either stay with the br_PT desktop localization or to just try GNOME 3. Now, I am willing to like the latter.


----------



## Sevendogsbsd (Dec 19, 2018)

Thanks for the reply - you are correct, it's not only gtk and qt. I do not use desktop environments such as Gnome and KDE any longer because they are far too complex and I don't need whatever functionality they bring: I have all the functionality in a set of simple tools I use. 

I was a gnome user for a very long time (since version 1.0), until gnome 3 came out. I dropped gnome quickly, because the UI is so simple as to be unusable (for me), yet under the hood, it is tremendously complex. I finally switched to KDE at the end of my Linux usage but then when I moved completely to FreeBSD, I dropped it all and went simple. I don't care about styles, looks, etc, as long as my fonts are sharp and tools I use work well, which they  do.

The good thing about all of this is that we have choices! It is fortunate that we in the open source community can use whatever we like to and are not forced to use something designed by a committee, in a vacuum and driven by a profit schedule.


----------



## wolffnx (Dec 19, 2018)

obsigna said:


> In addition I cannot share your opinion about CSS



Sorry, I expressed wrong about CSS files, do not bother me, CCS or XML files for configs..
Only I don*'*t like the lack of organization and unity in GTK3.


----------



## wolffnx (Dec 19, 2018)

Sevendogsbsd said:


> *The good thing about all of this is that we have choices!* It is fortunate that we in the open source community can use whatever we like to and are not forced to use something designed by a committee, in a vacuum and driven by a profit schedule.



You're right, I hope it continues like this.


----------



## obsigna (Dec 19, 2018)

juan9182 said:


> Sorry, I expressed wrong about CSS files, do not bother me, CCS or XML files for configs.



Well, the GNOME 3 extensions basically consist of CSS stylesheets and JS files for dynamic stuff.


----------



## Sevendogsbsd (Dec 19, 2018)

Like I said, it seems very odd that gnome uses web page technology for UI elements. Never did understand why. I never found gnome  to be very stable though: had a lot of UI lockups that were unrecoverable. One of the major reasons I don't use it any more.


----------



## obsigna (Dec 19, 2018)

Sevendogsbsd said:


> Like I said, it seems very odd that gnome uses web page technology for UI elements. Never did understand why. I never found gnome  to be very stable though: had a lot of UI lockups that were unrecoverable. One of the major reasons I don't use it any more.



Because web technology allows for an ideal separation of software functionality (the backend) and the presentation (the frontend). This is beneficial in several ways, one of which is cross-platform GUI development. For example I programmed a GUI application for measurement, display, evaluation, and high quality output of electrochemical measurement curves in Objective-C/Cocoa on Mac OS X. For targeting Windows, I had the luck of the existence of The Cocotron, and with that, this application is available for macOS and Windows - see: https://blog.obsigna.com/Downloads/en/CVA/, the screenshots are some years old. Here come a newer one for Windows 10:






Nowadays, I completely separated the measurement functionality into a HTTP server (which I wrote for this special purpose in C) and measurement methods realized by modules. The functional backend may run on a headless server – FreeBSD of course. The GUI is all done by the way of web technology HTML/CSS/SVG/JS(AJAX) usually in a Web-Browser, but it would be also possible to move this into a standalone application having only one view, i.e. the web view:




Believe it or not, the presentation looks almost the same in Safari (Mac, iOS), Firefox, Chrom(e|ium - any platform, desktops and androids), Edge, and even IE6 does work.

Some time ago I showed here in the Forums another example of the benefits of having the functionality separated in a headless backend and using a web frontend for the operation and presentation, see: https://forums.freebsd.org/threads/computer-algebra-system-cas-in-c.64554/#post-384508

So yes, I can fully understand the move to standardized web technologies also for the GUI of Desktops, und I fully welcome this approach.


----------



## Sevendogsbsd (Dec 19, 2018)

Interesting but we have different opinions: I shun complexity and prefer simplicity. I personally will never embrace this sort of user interface because I find things like this very difficult to use. This is one of the main reasons I moved to FreeBSD: simplicity. Additionally, having web-based UI elements on the desktop may present an entirely new set of security challenges. I don't know this for sure because I have not researched. Microsoft attempted web on the desktop with windows 98 and it was a monumental failure, but technology has changed since then. Some Linux apps use web technology frameworks now (electron) but these are basically leveraging browser technology.

As I mentioned earlier, I am glad we have choices.


----------



## ryuuji (Dec 27, 2018)

Nice thread. I was looking for a alternative to Firefox which was too slow for a old laptop and it seems that Falkon is the one for me (atleast for now). Starts fast and feels just as fast. Otter gives me headaches, sometimes does not start (no errors in terminal) and is a pain in the a** when closing it (stays open unresponsive for minutes slowing down the system). 
For file manager I opted for pcmanfm ... xfe is blazing fast but visually too outdated ... thunar is a tad slower than pcmanfm and requires alot more deps than pcmanfm.


----------



## reddy (Dec 27, 2018)

Sevendogsbsd said:


> Like I said, it seems very odd that gnome uses web page technology for UI elements. Never did understand why.



On the opposite, I think that we would have been better off if desktop frameworks had had the idea of leveraging CSS earlier. CSS brings a lot to the table like the ability to separate styling and content. This means developing graphical applications much faster, while having a much higher level of maintainability. Plus with CSS, developing desktop interfaces can be done much faster and cleanly for example by mocking using divs on a web page instead of using messy code-generation designers - or worse - incurring a build cycle to test every change.

CSS is currently mainly used on the web but this does not mean that it has to be a web technology. This is similar to the situation with javascript, while javascript is used on the web, it has proven itself to also have substantial value on the desktop (and even the server, ie. nodejs - that I would probably never use for a large project, but still it exists and as its value). The now ubiquitous JSON configuration files even used by FreeBSD (for example for jails) are also an influence of JavaScript. In a nutshell, not using CSS means reinventing the wheel and - most of the time - providing an inferior solution to a long-known and long-solved problem.

If I have to develop a desktop application from scratch in 2018, the ability to style using CSS would be the first thing I'd look for. And I think I am far from being the only one. For this movement is not the usual technology fad, on the opposite, this is a long overdue based on sound fundamentals.


----------



## Sevendogsbsd (Dec 27, 2018)

This is precisely why I use a bare bones window manager and not a DE: I don't care about style, looks, etc, just functionality. I have wallpaper I change regularly but the toolkit elements (for gtk) are set and I never change them, no need for me. I have no desire to use a DE because for my workflow, it adds nothing and "shiny looks" only detracts from my experience because it adds pointless complexity and chance for error.


----------



## obsigna (Dec 27, 2018)

ryuuji said:


> Nice thread. I was looking for a alternative to Firefox which was too slow for a old laptop ...



I am not able to prove the following by 100 %, since Firefox is a moving target. At the beginning of this year I setup Firefox together with OpenBox on FreeBSD 11.2 in a virtual machine, basically for testing purposes. And I experienced very slow starting-up of Firefox, generally it took over a minute. I saw a similar behaviour of Firefox already on a Windows 7 Pro and Windows 10 Home machine. On Windows Firefox became much snappier, once I disabled ALL of the telemetry settings. So I did the same with Firefox on FreeBSD in the virtual machine and it started-up without any delay. However, after finishing with testing of the system in the VM, I didn’t come to touch Firefox anymore on FreeBSD, and perhaps Mozilla changed something about the starting-up stalls in the meantime.

Anyway, in order the crucial settings won’t become forgotten, I wrote a post in my BLog: My Advanced Privacy Settings for Firefox


----------



## reddy (Dec 27, 2018)

Sevendogsbsd said:


> This is precisely why I use a bare bones window manager and not a DE: I don't care about style, looks, etc, just functionality. I have wallpaper I change regularly but the toolkit elements (for gtk) are set and I never change them, no need for me. I have no desire to use a DE because for my workflow, it adds nothing and "shiny looks" only detracts from my experience because it adds pointless complexity and chance for error.



The thing is, CSS is also used to position widgets/elements within the window of applications using GTK.  This is not only about providing fancy DE effects. Even the sober applications you seem to value massively benefit from this in terms of development time and ease of maintenance.


----------



## Sevendogsbsd (Dec 27, 2018)

Is this in gtk3 only or did gtk2 use that as well? Just curious.


----------



## reddy (Dec 27, 2018)

Sevendogsbsd said:


> Is this in gtk3 only or did gtk2 use that as well? Just curious.


This was introduced with GTK3.


----------



## Sevendogsbsd (Dec 27, 2018)

reddy said:


> This was introduced with GTK3.


 Good to know, thanks.


----------



## drhowarddrfine (Dec 27, 2018)

I don't recall Firefox ever having start up problems on FreeBSD and I run with default settings all day long since FF version 0.9


----------

