GTK changing shit again

blogs.gnome.org/desrt/2016/06/13/gtk-4-0-is-not-gtk-4/

GTK throws away stability yet again. I though the whole "GTK 3 will be stable when GTK 4 releases" was just a joke.

Other urls found in this thread:

wiki.archlinux.org/index.php/Qt#Configuration_of_Qt5_apps_under_environments_other_than_KDE
bazaar.launchpad.net/~elementary-apps/pantheon-files/trunk/files/head:/filechooser-module/
blogs.gnome.org/desrt/2016/06/14/gtk-5-0-is-not-gtk-5/
twitter.com/SFWRedditVideos

Remind me again when they finally mange to write a proper file picker.

Fug I already hate that I need both gtk-2 and gtk-3 for all the different tools and applications out there.
Now we will need gtk-2, gtk-3, and gtk-4.0, gtk-4.2, gtk-4.4 etc. Cancer.

Nice, did they finally kick glib to the curb and fix their library's utterly broken malloc failure behavior?

Oh, no? Then it's still utter shit.

Just switch to Qt like the rest of us. KDE is superior to Gnome anyway. Unless you hate features and settings that is.

Dynamic linking cancer strikes again

I guess I do hate features and setting then, because I absolutely love GNOME.

If only Qt had C bindings. inb4 just use C++.

KDE user here.

Really like it but feel like Plasma may've been a mistake. Really buggy and I'm yet to find any truly useful widgets to place on my desktop.

I suffered enough with gtk-3-20 already. Go fuck yourselves Gnome you fucking feminazi faggots

That article implies the exact opposite.

GTK should really be separated from Gnome; I don't say that as a knee-jerk reaction, but the blog post very clearly explains why it's just not appropriate for them to manage it any longer.

The biggest thing is that they don't *want* to guarantee a stable API or expose useful options, because they are afraid of being saddled with a bad decision. As the maintainers of a widely used toolkit... That's the exact opposite of what they should be doing.

On one hand, at least people will be able to anticipate breakages, but on the other hand they don't seem to have decided on a warning or depreciation cadence; we don't know *what* will break in those 6-month brackets...

It's "better" than breaking on fucking point releases, in the same way that getting hit by a car is "better" than being creamed by a transport truck.

...

The Qt guys were demoing a new Wayland back-end. You can write (Wayland) compositors *very* easily, and they were showing off a tiling WM as one of the examples.

When Wayland becomes common, expect a flurry of options to be made available.

This entire blog post is about guaranteeing a stable API, in conjunction with an unstable API if a developer can maintain it regularly and wants more things exposed to him.

my body is ready, right now trying i3 wayland backed wm

god you're a faggot. I bet you use game maker.

So in best case we get a non-horrible file picker in two years, but more realistically never ever?

What does this even mean? Just use whatever WM you like with all the Qt apps. (i use i3) Just don't forget to fix the stupid:
behavior by installing and setting up qt5ct, and putting "QT_QPA_PLATFORMTHEME=qt5ct" (export it in ~/.profile or ~/.bash_profile whatever applies to you)
wiki.archlinux.org/index.php/Qt#Configuration_of_Qt5_apps_under_environments_other_than_KDE

I already told you niggers but you didn't listen! gtk3 is the cancer of all of gtk ever made.

Why can't they just rollback to gtk2 theme base as default and stick to that?

...

you know you can write your own file picker right?

bazaar.launchpad.net/~elementary-apps/pantheon-files/trunk/files/head:/filechooser-module/

good luck have fun.


because gtk2 was a piece of shit and having multiple theme engines that are all broken ugly cancer in different ways was exactly the kind of crappy hacks on hacks on hacks that pissed the developers off in the first place.

Learn to read. Yes, the blog post is about making the API more stable. They also said they don't want to worry about a stable/exposed API because it involves real not-fun adult work.

The entire post is them coming up with a frankly terrible middle-ground between coding a widely used toolkit responsibly, and reserving the right to fuck things up because they can't go a week without major breakage.

They'll break the API just often enough to piss off anyone trying to make anything while releasing enough co-installable versions of GTK to make a new form of library-hell... And to boot they never once mentioned a plan for giving advance warning for API breakage. Every 6 months you just have to pray too much of your stuff won't crumble.

Literally the only time your app/theme/whatever will be "safe" is when your version of GTK has been superseded... Do you think Gnome devs, who already don't want to put in effort with one version, will take the time to backport security patches and fixes to multiple old versions?

So, yes, they are making it more stable, but they clearly don't want to, and the end result is a future mess which will make versioning and compatibility a nightmare.

On a side note; people think KDE/Qt is bloated?

