[HN Gopher] Audacious 4.0 released, switches from GTK to Qt 5 ___________________________________________________________________ Audacious 4.0 released, switches from GTK to Qt 5 Author : jrepinc Score : 127 points Date : 2020-03-22 19:18 UTC (3 hours ago) (HTM) web link (audacious-media-player.org) (TXT) w3m dump (audacious-media-player.org) | rubyn00bie wrote: | Kind of a tangent, but why switch from GTK to Qt 5? Or rather, | why Qt 5 rather than some other cross platform UI framework or | even GTK 3? Is it ease of porting it for new features compared to | something else? And/or is Qt just that much nicer to use? | kitotik wrote: | Curious, what would you choose? | | For whatever reason, the cross-platform UI story seems dire as | ever if you don't count web. | paride5745 wrote: | GTK3 is becoming very GNOME3 specific, while Qt5 is still | agnostic and easy to port on different platforms. | cycloptic wrote: | Can you elaborate? If you're talking about the client-side | decorations in GTK, those are up to the app developer to | choose if they want them or not. | ori_b wrote: | As a user, I don't want them, and I don't want the app | developer to make that choice for me. | arghwhat wrote: | The developers makes _every_ decision on how an | application works and looks (It 's _part of the code_ ). | The top row of pixels is no different. | rixed wrote: | The developers of Qt applications do not force how the UI | will look like. Users can customize it with local style | sheets (usually from the desktop environment). | [deleted] | cycloptic wrote: | GTK also supports customization via local style sheets. | | In Qt it's absolutely possible for applications to force | client-side decorations and force a certain stylesheet. | Maybe it's not common in the apps you use, but again, | it's up to the app developer if they want to make use of | those things or not. | dependenttypes wrote: | > GTK also supports customization via local style sheets. | | They also break them at every release. | cycloptic wrote: | That's just plain FUD. The only release I remember | breaking CSS was 3.20, and that was because all the CSS | was refactored to allow for way more theming | possibilities. | | Regardless of that I don't see anything based on | "cascading styles" as lending itself to a stable theming | system anyway. The CSS is probably going to change any | time a widget is added/refactored/bugfixed, this holds | true on the web as well once you build up a complex | library of React components or whatever. The point of it | is that there are multiple styles from multiple sources | that can cascade together. It's powerful but it can | result in a lot of complexity, anyone who's had to add | !important directives can attest to that. It needs to be | strictly managed by the developers to really work | correctly and to prevent the style overrides from getting | out of hand. Allowing custom user CSS is only for power | users who understand the caveats. | arghwhat wrote: | You can do that under Gtk3 too, but like with Qt5 it only | allows small adjustments in line with how the developers | built the UI. You can affect layout and style of | _certain_ components, but that 's it. | | From the perspective of making design decisions, it's | somewhat equivalent to swapping the phone shell on a | Nokia 3310. | infinity0 wrote: | It feels like everyone someone voices an opinion about | GTK3 explaining why they don't like it, some GTK3 fanboy | has to chime in questioning the opinion and implying it | isn't rational. Yeah, this makes me want to stick with | GTK3 even less. | | People don't have to explain their preferences in a | rational way, they will just switch away from GTK3. It's | cheaper. | | Successful developers will try to interpret these users' | feedback in a self-critical, introspective and positive | way, and tweak their product based on the feedback. As | opposed to continually challenging the giver of the | feedback to explain their opinion in more detail, as if | by repeatedly digging deeper and deeper into an opinion, | you will at some point find some fundamental logical | contradiction in their views that will make them re- | evaluate their life philosophy on why they just don't | like GTK3. | | I for one think the two opinions given above are | perfectly clear ("GTK3 is becoming very GNOME3 specific", | "As a user, I don't want them") and can't see why further | clarification is being requested. If you really need | clarification on these perfectly clear opinions, it is | your problem. | arghwhat wrote: | No clarification at any point was necessary. Despite your | rant here, I made no claims as to which was better, or | whether a users opinion on that particular aspect was | valid. Beauty is in the eye of the beholder, so one | cannot claim right or wrong. | | What I stated was that development decisions, whatever | they are, are up to the developers, including which | frameworks they wish to use, and how they wish to use | them. Saying in any form that you don't want developers | to make decisions is nonsensical, as they would not be | able to write anything then. Decisions have to be made, | compromises chosen, and ultimately, not everyone will get | their will. | | If you don't want other developers to make decisions for | you, you're stuck writing all the software you want to | use yourself. | cycloptic wrote: | A toolkit unfortunately can't enforce that. You have to | ask the app developers to change their design. | Paianni wrote: | Cross-platform toolkits are the lazy way. Good quality graphical | apps are available in derivatives that match the interface | guidelines and optimum toolkits/APIs of their platforms. | betenoire wrote: | I think I have a similar preference, but lazy and good are not | mutually exclusive | DagAgren wrote: | In this case, though, they are. There are no good cross | platform UI kits, and there probably never will be. | dependenttypes wrote: | > There are no good cross platform UI kits | | Qt is one. | simonh wrote: | Good quality graphical apps sounds great, but do those exist | for every single use case? Unfortunately not. It doesn't matter | how great the native graphical sketching apps on MacOS and | Windows are, that isn't going to help me when what I want to do | is analyse packet captures. That's when I reach for Wireshark, | and do do full of appreciation to the devs for the excellent | tool they have provided. | | Would it be better us every platform I use it in had an equally | high quality fully native port with full feature parity across | platforms? Sure, but I also understand the huge extra | commitment of resources that would require, so I'm content to | let them choose the trade off that works for them. | randyrand wrote: | Any screenshots? | jccalhoun wrote: | there's one on the front page: https://audacious-media- | player.org/ | MawKKe wrote: | I just built it on ubuntu 18.04. It looks pretty much identical | to the native 3.9 version, except for icons. | | FYI anyone reading this, take a backup of your | $HOME/.config/audacious before trying the new version. It did | something funny there and no files would play on the old | version anymore... | overgard wrote: | GTK integration in terms of look and feel on windows and macos | has been so bad for so long that I think the only valid use case | for it is if you're targeting gnome specifically. | edgarvm wrote: | Qt's license and cost is another valid reason to continue | developing on GTK | emilsedgh wrote: | Qt is free and LGPL for Audacious, any other FOSS app, or any | other project that is not looking to ship a patched version | of Qt. | slavik81 wrote: | It's even free if you want to ship a patched version of Qt, | as long as you also share the modified Qt code. | mixedCase wrote: | All the important parts of Qt are available under LGPLv3. | This only makes a difference to you if you want to do | Tivoization of your software (Gtk uses LGPLv2, this being the | only major difference AFAIK). In which case you still have | the option to buy a commercial license. | jjoonathan wrote: | Yeeeeahhh.... at the moment. They have gotten really | aggressive about commercial licensing recently, and even a | conservative extrapolation should give one pause. | | Today they might limit themselves to forced registration, | SEO, and spamming business contacts with carefully crafted | statements designed to stir fear, uncertainty, and doubt | around free licenses by strongly suggesting (without | actually claiming) that commercial use without a commercial | license is illegal. But tomorrow? Also, keep in mind that a | business partner who isn't already familiar with Qt and | LGPL is going to be about 10x more susceptible to the FUD. | That's the whole idea. | | My guess: 30% chance of an ugly fork and lots of drama in | the next few years. Then, absent a change in direction, | another 30% chance in the few years after that, and so on. | nabla9 wrote: | Qt will be free because there is agreement with KDE Free | Qt Foundation | | https://dot.kde.org/2016/01/13/qt-guaranteed-stay-free- | and-o... | jjoonathan wrote: | The Qt Company went over my head and tried to deceive my | boss (as I perceive it). | | We don't even use Qt. I was just evaluating it. A year | before they "reached out." | | I still see that as a strike against Qt, even though I | understand that the existence of a technically free fork | is effectively guaranteed. | stormdennis wrote: | Yes, there is a lot of FUD about the licensing for Qt | when you search online, definitely not helped by how | unclear the Qt site's explanation of it is (to me at | least) | jjoonathan wrote: | > unclear | | That's charitable. The FUD is consistent, persistent, and | targeted enough that I'd call it "intentionally | deceptive." | | Monetizing open source is hard. Maybe this is necessary, | and if it is, maybe that's fair. But it's also fair to | stay away because of it. | Frondo wrote: | I don't find this unclear at all. I'm not sure what you | would do to make it clearer. Thoughts? | | https://www.qt.io/download-open- | source?hsCtaTracking=9f6a217... | jjoonathan wrote: | My boss looks at this page, he sees that open source | programs can use Qt for free and that commercial programs | need to pay. That's not the case, but the page is | carefully worded to prevent him from confidently coming | to the correct conclusion. | | If this were the extent of the shenanigans, I wouldn't be | mad. I like having a "help me sell this to my boss" page. | But it isn't the extent of the shenanigans. They went | around me to shake someone down on my behalf (as I | perceive it). Last time it was my boss. Next time I | choose a GUI framework for an open source side project, | I'll primarily worry about it being my users. | cycloptic wrote: | >he sees that open source programs can use Qt for free | and that commercial programs need to pay. | | Where does it say that? Can you mention what he is having | trouble with? I just took a quick glance at that link in | GP and it seems to spell out the obligations of the LGPL | pretty clearly. | minraws wrote: | > Make "open" consumer devices | | So Macs are out of question... Can't be signed can they? | | What if we get a commercial license? Apple disallowes | GPL... | | Can't support GTK either, Expat Licensed GUI alternatives | please...(I suggest Godot but it comes with a bit of pain | and some baggage as well) | | There are also other corner cases that they might want to | cover, with more documentation.(Not sure if I have missed | something) | | If anyone has more info pls do share it. :) | arendtio wrote: | I thought the license issue was one of the past? | cztomsik wrote: | Both reasons are why I'm trying to develop an OSS alternative | with easiness & platform-independence of the web but much | lower system requirements than what electron has. | | I'm currently close to prealpha, if you're interested. | https://github.com/cztomsik/graffiti/ | wccrawford wrote: | A friend and I were just wishing something like this | existed. "pre-prealpha" is a bit too early for me, but I | definitely wish you luck in this. | jamesgeck0 wrote: | Under project scope, there's this statement: | | > To name just a few things you usually don't need: ... | flawless i18n & accessibility | | Lack of basic accessibility support is (or should be) a | complete nonstarter for any serious project. | simias wrote: | Qt being C++ also makes creating language bindings often | harder so not all languages will let you build a Qt | interface. GTK is C so it's more straightforward. | jamesgeck0 wrote: | Switching to Qt isn't automatically a slam dunk on Windows. | | I can tell when an app uses Qt because it opens in a | microscopic window on my Surface. VLC users have been waiting | on a fix for Qt-related fractional DPI scaling issues on | Windows for years. | joezydeco wrote: | All Qt developers have. I wouldn't put all the blame squarely | on Qt. Windows high DPI support is just awful on top of Qt's | neglect. | | Have you ever hooked a high-DPI laptop to a low-DPI second | monitor? What a freaking headache that is. | | Say what you want about MacBook owners being brand snobs, but | they _never_ have to deal with this nonsense. | akiselev wrote: | As someone who regularly uses a 15" MacBook Pro (for work) | and a workstation desktop + Thinkpad X1 Extreme with | Windows 10/several Linux distros (for hardware and software | personal projects, respectively) with lots of expensive | brand hardware for both laptops, I loathe them all with a | passion. | | MacBooks get the hardware DPI consistency sort of right, | but multimonitor support is still flaming garbage to the | point where I have to run caffeine 24/7 and use rigid | window manager layouts configured per scenario (coding at | my desk, pair programming at someone else's desk, meeting, | presentation, etc.) to be able to efficiently context | switch between the modes and keep the screensaver from | mutilating my layout. Windows gets the window layout | consistency between monitor configurations mostly right if | you ignore chrome and Electron but multi-DPI support is | flaming garbage. Linux is completely hit or miss for me | depending on the monitor and drivers I've got configured | but in a desktop you can at least make Linux reliably _not_ | flaming garbage. | | I just now realized that my 20th anniversary with computing | must have passed in the last few months and looking back, | all I can remember is how much every operating system I've | ever used has gotten in my way. | | /rant | toastercup wrote: | Audacious is pretty slick (especially with this latest release), | but lacks the features that Foobar2000 has that I need (namely, a | directory/folder view that can replace the active playlist when | clicked). | | If anyone is looking for a decent Foobar2000 alternative, Foobnix | (https://github.com/foobnix/foobnix) has worked really well for | me. It has some rough edges and doesn't seem (that) actively | maintained, but it gets the important stuff right. Haven't come | across anything else quite like it for Linux yet, unfortunately. | | If there was a Foobar-like folder view plugin for Audacious, I'd | switch to it in a heartbeat. | Arnavion wrote: | I just run foobar2000 under wine. The font rendering is a bit | iffy (some lines of text get clipped horizontally and | vertically, as if the calculated dimensions are smaller than | the rendered dimensions), but it doesn't bother me enough to | investigate. | | That said, most of my music listening these days has been | pointing mpv at an internet radio steam. | modzu wrote: | just posting to say thank u and share some love for audacious | Naac wrote: | Looks like this is moving from GTK2, not GTK3 ( latest ). | MuffinFlavored wrote: | Does this mean GTK2 and GTK3 are... to be avoided for new | projects / dead? | | How do Qt projects look + feel when ported to Mac OS X? Do they | look near native or can you tell it's a Qt project and not a | Cocoa project? | empyrical wrote: | Qt5 can be made to look pretty close to a native Mac app, but | one thing I haven't figured out yet is if there's a way to | get that "bouncy" effect you get when you scroll to either | end of a list. | syockit wrote: | Is this "bouncy" effect the elastic one pulling against the | end, snapping the list back to position when you release | it, or is it the the one where the scroll ricochets off the | end when you apply great force in order to quickly scroll | to the end? The former is a very nice UI cue, but who on | earth thought the latter was a good idea? As an Android | user, I wish there was a way to disable the ricochet on all | apps. | empyrical wrote: | I am referring to both styles of "bounce". Would be nice | to have the former to implement "pull to refresh" | unixhero wrote: | Well if that's the means to an end, then this world has | gone just crazy. | kelvie wrote: | They don't look quite native, but I feel the trend is moving | away from native-looking apps anyway (like via electron, or | forgoing an UI at all and just doing a web UI). | jcelerier wrote: | > Does this mean GTK2 and GTK3 are... to be avoided for new | projects / dead? | | not dead but... here's for instance how Wireshark looked on | macOS when it was using GTK : | | https://blog.wireshark.org/wp- | content/uploads/2013/10/osx-x1... | | and here's how it looks now that it is using Qt : | | https://news- | cdn.softpedia.com/images/news2/wireshark-3-0-re... | lazka wrote: | Here is how a gtk app looked in 2014 on macOS: | https://i.imgur.com/1e669Tp.png | ori_b wrote: | Yeah, nobody set a theme for GTK in that screenshot, and | GTK themes tend to look different from the native theme on | non-Linux OSes regardless. | | But, the trend is towards Electron, which also integrates | poorly with the OS -- so, I'm not sure how much looking | native matters any more. | LaGrange wrote: | Eeh. It might be perception, but I feel like it was the | other way around -- around the time iPhone came out, a | lot of apps eschewed compliance in favour of achieving | clearer identity. I think that cleared the way for | electron -- I actually vaguely remember some people | talking about using html-based apps because they made | achieving a specific visual design easier, not because of | the portability benefits. | | And for example AFAIK the new Apple Music app is using a | web view for some parts of itself, and as much as I like | having "light" apps, I generally prefer interacting with | Electron UIs over most QT apps. | ducktective wrote: | not bad-looking for gtk? | gray_-_wolf wrote: | I like the first one more, am I weird? | toast0 wrote: | The first one isn't Mac like --- the menu bar doesn't go | on the top of the window. I don't necessarily think | that's great, but that's the way it should be on a Mac. | pojntfx wrote: | NO. GTK has really been getting more and more import for | FLOSS as the Librem 5 and the vast majority (Ubuntu switched | to GNOME by default, so GNOME is now the default on | | - Ubuntu - Fedora - OpenSUSE - Debian - CentOS - ... | | GTK+ since version 3 is really neat. They rust re-did the | site as well: https://www.gtk.org | chrisseaton wrote: | > How do Qt projects look + feel when ported to Mac OS X? | | They're in the uncanny valley. | bjoli wrote: | a lot of apps look non-native on os X, with apple starting | the trend of ignoring their own HIGs about 5 years ago. | | I don't really mind, since osx happens to be my daily | driver since about a year, but whenever people claim that | osx is visually coherent I can't shake the feeling they are | stuck in 1998 and Mac os 8. | chrisseaton wrote: | Looking _different_ is ok. | | The problem is that Qt and other cross-platform | frameworks tend to look _glitchy_ , as in their | differences are non-intentional and jarring. | | They also tend to just look pretty old-fashioned, because | these frameworks are pretty old now and the controls, | layouts, and workflows they provide are a bit old- | fashioned. | | So the first impression you get for software using Qt is | old and glitchy. Which isn't great. | aasasd wrote: | > _How do Qt projects look + feel when ported to Mac OS X?_ | | I haven't seen any cross-platform toolkits that abide by Mac | standards. Funny enough, the closest is Mozilla's toolkit. | Other than that, there are always telltale signs--e.g. no one | seems to grok Mac's toolbars even though they're organized by | the basic laws of proximity and grouping. Qt apps have the | lazy grid toolbars just crammed from left to right, | occasionally with extra-large icons for the 'designy' look, | and always with colorful icons unless something app-specific | is made (like in Calibre). Plus the noisy dividers. | | Also, since Qt handles all the graphics and input, it has to | reimplement everything high-level that the systems provide | out of the box, and presumably to track changes in all of | that. Hence the past bugs of one-pixel offsets between | elements where they can't be in the system. And the present | non-support for system-wide key rebinding on Mac--e.g., | home/end instead of cmd-left/right. | | But yeah, Qt is better than something like not-obsessively- | tuned Swing. As for GTK, it seems to depend a lot on the | author specifically not forgetting to bundle the native-look | theme. | torstenvl wrote: | wx seems to be sufficiently Mac-like... | matthewbauer wrote: | Doesn't wx just use GTK under the hood? | zerr wrote: | On Linux, yes. On Mac it uses Cocoa and on Windows - | Win32 API. i.e. it is a wrapper for native controls. | baybal2 wrote: | > GTK3 are... to be avoided for new projects / dead? | | Despite rooting for GTK, I think this is where it is going. | | A lot of criticism as of late was that GTK is turning from a | Gimp ToolKit into a Gnome ToolKit, and you can see how | dramatic was the drop in mindshare has been since that trend | started. | | Just like Gnome didn't really survive the 3.0 transition | because the project been really stolen by thew few people who | force fed Gnome Shell onto the wider community, the GTK did | not survive the transition from GimpTK to GnomeTK. | pengaru wrote: | It's more like the gnome people picked up abandoned | torches. | bronson wrote: | The existence of MATE indicates the torches were never | abandoned. | pengaru wrote: | Only if you conflate the users with the existing pool of | GTK/GNOME developers and maintainers of the time. | | I'm thrilled to see that fork attract enough new talent | to apparently maintain itself and meet the needs of | what's a relatively small fraction of linux desktop | users. | markstos wrote: | Didn't survive? The most popular desktop distro, Ubuntu, | switched their DE from Unity to Gnome. | cycloptic wrote: | I think GTK3 will still be viable for a least a few more | years. It's currently in maintenance mode -- no new features | will be added, and all feature development is happening in | git master in preparation for the GTK4 release. The first | release of GTK4 is currently planned for this fall. | aasasd wrote: | It's alive! | | Which reminds me, foobar2000's Mac port seems to be chugging | along--though not open-source. | ssivark wrote: | Back in the day when I used desktop music players on linux I | cycled through a whole bunch: Audacious, Rhythmbox, Banshee, | Amarok, Songbird(Mozilla!), Moc(Oh, so minimal!), Cmus, mpd | (server/client), and probably more that I'm forgetting now. | | Feel a touch nostalgic for the uncomplicated time when I had | music on my devices, regularly "organized my music library" and | could play whatever whenever, and shared them with friends. I can | still rummage through my old disks and spin up some of that music | from time to time. | | Mostly use cloud players these days; crazy to imagine that | there's nothing I can do if my favorite song/recording today is | not available ten years later! | nine_k wrote: | Buy music, don't rent it. Pay for downloadable files, or for | physical media if you are into it. | | This is rather widely available. | RussianCow wrote: | It's significantly more expensive if you listen to a wide | range of music. Buying albums, or even just individual songs, | can very quickly surpass the $10/month you pay for Spotify. | Maybe that's worth it to you, but I can't blame most people | for just paying for a subscription. | KozmoNau7 wrote: | The issue is control. Albums are regularly disappearing | from the Spotify catalogue, sometimes reappearing later. | Sometimes specific albums in a band's history are missing | because that particular label doesn't have an agreement | with Spotify. And you never know if it's a crappy modern | brickwalled remaster. Not to mention the woefully bad | curation, mixed up artists, incorrect genres/years, you | name it. | | With music you buy, _you_ are in control. | | It's about quality over quantity. | organsnyder wrote: | I bought my first music on Bandcamp a couple of days ago | (they had a day when 100% of sales went to the artists). That | seems like one of the best ways to support artists while | still having a cloud-hosted library. | aasasd wrote: | If your library of favorites doesn't amount to a couple | terabytes like in, ahem, some cases, then it's pretty easy to | dump the selected bunch with `youtube-dl`. | | Death of a couple sites with not-widely-available music, in the | past few years, has distinctly shown which of those two | terabytes should be more closely guarded. 'It's all on the | web', I've been told--well, not quite so anymore unless I | upload it somewhere first. ___________________________________________________________________ (page generated 2020-03-22 23:00 UTC)