
Qt for Python available at PyPi - mariuz
http://blog.qt.io/blog/2018/07/17/qt-python-available-pypi/
======
mherrmann
For people interested in an example of a Qt app, check out (my) cross-platform
file manager [https://fman.io](https://fman.io). It currently uses PyQt. I
hope Qt for Python will become stable enough so I can make the switch.

Developing cross-platform desktop apps is hard. To help with this, I open
sourced my build system [1]. It lets you release (Py)Qt apps in minutes
instead of months. It aims to make (Py)Qt a more viable alternative to
Electron. It already has preliminary support for Qt for Python, and I want to
expand it in the future.

[1]: [https://build-system.fman.io](https://build-system.fman.io)

~~~
roesel
Just FYI: I saw this comment and:

1) went to your link -> intensive blinking, firefox reporting that it "forbade
access to graphics card" for whichever reason

2) Was impressed that Windows file is only 1 MB (turns out the installer
downloads a lot more than that, which is ok but could be mentioned)

3) Started the program and agreed with tutorial

4) Followed tutorial to C:\Users\myusername\Desktop

5) Followed tutorial by pressing Backspace -> program stopped working and
crashed

No hate intended, but if you want people to use this, you should probably
think about fixing some of the steps to be less cumbersome :).

FWIW the program looks cool.

~~~
mherrmann
Thank you for the feedback.

1) No idea why that happened. I'm really not doing anything special on the web
site.

2) You're right, sorry. The Windows binary is an online installer. I'll update
the web site to mention that once the load is off the server.

5) Hm... Sorry about that. Would be extremely interesting to know if this
happens on your computer every time. It's probably too much to ask since you
already uninstalled, but if you have a few mins, can you try again?

> if you want people to use this, you should probably think about fixing some
> of the steps to be less cumbersome

That's literally what I spend my days working on. Desktop apps are a lot of
work...

> FWIW the program looks cool.

Thanks!

~~~
roesel
Went back and installed a second time. The web page no longer blinks and after
the installation finished, the program did not crash and I was able to finish
the tutorial.

I wanted to try a third time, but after a third reinstall, the tutorial no
longer pops up. Is there a way to clear EVERYTHING away and try again as if
this was a new computer?

~~~
mherrmann
Thanks! You can close fman and delete the data directory [1]. Or, you can
start the tutorial again via the Command Palette [2].

[1]: [https://fman.io/docs/data-directory](https://fman.io/docs/data-
directory)

[2]: [https://fman.io/docs/tutorial](https://fman.io/docs/tutorial)

------
AJRF
I just started developing a Python app with a GUI and the faff around getting
in running on other developer machines was crazy!

"Install PyQT and QT Framework, no not that version, no not that one? Your on
Fedora? Oh okay, add this rpm repo, no the developer version"

The ability to install it through Pipenv should make this easier, right?

~~~
viraptor
If you're distributing your app which relies on native libraries you've got
two options really. Either make sure you support all the dependencies on
supported systems, or distribute with dependencies vendored. If you're going
with the second option, maybe Flatpak could help you?

I don't believe pipenv really solves these issues.

~~~
beojan
I'd say if you're going with the second option, stop, think, then go with the
first option. This would mean either limiting your supported systems to recent
ones or limiting the features you use to those available in whatever
"enterprisy" (i.e. RHEL / Debian stable / LTS) versions you want to support.

If it's a GUI app, there's a good chance you can ignore the enterprisy
distributions.

------
etaioinshrdlu
Just curious how this is different from PyQt.

Used to use PyQt on a bunch of projects. It was a fairly decent framework. Not
bad for native-looking UIs.

~~~
Longhanks
For open source projects, it is available under LGLP, which is less
restrictive than PyQt's GPL.

It's also available under the commerical license, too, so customers don't have
to purchase from the Qt Company AND PyQt.

~~~
cup-of-tea
> For open source projects, it is available under LGLP

And how does this make the slightest difference for open source projects?

~~~
jhasse
They can chose any open-source license. With PyQT being under GPL you're force
to use the GPL, too (you can always dual-license though).

~~~
cup-of-tea
> you can always dual-license though

Exactly. So no practical difference. Just a religious one.

~~~
jhasse
Well, the second license isn't that useful, as no one could distribute the
code under it, as long as it's still using PyQt (and he doesn't buy a
license).

