Re:Python and Qt simplified
by Thales on Sunday March 27, 2022 @10:15AM
(#30820416)
Free fbs doesn’t work with recent versions of python (>3.6) [0]. You need to pay or migrate. This can lead to security issues because recent packages don’t always work with older python versions.
Re:Python and Qt simplified
by dr_zoidberg on Sunday March 27, 2022 @11:48AM
(#30821165)
Not just on this project, but I've seen a few more not moving past 3.8 for support and I don't quite get why that's been happening. Did something happen on 3.9 or later that didn't caught my eye?
Re:Python and Qt simplified
by eyegor on Sunday March 27, 2022 @02:40PM
(#30822814)
Somewhere around there is when python changed the collections.abc stdlib naming convention from a warning to a fatal error. This means that code could work fine in 3.8 ish and refuse to run on 3.9+.
Re:Python and Qt simplified
by I_complete_me on Sunday March 27, 2022 @02:49PM
(#30822910)
That probably explains why when I try to use subuser commands (python3.10 installed on the system) it complains "AttributeError: module 'collections' has no attribute 'Mapping'"
Re:Python and Qt simplified
by spicybright on Sunday March 27, 2022 @09:44AM
(#30820175)
Ha, I used pyinstall and QT for the first time during a one off project. Smoothest GUI development I've ever done coming from knowing nothing about the stack. Esp. pyinstall. Had to do literally nothing for win/mac/unix builds.
To be fair though, it was a relatively simple app, but I feel that's the typical use case if you're already proficient in python and just want to add some buttons.
I don't hear about using this stack much, so I'm glad it's getting improvements + more attention!
Re:Python and Qt simplified
by m3nu on Sunday March 27, 2022 @12:57PM
(#30821794)
At Vorta (https://github.com/borgbase/vorta/) we're also happy users of the PyQt + PyInstaller stack. Not really needed for Linux, but great for macOS. It's even possible to use Sparkle via PyObjc for automatic updates. Be sure to build "appdir" packages to get a proper macOS package that can be notarized with Apple.
Re:Python and Qt simplified
by quirino on Sunday March 27, 2022 @11:38AM
(#30821070)
I wrote a small Python program for a group of non-tech people, and all throughout development I was dreading how much time I was going to have to spend helping everyone through the installation process. But Pyinstaller made it as simple as "download and run". Super quick to set up and no one had issues at all.
Re:Python and Qt simplified
by maleldil on Sunday March 27, 2022 @10:41AM
(#30820582)
Pyinstaller can be a nightmare depending on what dependencies you have. I believe it doesn't copy data files by default, so you have to either write a spec file for the library or include those files yourself in your program spec.
After everything is set up, though, things usually work smoothly.
Re:Python and Qt simplified
by spicybright on Sunday March 27, 2022 @01:34PM
(#30822156)
I don't remember having to do much of that except picking what files I wanted (was a few folders in this case). It makes sense thought. You typically don't want to bundle what you don't need to, so making you set that config isn't the worst thing.
Re:Python and Qt simplified
by tomatowurst on Monday March 28, 2022 @02:00AM
(#30827550)
that's not very reassuring....was excited but unfortunately, will be a no go from me.
if anybody knows an alternative to this, i would be very interested, i understand we all need to get paid but hmmm yeah open source is not easy to make money from since most people just expect everything for nothing, and this is just the reality of this space.
Re:Python and Qt simplified
by mherrmann on Monday March 28, 2022 @02:10AM
(#30827599)
You won't find an alternative that is as good. And it's just a question of the value of your time. As a developer, you should recuperate the costs for Pro in less than an hour. And it saves you weeks that I have had to spend over years of development. I don't know how that calculation can't add up. But to each their own.
Re:Python and Qt simplified
by mherrmann on Monday March 28, 2022 @02:33AM
(#30827727)
If you pay to use it then you can use later Python versions. Pro supports at least up to 3.10 as of this writing and is continuously updated for later versions.
Re:Python and Qt simplified
by stringy on Monday March 28, 2022 @11:26AM
(#30831519)
My biggest concern would be lock-in to the license, not lock-in to an old Python version. The nominal cost to get up-to-date right now doesn't guarantee me perpetual updates, right?
I'm also suspect of the misleading presentation on the landing page; nothing in the "Open Source" section says anything about the fact that the author has resolved to let the Open Source version effectively die, while up-selling existing users to the paid version. I respect the approach, and you deserve to be payed for the work, but it would be good to not effectively lie on the home page.
> PyQtGraph is a pure-python graphics and GUI library built on PyQt / PySide and numpy. It is intended for use in mathematics / scientific / engineering applications. Despite being written entirely in python, the library is very fast due to its heavy leverage of NumPy for number crunching and Qt's GraphicsView framework for fast display. PyQtGraph is distributed under the MIT open-source license.
[...]
> Packaging for Distribution
Applications written with pyqtgraph may be packaged as Windows exe files using py2exe or OSX dmg files using py2app.
I used this project once and it was a huge distraction. It also ended up making us have to pin the whole project to python version 3.6 when 3.9 was out because it wasn’t sufficiently maintained itself.
It was much more sustainable and maintainable to just write our own build scripts for each platform with template tags and automate from there.
Re:Python and Qt simplified
by spectrallus on Sunday March 27, 2022 @12:09PM
(#30821366)
I have owned this sowftware for about a year and can say the author did a good job. It's worth it.
With that said, this may not necessarily be fault of the authors, but the tutorial and documentation really doesn't help. The Qt and PyQt/PySide ecosystem is so fragmented that understanding how to truly use fbs only came to me after months of browsing github for example code.
Something like a video tutorial series on YouTube that shows how to use Qt Creator with QWidgets with fbs would be great then another on how to use Qt Design Studio with QtQuick with fbs would be amazing.
Re:Python and Qt simplified
by vanous on Sunday March 27, 2022 @07:57AM
(#30819568)
> fbs's source code is available on GitHub. You can use it for free in open source projects licensed under the GPL.
> The free version of fbs has several limitations. Upgrade to Pro to unlock its full potential. Upon purchase, you'll receive a hosted package that you can install just like fbs. No messing around with license keys. Just pip install and you are done.
So it is more like open core. This is fine, just not clear from the front "features" page listing.
Re:Python and Qt simplified
by ognarb on Sunday March 27, 2022 @08:02AM
(#30819603)
I'm getting annoyed at project saying that they are open source and then it turns out they are actually open core. I'm fine with dual licensing but not with false marketing.
Re:Python and Qt simplified
by rat9988 on Sunday March 27, 2022 @08:55AM
(#30819862)
Unless the core is not a product that can work by itself. I'd say it's still open source. Paid closed source extensions don't make it less open source.
Re:Python and Qt simplified
by mherrmann on Sunday March 27, 2022 @08:09AM
(#30819631)
It's a historical artifact in this case. There was no commercial offering. But then I got requests for particular features and ongoing maintenance / support. This then became the additional parts you can buy.
Re:Python and Qt simplified
by enriquto on Sunday March 27, 2022 @08:14AM
(#30819661)
If that is the case, then the word "limitations" is very misleading, almost dishonest marketing. It would be more honest if the regular offering was presented as a complete product, with optional commercial "extensions", whose documentation is separate.
Re:Python and Qt simplified
by mherrmann on Sunday March 27, 2022 @08:20AM
(#30819682)
It lies in the eye of the beholder what you consider a limitation. I invite you to look at the home page and compare what's available for free and what isn't and draw your conclusion then.
Re:Python and Qt simplified
by vanous on Sunday March 27, 2022 @08:58AM
(#30819882)
>It lies in the eye of the beholder what you consider a limitation. I invite you to look at the home page and compare what's available for free and what isn't and draw your conclusion then.
I tried to look, but you want me to evaluate your project by going through the manual and search for the "Pro" tag (as per your documentation [*]) while here you tell us "look at the home page".
Your project is great and your work is much appreciated,thank you for that. What I am seeking is clarity of the offering, because if I choose FBS for my floss project, I do not plan to pay 50€ for a hidden cost.
[*]
> Support for the latest versions of Python, PyQt6, PySide6 and PyInstaller.
Re:Python and Qt simplified
by naoqj on Sunday March 27, 2022 @10:29AM
(#30820503)
Dude the latest version of python that the free version supports is 3.6, which is out of support (including security patches). The free tier of your application is simply unusable.
Re:Python and Qt simplified
by icegreentea2 on Sunday March 27, 2022 @08:54AM
(#30819853)
Hey, I support your decisions, but I do think that finding the list of limitations is annoying. Scrolling through your manual looking for "Pro" markers is a little error prone I feel - maybe if you could surface the pro-ness of them into the table of contents of the manual at least?
Re:Python and Qt simplified
by indymike on Sunday March 27, 2022 @10:02AM
(#30820312)
> I'm fine with dual licensing but not with false marketing.
I love getting source code, but there are places where you really are looking for Free Software, not merely open source. Open core model products are really frustrating because maybe your use case isn't one where the value is high enough to be worth paying for "pro". I run into this often when someone asks about doing charity work. I do really like it though when an open core company is clear about it.
Re:Python and Qt simplified
by bscphil on Monday March 28, 2022 @02:21AM
(#30827651)
It's actually a bit worse than open core, in that the closed source version of the program works with versions of Python that have not been end-of-lifed [1] but the open source version of the program does not [2]. Because of that I'm not comfortable calling this open-anything.
This is a closed-source program that used to have a open-source version, which is now abandonware.
Re:Python and Qt simplified
by lrem on Sunday March 27, 2022 @07:13AM
(#30819373)
I already have a Qt app I would like to package now (https://github.com/lrem/FastCull). Would fbs be something to look into, or should I investigate some alternative at this point?
QIF didn't work for me. Updates weren't detected and it didn't have support for Windows registry. I also got the impression it's in maintenance mode and not widely used.
Re:Python and Qt simplified
by dukeofdoom on Sunday March 27, 2022 @10:08AM
(#30820365)
Can this be used to install a pygame game?
I've used Inno Setup for installing software on Windows before. It's free and works great. I've never tried installing python with it. But I did find a tutorial how to do it.
Re:Python and Qt simplified
by jollybean on Sunday March 27, 2022 @01:34PM
(#30822158)
Anyone care to comment on 'Why Python'?
Javascript is quite commonly established as a good UI language these days, and I assume that anyone who can write Py can write Js.
Is there something particularly useful about Py, i.e. perhaps researchers who know Py may not want to bother to switch? Or that it integrates better with some things? Or that it's used widely at a company and investing in a second language is a big deal?
Re:Python and Qt simplified
by uranusjr on Sunday March 27, 2022 @01:40PM
(#30822220)
My guess is it’s because PyQt. AFAIK there’s not a JS binding (or any other language really) for Qt that’s nearly as established and steady. If you’re going with Qt, Python is the most reasonable choice (other than native C++ of course).
Re:Python and Qt simplified
by digisign on Sunday March 27, 2022 @04:43PM
(#30823921)
Historically it was a much more productive choice, than just about anything. Today it's merely an arguably more productive one. In any case it remains a good choice, and one of the most popular languages.
Despite years of FUD from the likes of Microsoft and others, "investing in a second language" is not a big deal at all and just short of required for projects of any complexity.
Re:Python and Qt simplified
by galangalalgol on Sunday March 27, 2022 @01:31PM
(#30822119)
After reading their licensing that is now obvious. There is a group at my megacorp that ises it heavily from windows and they pay for tons of licenses. I'm not sure why. Unless they are static linking some of the gpl v3 modules and don't want to release code, I don't know why anyone would select the commercial qt license.
Re:Python and Qt simplified
by detaro on Sunday March 27, 2022 @08:48PM
(#30825752)
That doesn't make any sense, not much relevant about which modules are GPL has changed with the release of Qt6. Not that the licensing situation doesn't have problems, but that specific thing can't really be it.
Re:Python and Qt simplified
by systemvoltage on Sunday March 27, 2022 @08:57PM
(#30825834)
My understanding was that there are significant changes between QT5 and QT6, at least that is the reason I was told by people that used it in our company. There was a warning to never upgrade to QT6. I am just going by the observation, could be wrong though.
Re:Python and Qt simplified
by detaro on Monday March 28, 2022 @12:00PM
(#30831913)
Re Riverside forums: PyQt isn't Qt and isn't even the official Python bindings for Qt, but a third-party product. Only a small part of Qt is GPL, the vast majority is LGPL (always with commercial as the alternative). (Indeed, given that PyQt is GPL + commercial third-party, it seems to show that dual-licensing components that link to Qt is indeed possible)
Re:Python and Qt simplified
by BlueTemplar on Monday March 28, 2022 @05:42AM
(#30828841)
Only if you're unwilling to be using GPL in the first place, which is clearly the desired effect. (If somewhat unfair for small companies, that have good reasons for not using a libre license and can't afford a multi-licensing expert.)
Re:Python and Qt simplified
by boondaburrah on Sunday March 27, 2022 @08:57AM
(#30819872)
I'm not sure what particularly you mean about this article since it seems a lot easier than webdev to me. Javascript devops and Webpack in particular drive me up the wall. Qt is usually click-button-receive-EXE (when using an IDE, otherwise qmake is pretty painless) and this seems like the equivalent in just "fbs freeze"?
Re:Python and Qt simplified
by keb_ on Sunday March 27, 2022 @09:59AM
(#30820289)
How did they prove their point? Isn't it completely possible that they left native GUI development for other reasons? Maybe they became a woodworker. Please post in good faith.
Re:Python and Qt simplified
by jasfi on Sunday March 27, 2022 @08:08AM
(#30819629)
Flutter is cross-platform, including the web. I'm working on an SDK that allows for back-end powered UIs that uses Flutter on the front-end: https://nexusdev.tools/
Re:Python and Qt simplified
by galangalalgol on Sunday March 27, 2022 @11:42AM
(#30821107)
I get your point, but I wonder if the development being easier is a symptom of it being dominant rather than the cause. Web apps have a lot of other benefits that might have been the cause. I'm not a web dev, I mostly work embedded or HPC and my dev environment is either vscode or vim depending on my mood. I use plenty of cli native apps, but vscode and matlab are the only native GUIs I use. Is web development mostly done on web apps? Trying to develop in gitlab has always been painful to me for non trivial changes. It seems like anything that doesn't have huge files to move about like photo,audio or video editing could be a webapp.
Re:Python and Qt simplified
by knighthack on Sunday March 27, 2022 @08:05AM
(#30819614)
This is really a symptom of the packaging scenario in Python, more than anything else. Web-apps have a lot of advantage in that regard, but desktop apps have their place, and I hold hopes that Python will come forward with better packaging tools in the long run.
Re:Python and Qt simplified
by BiteCode_dev on Sunday March 27, 2022 @08:46AM
(#30819807)
I can package python apps fine, but creating a great UI with pyqt is much harder than with tailwind + vuejs, despite the fact I'm better at python than JS.
Re:Python and Qt simplified
by BlueTemplar on Monday March 28, 2022 @05:45AM
(#30828861)
Yeah, do JavaScript programs even have good and easy ways to deal with multiple windows, keyboard shortcuts, and offline environments, considering their browser origins ?
[0] https://build-system.fman.io/manual/#requirements
https://build-system.fman.io/manual/#requirements
To be fair though, it was a relatively simple app, but I feel that's the typical use case if you're already proficient in python and just want to add some buttons.
I don't hear about using this stack much, so I'm glad it's getting improvements + more attention!
After everything is set up, though, things usually work smoothly.
> Free fbs doesn’t work with recent versions of python (>3.6)
Is this true? What are the plans (if any) to update the GPL version of the project?
if anybody knows an alternative to this, i would be very interested, i understand we all need to get paid but hmmm yeah open source is not easy to make money from since most people just expect everything for nothing, and this is just the reality of this space.
it would be perfect if you could solve this issue as this is what is blocking me from purchasing it.
I'm also suspect of the misleading presentation on the landing page; nothing in the "Open Source" section says anything about the fact that the author has resolved to let the Open Source version effectively die, while up-selling existing users to the paid version. I respect the approach, and you deserve to be payed for the work, but it would be good to not effectively lie on the home page.
The free version doesn’t support modern Python versions so to see if it works.
https://github.com/mherrmann/fbs/issues/49
https://www.pyqtgraph.org/
> PyQtGraph is a pure-python graphics and GUI library built on PyQt / PySide and numpy. It is intended for use in mathematics / scientific / engineering applications. Despite being written entirely in python, the library is very fast due to its heavy leverage of NumPy for number crunching and Qt's GraphicsView framework for fast display. PyQtGraph is distributed under the MIT open-source license.
[...]
> Packaging for Distribution Applications written with pyqtgraph may be packaged as Windows exe files using py2exe or OSX dmg files using py2app.
It was much more sustainable and maintainable to just write our own build scripts for each platform with template tags and automate from there.
I switched to PyInstaller - see my comment at https://news.ycombinator.com/item?id=30820723
With that said, this may not necessarily be fault of the authors, but the tutorial and documentation really doesn't help. The Qt and PyQt/PySide ecosystem is so fragmented that understanding how to truly use fbs only came to me after months of browsing github for example code.
Something like a video tutorial series on YouTube that shows how to use Qt Creator with QWidgets with fbs would be great then another on how to use Qt Design Studio with QtQuick with fbs would be amazing.
> The free version of fbs has several limitations. Upgrade to Pro to unlock its full potential. Upon purchase, you'll receive a hosted package that you can install just like fbs. No messing around with license keys. Just pip install and you are done.
So it is more like open core. This is fine, just not clear from the front "features" page listing.
I tried to look, but you want me to evaluate your project by going through the manual and search for the "Pro" tag (as per your documentation [*]) while here you tell us "look at the home page".
Your project is great and your work is much appreciated,thank you for that. What I am seeking is clarity of the offering, because if I choose FBS for my floss project, I do not plan to pay 50€ for a hidden cost.
[*]
> Support for the latest versions of Python, PyQt6, PySide6 and PyInstaller.
> All features marked Pro in the Manual.
I love getting source code, but there are places where you really are looking for Free Software, not merely open source. Open core model products are really frustrating because maybe your use case isn't one where the value is high enough to be worth paying for "pro". I run into this often when someone asks about doing charity work. I do really like it though when an open core company is clear about it.
This is a closed-source program that used to have a open-source version, which is now abandonware.
[1] https://devguide.python.org/devcycle/#end-of-life-branches
[2] https://build-system.fman.io/manual/#requirements
The fact they make money by providing even more doesn't make it less open source.
Screenshots:
Installer: https://imgur.com/a/2zQEwMS
Application (on the right): https://imgur.com/AYhholl
Download link for the installer:
https://fbs.sh/mherrmann/FastCull/FastCullSetup.exe
My code changes are in https://github.com/mherrmann/FastCull/. You need fbs Pro because you are using PySide6.
I've used Inno Setup for installing software on Windows before. It's free and works great. I've never tried installing python with it. But I did find a tutorial how to do it.
https://www.geeksforgeeks.org/convert-python-code-to-a-softw...
Javascript is quite commonly established as a good UI language these days, and I assume that anyone who can write Py can write Js.
Is there something particularly useful about Py, i.e. perhaps researchers who know Py may not want to bother to switch? Or that it integrates better with some things? Or that it's used widely at a company and investing in a second language is a big deal?
Despite years of FUD from the likes of Microsoft and others, "investing in a second language" is not a big deal at all and just short of required for projects of any complexity.
I mean free both as beer and freedom.
Included with PySide[2|6] is QtDesigner, hidden in the distribution but available for use, and all the compiled Qt libraries.
The application created from that can be released closed source as using Qt under LGPL.
As for packaging;
Use PyInstaller, which creates a dist directory. Included in that dist directory will be everything needed to run your Python/Qt application.
Use Inno Setup/Inno Script Studio (https://jrsoftware.org/isinfo.php) to package that dist folder into an installer.
The end result will be a self contained installer which acts just like any other Windows software with an installer.
I use all the above to create and distribute Captain's Log (https://captainslog.scarygliders.net)
https://kivy.org/
Regardless, the licensing is a total nightmare, you can see it in Riverside's own forums: https://pyqt.riverbankcomputing.narkive.com/hqREGR1W/a-nasty...
https://news.ycombinator.com/newsguidelines.html