How will it feel when you have to install three or four versions of GTK on your system because different projects are on different versions? Chrome? GTK3! GIMP? GTK4! Nautilus? Hell, maybe GTK5. Now run them all at the same time and see as your ram is consumed because they can no longer run in shared memory!

>>>/reddit/

They don't want to worry about breaking a stable API by exposing more features, dumbfuck.
Get some reading comprehension.

And of course, once they hammer out those features and they're convinced they can live with them forever, "unstable" will be rolled into stable.
"Unstable" in this context is a moving target for shit they don't feel comfortable exposing and maintaining forever.

So don't tell me to learn to read. You're the dumb faggot who needs to learn to read.

KDE is bloated, m8. Qt not too much, especially since the module granularity is really great.

...

why not just use FLTK everywhere instead

it can be staticaly linked too

I ask myself that too.

Are you an idiot? You don't break APIs by exposing new features, you break APIs by changing or removing features. The only reason adding a feature would break something is because you did a shit job the first time necessitating a change or removal.

I'll speak to you like a child:

Every day I bring you a basket with apples. You decide to make apple pies. You get all the apple pie stuff for years. If I add asparagus to the basket, you can still have the apples. It doesn't impact you because you still make apple pies. But I'm a gnome developer and my arms get tired because two things are too heavy, I don't want to maintain a basket with two things. So I ditch the apples because I fucking love asparagus. Guess what? All your apple pie shit? It's fucking worthless now.

ASPARAGUS PIE. THAT'S BREAKAGE, MOTHERFUCKER.


Here's the problem: Where are these "stable" branches you're talking about?

The dev actually said "the need to keep the API mostly stable for years at a time has somewhat slowed the pace of development and created a hesitation to expose “too much” API for fear of having to live with it “forever”."

So the solution is...

"Each 6 months, the new release (Gtk 4.2, Gtk 4.4, Gtk 4.6) will break API and ABI vs. the release that came before it."

So, dumbfuck, how has BREAKING IT EVERY 6 MONTHS magically become some sort of stable branch?

The only "stable" branch implied is the obsolescence branch, because Gnome devs have moved on and stopped breaking whatever GTK version you used. Which is why in 5 or 6 years you'll need several GTK installations because developers will prefer older potentially unmaintained versions of GTK, since whatever is the newest will *always* break in 6 months or less.

SEMANTIC VERSIONING!

Follow it properly, and this whole situation can be sanely avoided!

Don't forget how they will inevitably not honor each other's configuration files correctly. So whatever desktop that uses them will look like a clusterfuck.

They're talking about internal stuff, that would provide new features, where they can't be certain that they want to maintain forever.
Nigger you are a fucking retard that has no idea what you are talking about.
Your wall of text confirms that you're damage controlling hard.

Once again, you are a fucking retard. You had no idea what you are talking about, clearly have no reading comprehension at all.

Or that it couldn't be done better, in effect hammering out the best way to expose it until they decide they would like to maintain it as 'stable.'

You have very clearly NEVER made a theme, extension, or application with GTK. This isn't internals, their shit breaks so much it's a fucking meme. Linux Kernel does internal API breaks, userspace is fine. Nobody cares. Gnome breaks it all.

I didn't know ripping your idiocy to shreds was damage control. Are you the kind of 13-year-old that gets upset when things are explained to you? I can use smaller words, if it helps.

what, the
GNU's Not Unix Image Manipulation Program ToolKit Plus
library making stupid decisions? you don't say

FLTK does not support Emoji Creole™

...

Shitposts on Holla Forums are as mystifying as ever.

we're not arguing about that
we're arguing about their plan going forward
I am so sorry that you leak the reading comprehension to understand what they're talking about

kek, but srsy I would like to do that, I love asm and superoptimization makes my dick hard.

Naw, QT is good but KDE is bad

blogs.gnome.org/desrt/2016/06/14/gtk-5-0-is-not-gtk-5/

Update on the situation, still retarded I'd say.

I fucking wish all the apps I need the most were qt instead of gtk.

Wow, it's almost like I was right and the other retarded faggot had no reading comprehension.
You niggers sperg about everything, even if they try to fix the shit you sperg about.

Why is this somehow hard for people to understand? This "change" is nothing special.

2 years (24 months) release cycle for each major version:

6 months - 4.0 (unstable)
12 months - 4.2 (unstable)
18 months - 4.4 (unstable)
24 months - 4.6 (stable)

Next release is 5.0, next stable release is 5.6 and the cycle continues. The developers should target last stable version which is guaranteed to be released every 2 years (x.6 version).

4.0/4.2/4.4/4.6 probably can't easily be installed on the same system at the same time. So that the reason they jump the number to 5.0 and make sure it can be installed with 4.x releases.

