I'm trying to upload a new package with deken, but I get the following error:
ModuleNotFoundError: No module named 'hy'
I do have a module called "hy" in my python packages though. The deken installed on my system is version 0.6.0. Is it possible it's outdated? I saw the discussion about the latest deken, so I downloaded the source and tried to make it, but nothing really happened.
I'm on UbuntuStudio 21.10.
Following up my own thread... the whole traceback reports that line 5 of ~/.deken/virtualenv/bin/hy triggers the error, which is this:
from hy.cmdline import hy_main
The thing is that when I launch Python in the terminal and I type this line, it works fine. Both commands "python" and "python3" launch Python 3.9.7. All python* symbolic links in ~/.deken/virtualenv/bin point to /usr/bin/python3 which is Python 3.9.7. This is as far as I can go, I think.
On 29/6/22 19:18, Alexandros wrote:
On 6/29/22 21:11, Alexandros wrote:
well, the virtualenv in ~/.deken/ probably ignores any system-installed hy. at least, it used to (it now tries to use system-installed packages if they meet the requirements (e.g. are recent enough)...
first thing to try is simply to self-update deken: ``` deken update --self ```
if that fails, try uninstalled 'deken' first, before re-installing it (i havea gut feeling that there are some left-overs in your ~/.deken/ that make all the problems):
``` deken uninstall --self
xdg-open "https://github.com/pure-data/deken/blob/main/developer/README.md#manual-boot..." ```
gmfds IOhannes
On 30/6/22 00:36, IOhannes m zmölnig wrote:
This goes though some process but ends up with the following:
Traceback (most recent call last): File "/home/alexandros/.deken/virtualenv/bin/pip", line 5, in <module> from pip._internal.cli.main import main ModuleNotFoundError: No module named 'pip' Installation of requirements failed. You probably should install the following packages first: - 'python3-dev' - 'libffi-dev' - 'libssl-dev'
I did install the recommended packages, but keep on getting this error.
This can't run, I get the same error concerning hy
Can't I uninstall it with apt-get? Or delete some files manually? If so, which files are these?
On 6/30/22 08:38, Alexandros wrote:
it seems that the final error hint ("you should install...") is simply wrong. the important error message is "No module named 'pip'".
the "you should install..." is simply the printout for *anything* that goes wrong, as it assumes that the most that could go wrong is some problem with building some modules; but your problem is much deeper.
in fact, it seems that you somehow managed to "uninstall" various python modules, but keep their cmdline wrappers available (even though both the modules and the wrappers are installed by the very same packages).
very unlikely. it's not that i don't believe you (or your observations), but running "deken uninstall --self" *should* bypass all things hy... (and i just checked the code of upstream/0.6.0, upstream/main and Debian/0.6.0-1 to confirm that it really should do this) ...unless you somehow pass additional arguments (e.g. via aliases), which you shouldn't; or unless you have completely bonkered your python installation, in which case i would like to stop this thread and ask you to repair the system first).
Can't I uninstall it with apt-get? Or delete some files manually? If so, which files are these?
ah well: (in theory) you can install deken in two ways: - via apt-get - via the manual bootstrap
the two ways are fundamentally different (as in: they install files to very different locations) and you cannot really *mix* the two. in practice it is possible install deken both manually and via apt on your system, but it is not recommended. actually: i would discourage this.¹
so: 0. decide which route you want to take (apt, or manual bootstrap). 1. get your system clean. esp. make sure to uninstall the "other" deken (the one you decided to not use) it's probably simplest to just make sure that deken is neither installed via apt nor via the manual bootstrap process. 3. ensure that `which deken` is what you expect (if you decided to go the manual route, the system should NOT find the binary in /usr/; vice versa, it shouldn't find the binary in your home if you go the apt route; if you decided to start from scratch, it shouldn't find a binary at all!) 4. only once you have completely purged the "other" deken, start installing deken.
gmdars IOhannes
PS: oh, and "deken uninstall --self" simply removes the deken script itself and everything in ~/.deken~/; so if you somehow cannot manage to run "deken uninstall --self", you could also do this manually. PPS: do *not* run the manualy bootstrap process as root/superuser.
¹ this is actually true for all software.
So, I deleted the ~/.deken directory, and then also ran 'sudo apt-get remove deken' (because I think I had also done 'sudo apt-get install deken'). Then, there was still a deken executable in my system, so I ran it and it installed deken! It seems that now deken works fine, in the latest version, 0.9.3.
Thanks for the help!
On 30/6/22 10:08, IOhannes m zmoelnig wrote: