Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

additional random notes on the startup experience #37

Closed
mcdurdin opened this issue Mar 3, 2024 · 3 comments
Closed

additional random notes on the startup experience #37

mcdurdin opened this issue Mar 3, 2024 · 3 comments

Comments

@mcdurdin
Copy link

mcdurdin commented Mar 3, 2024

We got the demo app going yesterday. Some notes I took along the way, sorry I don't have more detail:

  1. pyqtdeploy was missing from the instructions --> pip install pyqtdeploy
  2. Qt was installed to ~/Qt, not ~/Qt5.15.2, but QT_DIR was Qt5.15.2 --> mv ~/Qt ~/Qt5.15.2
  3. ~/.local/bin was not on path for pip modules --> export PATH=$HOME/.local/bin:$PATH
  4. sip-module and pyqt-builder were missing --> pip install sip pyqt-builder

Hope these help!

@achille-martin
Copy link
Owner

achille-martin commented Mar 3, 2024

Thanks @mcdurdin for your input,

Good news

The good thing is that all these instructions are actually in the README under Getting Started.

Pip modules

pyqtdeploy was missing from the instructions
~/.local/bin was not on path for pip modules
sip-module and pyqt-builder were missing

These are all installed in a python3 virtual environment so that it does not mess up the python package list if anything goes wrong. Additionally, if anything does go wrong, one can delete and start again.

The instructions to setup the python3 virtual environment start from here.

All the python modules required for PyQt-CroM are listed in requirements.txt and installed in the python3 virtual environment through this command.

Qt installation

Qt was installed to ~/Qt, not ~/Qt5.15.2, but QT_DIR was Qt5.15.2

The Qt folder is set at this step. The reason why it's ~/Qt5.15.2 is so that one can have multiple Qt installations on their machine and select whichever they need.

The instructions are probably not as clear as they should be because the user needs to set the path $HOME/Qt5.15.2 in the Qt installer directly.

Ultimately, I am trying to create an automatic installer for PyQt-CroM so that any user can setup up their whole machine with one unique .sh script for instance. The task is captured here, but it's low priority.

Limitations

Now, if you mention that you had to make some changes while going through the README, it means that the instructions are buried in so much text or not actually clear.
Therefore, I'll need to figure out a way to make them clearer.

In an attempt to make the tutorial a lot clearer, why do you think you missed the instructions?

This will help me focus on the bits that are unclear in the README.

@mcdurdin
Copy link
Author

mcdurdin commented Mar 3, 2024

Good to hear. I think we probably lost the venv when we were trying to figure out the issue in #36 -- we started a new shell at some point.

There are a lot of steps in the README; more scripting would probably be the best way to simplify things.

And I guess I just didn't see the option to set the path for Qt in the installer.

One more point of feedback -- my son had been playing with PtQtDeploy before, and the only step that was very difficult was building sysroot.toml -- documentation on how to build that seems very sparse. It's difficult to figure out which modules are required, how to specify them, what the options are. We ended up reading the source which wasn't fun. But this isn't actually any issue on your end. So just for ref.

I'll go ahead and close this.

@achille-martin
Copy link
Owner

Thanks for your feedback, I'll move your comments into this issue because that will help with implementation.

About setting up pyqtdeploy, the reason why I started this project was to understand more about it and share my findings.

I am glad that the only step that is "very" difficult is around sysroot.toml, that means the rest is easy ;)

Joke aside, the intent of this project is to help beginner developers as well, so any way I can provide a better (maybe smaller) interface would be ideal. For now, I have decided to restrict the tutorial around sysroot.toml to accommmodate beginner devs. However, there are more advanced users who are requesting more freedom (like in this issue).

Ultimately, the goal is to contribute to pyqtdeploy / PyQt directly, but I need to get more confidence with the codebase and the design choices.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants