Plugin Manager - PIP


#1

Hi
I've found a message in the Pluggin Manager that tells me it can't find "pip".
"Pip command could not be found" etc. etc.

Is anyone familiar with this "pip" command?
Do I need to have the "/home/knoppix/octoprint/venv/bin" folder in the path?
Do I need to move the "pip" executable to another location?

Michael B.


Security vulnerability: Update to 1.3.6 ASAP!
#2

It should just pick it up, you shouldn't need to edit anything in your path variable.

When you installed it, did you happen to use "sudo" for any of the install steps? Are you sure you didn't accidentally install OctoPrint "globally" rather than in your venv?

As foosel said in your other question about the daemon, no one really knows anything about your setup without you providing the logs. We don't know where it's installed, or how (especially seeing as this is an advanced manual install, there's no way of knowing exactly which commands you ran to install it).

As far as what "pip" is, it's python's way of installing things, and should you move it? definitely not. Don't move any of your system wide binaries.


#3

Hi
I followed the instructions on the OctoPrint website for Linux that pointed to the following page:
"https://github.com/foosel/OctoPrint/wiki/Setup-on-a-Raspberry-Pi-running-Raspbian"

This issue is separate to the daemon issue.
I can't run octoprint via daemon, I have to start it manually using:
/home/knoppix/octoprint/venv/bin/octoprint <-- Note the folder structure is where it is installed.
This gets octoprint running, but I get the pip message in the pluggin manager.
Michael B.


#4

Hi again.

Just a thought. Where on Linux (debian based) does "pip" usually reside?

I know Knoppix 8.1 has issues with its Python installation.
Klaus was kind enough to give me some instructions to correct some of them.
Perhaps this is another Python dependency issue that needs fixing?

As for advance manual install, I'm just following the instructions as provided.
The only difference is the instructions are for Rasbian on a Raspberry Pi and
I'm actually using Knoppix 8.1 on a laptop.

Michael B.
p.s I can provide the startup log, but that will have to wait until I get home from work.


#5

Hi PythonAteMyPearl
This gets even weirder. I've found "pip" in /usr/bin and that is in the path.
I don't see how it can not find it.
Michael B.


#6

It will remain a mystery until you share the logs...


#7

Hi PythonAteMyPerl and Gina

I've attached a copy of the startup log for OctoPrint.
It looks like OctoPrint does not like my version of Python/Pip.
This is probably a Knoppix 8.1 issue.

I'm having trouble uploading the log.
Discourse is not letting me attach the log and isn't letting me paste into the reply.

Michael B.


#8

I'm not sure why, but just put it on pastebin.com or gist.github.com for now and paste the link here.


#9

Hi Gina
I'm trying again with the log file. I'll try cutting it back to just the relevant sections.
Let me know if you need more and I'll cut them out and send them

2018-03-16 07:49:27,612 - octoprint.startup - INFO - ******************************************************************************
2018-03-16 07:49:27,613 - octoprint.startup - INFO - Starting OctoPrint 1.3.6
2018-03-16 07:49:27,613 - octoprint.startup - INFO - ******************************************************************************
2018-03-16 07:49:27,660 - octoprint.util.connectivity_checker - INFO - Connectivity changed from offline to online
2018-03-16 07:49:29,277 - octoprint.startup - INFO - Blacklist processing done
2018-03-16 07:49:29,294 - octoprint.plugin.core - INFO - Loading plugins from /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins, /home/knoppix/.octoprint/plugins and installed plugin packages...
2018-03-16 07:49:29,847 - octoprint.plugin.core - WARNING - Plugin "OctoPi Support Plugin" did not pass check
2018-03-16 07:49:30,088 - octoprint.plugins.discovery - INFO - pybonjour is not installed, Zeroconf Discovery won't be available
2018-03-16 07:49:30,091 - octoprint.plugin.core - INFO - Found 7 plugin(s) providing 7 mixin implementations, 4 hook handlers
2018-03-16 07:49:30,151 - octoprint.server - INFO - Intermediary server started
2018-03-16 07:49:30,151 - octoprint.plugin.core - INFO - Loading plugins from /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins, /home/knoppix/.octoprint/plugins and installed plugin packages...
2018-03-16 07:49:30,152 - octoprint.plugin.core - WARNING - Plugin "OctoPi Support Plugin" did not pass check
2018-03-16 07:49:30,387 - octoprint.plugin.core - INFO - Found 7 plugin(s) providing 7 mixin implementations, 4 hook handlers
2018-03-16 07:49:30,410 - octoprint.filemanager.storage - INFO - Initializing the file metadata for /home/knoppix/.octoprint/uploads...
2018-03-16 07:49:30,411 - octoprint.filemanager.storage - INFO - ... file metadata for /home/knoppix/.octoprint/uploads initialized successfully.
2018-03-16 07:49:30,436 - octoprint.plugins.softwareupdate - INFO - Loaded version cache from disk
2018-03-16 07:49:33,138 - octoprint.util.pip - INFO - Using "/home/knoppix/octoprint/venv/bin/python -m pip" as command to invoke pip
2018-03-16 07:49:35,883 - octoprint.util.pip - INFO - Version of pip is 9.0.1
2018-03-16 07:49:35,884 - octoprint.util.pip - ERROR - Cannot use pip
2018-03-16 07:49:35,885 - octoprint.plugin.core - INFO - Initialized 7 plugin implementation(s)
2018-03-16 07:49:35,888 - octoprint.plugin.core - INFO - 7 plugin(s) registered with the system:

#10

Hi Gina
One day I will learn to use Discourse more elegantly. Promise.
Michael B.


#11

Hm, that is sadly not as helpful as I'd hoped it would be. But it hints at a test that OctoPrint does internally to figure some stuff out about pip and your python version is failing. For some reason though I'm only logging the failure output in debug mode.

Please stop your OctoPrint daemon and then start it from command line in debug mode: /home/knoppix/octoprint/venv/bin/octoprint serve --debug. That will produce a ton of output but hopefully also shed some light on things.

Use this button

image

to wrap your pasted log in code fences, your "----" stuff does nothing, this button will put it into the correct format.

PS: Honestly, you'd be done ten times by now if you'd just used OctoPi. What you are doing is quite... unusual to say the least and it feels like you are making it extremely hard for yourself, also to get help in the future, by verging away this much from the standard runtime environment.


#12

Hi Gina
Thanks for your help. New log below: And you're right, in hind site I probably should have done this on my Banana Pi Pro using Rasbian. Its been sitting on the shelf so long, I'd forgotten about it.

2018-03-16 08:29:37,467 - octoprint.startup - INFO - ******************************************************************************
2018-03-16 08:29:37,467 - octoprint.startup - INFO - Starting OctoPrint 1.3.6
2018-03-16 08:29:37,468 - octoprint.startup - INFO - ******************************************************************************
2018-03-16 08:29:37,487 - octoprint.startup - INFO - We don't appear to be online, not fetching plugin blacklist
2018-03-16 08:29:37,506 - octoprint.plugin.core - INFO - Loading plugins from /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins, /home/knoppix/.octoprint/plugins and installed plugin packages...
2018-03-16 08:29:37,531 - octoprint.util.connectivity_checker - INFO - Connectivity changed from offline to online
2018-03-16 08:29:38,064 - octoprint.plugin.core - WARNING - Plugin "OctoPi Support Plugin" did not pass check
2018-03-16 08:29:38,306 - octoprint.plugin.core - DEBUG - Loaded plugin cura: CuraEngine (<= 15.04)
2018-03-16 08:29:38,307 - octoprint.plugin.core - DEBUG - Loaded plugin pluginmanager: Plugin Manager
2018-03-16 08:29:38,307 - octoprint.plugin.core - DEBUG - Loaded plugin announcements: Announcement Plugin
2018-03-16 08:29:38,308 - octoprint.plugin.core - DEBUG - Loaded plugin softwareupdate: Software Update
2018-03-16 08:29:38,308 - octoprint.plugin.core - DEBUG - Loaded plugin virtual_printer: Virtual Printer
2018-03-16 08:29:38,308 - octoprint.plugins.discovery - INFO - pybonjour is not installed, Zeroconf Discovery won't be available
2018-03-16 08:29:38,309 - octoprint.plugin.core - DEBUG - Loaded plugin discovery: Discovery
2018-03-16 08:29:38,309 - octoprint.plugin.core - DEBUG - Loaded plugin corewizard: Core Wizard
2018-03-16 08:29:38,309 - octoprint.plugin.core - DEBUG - Enabled plugin cura: CuraEngine (<= 15.04)
2018-03-16 08:29:38,310 - octoprint.plugin.core - DEBUG - Enabled plugin pluginmanager: Plugin Manager
2018-03-16 08:29:38,311 - octoprint.plugin.core - DEBUG - Enabled plugin announcements: Announcement Plugin
2018-03-16 08:29:38,311 - octoprint.plugin.core - DEBUG - Enabled plugin softwareupdate: Software Update
2018-03-16 08:29:38,313 - octoprint.plugin.core - DEBUG - Enabled plugin virtual_printer: Virtual Printer
2018-03-16 08:29:38,313 - octoprint.plugin.core - DEBUG - Enabled plugin discovery: Discovery
2018-03-16 08:29:38,313 - octoprint.plugin.core - DEBUG - Enabled plugin corewizard: Core Wizard
2018-03-16 08:29:38,314 - octoprint.plugin.core - INFO - Found 7 plugin(s) providing 7 mixin implementations, 4 hook handlers
2018-03-16 08:29:38,373 - octoprint.server - DEBUG - Starting intermediary server on 0.0.0.0:5000
2018-03-16 08:29:38,375 - octoprint.server - INFO - Intermediary server started
2018-03-16 08:29:38,375 - octoprint.plugin.core - INFO - Loading plugins from /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins, /home/knoppix/.octoprint/plugins and installed plugin packages...
2018-03-16 08:29:38,377 - octoprint.plugin.core - WARNING - Plugin "OctoPi Support Plugin" did not pass check
2018-03-16 08:29:38,613 - octoprint.plugin.core - INFO - Found 7 plugin(s) providing 7 mixin implementations, 4 hook handlers
2018-03-16 08:29:38,629 - octoprint.filemanager.storage - INFO - Initializing the file metadata for /home/knoppix/.octoprint/uploads...
2018-03-16 08:29:38,630 - octoprint.filemanager.storage - INFO - ... file metadata for /home/knoppix/.octoprint/uploads initialized successfully.
2018-03-16 08:29:38,631 - octoprint.events - DEBUG - Subscribed listener <function on_settings_update at 0xb4a26614> for event SettingsUpdated
2018-03-16 08:29:38,643 - octoprint.events - DEBUG - Subscribed listener <bound method Printer._on_event_MetadataAnalysisFinished of <octoprint.printer.standard.Printer object at 0xb4923eac>> for event MetadataAnalysisFinished
2018-03-16 08:29:38,643 - octoprint.events - DEBUG - Subscribed listener <bound method Printer._on_event_MetadataStatisticsUpdated of <octoprint.printer.standard.Printer object at 0xb4923eac>> for event MetadataStatisticsUpdated
2018-03-16 08:29:38,644 - octoprint.plugin.core - DEBUG - Initialized plugin mixin implementation for plugin virtual_printer
2018-03-16 08:29:38,645 - octoprint.plugin.core - DEBUG - Initialized plugin mixin implementation for plugin corewizard
2018-03-16 08:29:38,655 - octoprint.plugins.softwareupdate - INFO - Loaded version cache from disk
2018-03-16 08:29:38,656 - octoprint.plugin.core - DEBUG - Initialized plugin mixin implementation for plugin softwareupdate
2018-03-16 08:29:38,657 - octoprint.plugin.core - DEBUG - Initialized plugin mixin implementation for plugin cura
2018-03-16 08:29:38,657 - octoprint.plugin.core - DEBUG - Initialized plugin mixin implementation for plugin announcements
2018-03-16 08:29:41,234 - octoprint.util.pip - INFO - Using "/home/knoppix/octoprint/venv/bin/python -m pip" as command to invoke pip
2018-03-16 08:29:43,789 - octoprint.util.pip - INFO - Version of pip is 9.0.1
2018-03-16 08:29:43,790 - octoprint.util.pip - ERROR - Cannot use pip
2018-03-16 08:29:43,791 - octoprint.plugin.core - DEBUG - Initialized plugin mixin implementation for plugin pluginmanager
2018-03-16 08:29:43,793 - octoprint.plugin.core - DEBUG - Initialized plugin mixin implementation for plugin discovery
2018-03-16 08:29:43,793 - octoprint.plugin.core - INFO - Initialized 7 plugin implementation(s)
2018-03-16 08:29:43,797 - octoprint.plugin.core - INFO - 7 plugin(s) registered with the system:
|  Announcement Plugin (bundled) = /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins/announcements
|  Core Wizard (bundled) = /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins/corewizard
|  CuraEngine (<= 15.04) (bundled) = /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins/cura
|  Discovery (bundled) = /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins/discovery
|  Plugin Manager (bundled) = /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins/pluginmanager
|  Software Update (bundled) = /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins/softwareupdate
|  Virtual Printer (bundled) = /home/knoppix/octoprint/venv/lib/python2.7/site-packages/OctoPrint-1.3.6-py2.7.egg/octoprint/plugins/virtual_printer
2018-03-16 08:29:45,062 - octoprint.environment - INFO - Detected environment is Python 2.7.14+ under Linux (linux2). Details:
|  hardware:
|    cores: 2
|    freq: 1199.0
|    ram: 1839607808
|  os:
|    id: linux
|    platform: linux2
|  python:
|    pip: 9.0.1
|    version: 2.7.14+
|    virtualenv: /home/knoppix/octoprint/venv
type or paste code here

#13

For some reason it's not printing out the debug output that I expected it to print out, and I can't look into this right now I fear because I have my hands full with prepping 1.3.7rc1.

It certainly isn't liking something about your installation, I just have no idea what, sorry.


#14

Hi Gina
Yes, I believe that's it. It does not like Knoppix 8.1's python install.
I did have to install python-dev in unstable mode, but python-pip, that installed without issue.

Do we know what version of pip, octoprint likes? Perhaps I can track it down.
Or is pip not the problem and the real problem is python?

If it only effects the pluggin manager, this issue can be left on the back burner and
revisited at a later date.
Thanks again for your help.
Michael B


#15

pip 9.0.1 is usually fine. It's not pip, it's not python, it's something about how both of them play together here and probably what output a test package install produces that the pip utility performs in order to figure some stuff out about the environment it's facing.


#16

Hi Gina
So the startup runs a test package install and checks the results.
Based on what it sees in the result, it then decides the installation is kosher or not and
Knoppix 8.1 does not come up kosher. I am way out of my depth here.
In order to sort this one, I suspect you'd need a copy of the source code and
be running a trace over the startup to match source code to trace and see what emerges.
Not an easy debug.
Michael B.


#17

I guess I shouldn't let you see what shenanigans I get up to with octoprint then (more or less my own version of octopi, but on armbian instead of raspbian, hacked up daemon scripts and all). Although, come to think of it, you probably have seen at least some of my shenanigans.

I'll put knoppix in a VM and see if it still does the same thing, I remember with Armbian I had a few issues with packages that weren't installed (packages that were there on raspbian). It's probably another case like that.


#18

Just took another look at the code and have a hunch what might be up here. Contrary to my earlier statement the LocalPipCaller that's reporting a problem here here isn't actually installing a test package (that would be the default for PipCaller) but instead only checking some parameters itself. The "Cannot use pip" message there should only ever be produced in a virtual environment if the install directory associated with the virtual environment isn't writable.

1.3.7 will also have better logging there:

https://github.com/foosel/OctoPrint/commit/82dffa50f72defcdfaf03dbfbdc737c9355f650e

So my money would be on you having wrong permissions set on your /home/knoppix/octoprint/venv folder. Used sudo at the wrong moment by any chance?

Best make sure that the venv does belong or at the very least is writable by the user you are running OctoPrint under (knoppix?). See also

https://discourse.octoprint.org/t/i-cannot-update-switch-branches-or-install-plugins-i-get-something-about-permissions/209

(Yes, says "OctoPi" in there, but is also true for other distros)


#19

RE my attempt at putting it in a VM, I'm assuming I also ran into some sort of write-only issue because any attempt to use apt-get to install anything resulted in errors.

@MichaelBlucher I highly suggest you switch to linux Mint, I've had great success at installing octoprint (trouble free) under Mint, and is where I actually write all my plugins. Only time I've ever seen that "can't find pip" error is when I mess about and change branches or actively change something in octoprint and don't clean up after myself (and occasionally when first resuming the VM from suspend).


#20

Hi foosel,
first - thanks for answer!
I use a banana pi. Kernel 3.4.111-bananian, Debian 8 (jessie).
I have made only the update from version 1.3.5 to 1.3.6 nothing other changes or modifing. Other have this problem also with update from 1.3.4. Whats the reason that 1.3.6 can't find pip? :confused:

After create a alias the pip commend is found BUT not from the plugin manager, hmmm.
All installation steps describe exactly after 3 month ? - impossible :flushed:
I think I have used the update process how described https://github.com/foosel/OctoPrint/wiki/Setup-on-a-Raspberry-Pi-running-Raspbian point "Updating & Switching Branches"
Is there a way to check the pip command how used in the plugin manager, respectivly the expected path ?

Kindly regards
Rabis