Closed hammerfunctor closed 11 months ago
You raise a good point of prompting the user what dependencies are installed. Since there're many dependencies that differ system-to-system, I will suggest the user to refer to the easily understandable dependencies.json
.
Regarding --no-confirm
, I don't have a strong opinion. @manateelazycat
Curling tarballs from pypi and build it locally is a much more troublesome approach and prone-to-error, than assuming the user installed pip
. Furthermore, using pip
and other system package managers make the installation process coherent with the system libraries' installation, so that the EAF installation is not something "special" and could be managed (updated or uninstalled) along with other system dependencies.
Fair. What about setting up a github action to vendor build a binary? I did manage to build eaf.py
using pyinstaller effortlessly and start eaf. But since different sub-apps are not coupled from python files, I don't see a direct way to start them. This is ultimately possible, I think, but would require a significant change in the structure of this repo. Even better all of those node modules can also be packaged in this scheme.
The reason to install all the apps and its dependencies at runtime by the user was to decouple the EAF project structure and make it more lightweight. And as you said, it would require a significant change in the structure of this repo, not something I'd opt to do unless it brings many significant advantages.
Is your feature request related to a problem? Please describe.
--no-confirm
to the installation script and make it opt-in, or at least print out the packages to be installed. Executing things likeyay -Sy --noconfirm --needed
beforehand without further information is not that invited.pip install --user --break-system-packages
. Not to mention some users on linux doesn't even have pip installed, lmao.Describe the solution you'd like A clear and concise description of what you want to happen.
Describe alternatives you've considered A clear and concise description of an alternative solutions or features you've considered, if any.
Additional context Add any other context or screenshots about the feature request here.