Read the statement by Michael Teeuw here.
MMM-Fritz-Box-Callmonitor: Notification formatting
-
Hi Everybody out there using MMM-FRITZ-Box-Callmonitor,
I would love to use this Module, but I’m not really in the mod to code or to find errors.
I tried to install your new branch under PiOS “Bookworm” but I get some errors using
“sudo apt-get install python-dev libxml2-dev libxslt1-dev zlib1g-dev && sudo pip install fritzconnection”!
The first error is: " E: For Package »python-dev« exists no Installationscandidate."
The second error for pip install is: “externally-managed-environment …”
How can I solve these problems?
Sorry for my bad english, I’m german and over 60 years old.
Thanks for helping. -
@xIExodusIx that’s due to changes in the handling of the python packages. I installed “fritzconnection” in a virtual environment:
python -m venv venv source venv/bin/activate python -m pip install fritzconnection
to make the Callmonitor use the fritzconnection, I edited the nodehelper.js (in ~/MagicMirror/modules/MMM-FritzBox-Callmonitor-py3) in line 212 to look like this (user is “pi”, must be adapted if you use another user):
pythonPath: '/home/pi/venv/bin/python',
Don’t know if it’s the best solution, but it works.
-
@rabbit83ka you can set the venv in the mm.sh that starts MagicMirror
then you don’t need to do that
-
@sdetweil Thanks, so it should look like this?
#!/bin/bash # This file is still here to keep PM2 working on older installations. cd ~/MagicMirror export PYTHONPATH="/home/pi/venv/bin/python" DISPLAY=:0 npm start
-
@rabbit83ka no, execute the venv command to set the virtual environment in place of the export
the same venv command you did before running pip
-
@sdetweil I used your script
fixuppm2.sh
when I set up the mirror
Now I modified ~/MagicMirror/installers/mm.sh to#!/bin/bash # This file is still here to keep PM2 working on older installations. cd ~/MagicMirror source venv/bin/activate DISPLAY=:0 npm start
but that doesn’t work, error occures again because node_helper doesn’t seem to use the venv.
-
@rabbit83ka when I look at my .bashrc whichs sets up the default venv on shell open
I see# Virtual Environment Wrapper source /usr/local/bin/virtualenvwrapper.sh PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH cd ~
this topic seems applicable
https://unix.stackexchange.com/questions/87062/how-to-display-the-name-of-the-current-virtualenv -
@rabbit83ka I also see this for background