This whole change only brings good news, since at least GTK devs will now guarantee a stable release. How numbers are assigned compared to other projects, really is pointless to argue about.

why don't we have id's on Holla Forums? I don't care if it could be used by a third party to datamine, I want to use it to datamine, and Jim's datamining our shit anyway.

Nobody actually bothered to read the blogpost, it would be nice to be able to bully the people writing consistently and wrong posts.

Also KDE Plasma user here. I just fucking wish there was a stable (bug-free) simple taskbar desktop environment with basic modern features like Cinnamon has, without all the bloat of KDE.

The only real Qt desktop environment alternative to Plasma is LXQt and even that is too new, not enough features.

I like the KDE Plasma in general, but it just feels like endless hole of tiny problems / inconsistencies, lots of outdated KDE applications. It feels like lots of programmers were bored and had to scratch an itch and implemented lots of features, then abandon those projects/features in few years. Now nobody feels like maintaining this shit and we patch / use broken shit until someone else is fed up enough and writes an alternative which will be abandoned again in few years. 2 steps forwards, 1 step back.

While I don't like GNOME as desktop environment it really feels a lot more polished and bug-free. At least GTK+ implements some modern features like headerbars and CSD... In Qt ? probably never...

The blogpost was kind of messy till they released an update. In fact, that seems to be the reason why they released an update.

Except when that project is a goddamn library others are supposed to link to. The fact they are going with this versioning scheme says that they have learned nothing from all the instability caused by gtk 3.

Each x.6 will always be stable forever and GTK+ devs said developers should target that. It will also be in sync with LTS releases. There is no 4.7/4.8 etc...

Once 4.6 is released and developers target that, the very next release is 5.0 and it is co-installable with 4.6 on the same system. There is no problem. Every release until 4.6 is considered unstable, just like it was until now.

Also here is an example:

Current stable: 4.6
Latest version: 5.2

Developer compiles their application against 4.6.

Old stable: 4.6
New stable: 5.6

Developer compiles their application against 5.6. If GTK 5.6 is not in distro's repository then developer distributes the old version of their application which was compiled against 4.6

Developers who don't want to deal with unstable should always use only: 4.6/5.6/6.6/7.6.....

For example: If the current version is 5.4 and since x.6 is always the last release, then your distro will package 4.6 also. And you can have both 4.6 and 5.4 installed at the same time.

- - - - -

Then use the older version of that application which uses 4.6. If application is new and wasn't compiled for 4.6 that fucking too bad. Things work now the same way.

This whole "new" way only brings guaranteed stable versions for developers and consistent versioning system for GTK+. Not really the best way, but still 100% better then before. No drawbacks compared to current system. People are only looking for problems since it GNOME/GTK, if it was Qt they would praise the same system.

I wish all the good themes (Numix, Arc, etc) weren't availble only on GTK based DEs. Breeze still doesn't look as nice as those themes to me.

...

Please, kill yourself. This Holla Forums-tier retardation needs to stop.

...

Fullofticks is ossum tbh lads.

Heresy!

This will
JUST
HWs shit up user.

...

For GUI applications, C++ makes perfect sense.

Are you trolling? Those are the biggest mistakes GTK3 made. They further contribute to the problem of inconsistent user interfaces on linux by ignoring the window manager's decorations entirely.

For identities, use reddit.
I'm serious. The biggest advantage of an imageboard is the anonymity, and if you want to throw that out you are probably better suited to somewhere which does not allow anonymity.

This man speaks the truth.

I use compton as my compositor with the "-c -C" arguments, which makes it draw shadows on open windows. It works perfectly, until you install anything gnome. The fuckwits in charge decided that, when gnome software detects a compositor is running, suddenly all gnome software will enable its own client-side shadow. This means that all non-gnome windows have only a nice-looking shadow drawn by compton, but gnome software draws its own shitty shadow THAT I NEVER ASKED FOR and then compton draws on a shadow on top of that, creating a stupid double-shadow. Why would gnome devs allow this? Because fuck you, that's why.

Actually windows 95 made those mistakes 20 years ago. GNOME is so far behind the curve and stuck in its reality distortion bubble it actually thinks those are modern features

Just give everything shadows to match the Gnome software you idiot.
PROBLEM SOLVED

Use GTK2.

It was. It was the GIMP Tool Kit.
Gnome stole it away. (Aka "GTK" 3.0)
GTK 2 is the last gtk.

not true, the next GTK will be an emulation shim on top of Qt :^)

I know you're joking but he said he's already got shadows, but that some GNOME/GTK3 software is adding an extra shadow, resulting in windows with a shadow underneath their shadow.
The workaround would be either to disable shadows (in which case you'd only have the GNOME ones), or to uninstall the problem software.