Also you can't include non-GPL compatible code (Apache is incompatible with
GPLv2 for example).

~~~
cup-of-tea
Why would you want them to distribute it? Distribute under GPL, offer a
proprietary licence and they'd have to buy the proprietary licence to Qt too.

~~~
jhasse
Which is a practical difference.

~~~
cup-of-tea
Only for those who don't want to contribute to open source. If we're just
talking about open source it doesn't matter.

~~~
jhasse
open-source != GPL-licensed

------
blattimwind
Of interest: Since ~two years or so you can actually pip install PyQt on major
systems, since they made wheels available. Note how PySide2 is wheel-only on
pypi as well.

~~~
blattimwind
Nowadays there is also Qt.py, "API-selector-as-a-package":
[https://github.com/mottosso/Qt.py](https://github.com/mottosso/Qt.py)

------
fermigier
Please add a project description on your PyPI entry :)

[https://pypi.org/project/PySide2/#description](https://pypi.org/project/PySide2/#description)
(currently empty)

------
wiz21c
Yes ! Super good work, long awaited !

In these times of web stuff, it's really nice to work with a framework that is
absolutely stable. (well, except Qt5 is quite a change :-))

------
kbumsik
The whole package is 166.4 MB for Linux (PyQt5 is 117.9 MB ). This is even
much bigger than Electron's base bundle size. This matters much for Linux devs
who want put everything into a single package (e.g. AppImage) to avoid
dependency problems in each Linux distros. I hope Qt would divide Pyside 2
into components (for example, QML) so that devs can easily optimize their
package size.

~~~
jck
This includes _everything_, including webengine(which bundles chromium). It's
not ideal, but Pyinstaller prunes unused libraries, so Pyinstaller bundles
shouldn't be too large.

~~~
kbumsik
Oh, I didn't know about Pyinstaller actually. I am going to look at it. Thx!

------
cogs
I can't find any mention of commercial license pricing anywhere, can anyone
enlighten me?

Because python links dynamically, I believe it's possible to use python Qt
bindings commercially without a commercial Qt license. Does pyside2 support
this?

~~~
int_19h
This is PySide, which is LGPL - so you shouldn't have any trouble using it
commercially.

~~~
jhasse
Note that you can use the GPL commercially, too. It matters only if you want
to license under anything non-GPL (which admittedly most commercial projects
do).

------
fredley
This is great, but I do wonder if the lifespan of Qt and other frontend
frameworks is somewhat limited. UI development seems to be converging more and
more on the web stack (HTML/CSS/Javascript)

~~~
TomMarius
With WebAssembly and other recent developments, I think that the opposite is
going to happen in the future. We are (hopefully) going to have native
(online) apps.

~~~
vetinari
What makes you think so? WebAssembly is about making it possible to compile
from any language into subset of javascript (which is well JIT-table), it
doesn't say nothing about neither which layout/gfx engine the apps will use,
nor about any ISA. Many want the bindings to DOM, actually.

~~~
pjmlp
WebAssembly + Canvas/WebGL.

[http://blog.qt.io/blog/2018/05/22/qt-for-webassembly-
example...](http://blog.qt.io/blog/2018/05/22/qt-for-webassembly-examples/)

[http://platform.uno/Playground/index.html](http://platform.uno/Playground/index.html)

~~~
bpicolo
Would a less-specialized rendering engine not be even less performant if
trying to make web-app like things?

~~~
pjmlp
What web-app like?

If browser vendors don't change course in regards to WebAssembly's roadmap,
Flash and Applets are back, just give it one more year to mature the eco-
system.

~~~
bpicolo
Seems unlikely. Developers are already using the DOM model outside of the
browser entirely a'la Electron because in modern times it's such a productive
and accessible development environment. I can't imagine we'd try to bring back
the pain of Flash. What we have now is drastically more portable and a delight
to use compared to that era.

