Cant install, plugins on Ubuntu with Octoprint plugin manager

Installed Ubuntu 20.04.1 LTS
Installed Python 3.8.5
Installed pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)
installed Octoprint (latest ?) I think

What did you already try to solve it?

tried to check all installed and it works ok but no installation of plugins
only get
Installing plugin "Bed Level Visualizer" from https://github.com/jneilliii/OctoPrint-BedLevelVisualizer/archive/master.zip...
/snap/octoprint-pfs/56/usr/bin/python3 -m pip --disable-pip-version-check install https://github.com/jneilliii/OctoPrint-BedLevelVisualizer/archive/master.zip --no-cache-dir
Collecting https://github.com/jneilliii/OctoPrint-BedLevelVisualizer/archive/master.zip
Downloading https://github.com/jneilliii/OctoPrint-BedLevelVisualizer/archive/master.zip
Requirement already satisfied: OctoPrint in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from Bed-Visualizer==1.0.0) (1.4.0)
Collecting numpy<=1.19.2,>=1.16.0
Downloading numpy-1.19.2-cp36-cp36m-manylinux2010_x86_64.whl (14.5 MB)
Requirement already satisfied: flask<0.13,>=0.12 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.12.5)
Requirement already satisfied: Jinja2<2.9,>=2.8.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (2.8.1)
Requirement already satisfied: tornado==4.5.3 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (4.5.3)
Requirement already satisfied: regex!=2018.11.6 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (2020.5.7)
Requirement already satisfied: Flask-Login<0.5,>=0.4.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.4.1)
Requirement already satisfied: Flask-Babel<0.13,>=0.12 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.12.2)
Requirement already satisfied: Flask-Assets<0.13,>=0.12 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.12)
Requirement already satisfied: blinker<1.5,>=1.4 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (1.4)
Requirement already satisfied: werkzeug<0.17,>=0.16 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.16.1)
Requirement already satisfied: cachelib<0.2,>=0.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.1)
Requirement already satisfied: PyYAML<6,>=5.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (5.3.1)
Requirement already satisfied: markdown<3.2,>=3.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (3.1.1)
Requirement already satisfied: pyserial<3.5,>=3.4 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (3.4)
Requirement already satisfied: netaddr<0.8,>=0.7.19 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.7.19)
Requirement already satisfied: watchdog<0.10,>=0.9.0 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.9.0)
Requirement already satisfied: sarge==0.1.5post0 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.1.5.post0)
Requirement already satisfied: netifaces<0.11,>=0.10.9 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.10.9)
Requirement already satisfied: pylru<1.3,>=1.2 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (1.2.0)
Requirement already satisfied: rsa<5,>=4.0 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (4.0)
Requirement already satisfied: pkginfo<1.6,>=1.5.0.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (1.5.0.1)
Requirement already satisfied: requests<3,>=2.22.0 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (2.23.0)
Requirement already satisfied: semantic_version<2.9,>=2.8 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (2.8.5)
Requirement already satisfied: psutil<5.7,>=5.6.5 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (5.6.7)
Requirement already satisfied: Click<8,>=7 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (7.1.2)
Requirement already satisfied: awesome-slugify<1.7,>=1.6.5 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (1.6.5)
Requirement already satisfied: feedparser<5.3,>=5.2.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (5.2.1)
Requirement already satisfied: future<0.19,>=0.18.2 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.18.2)
Requirement already satisfied: websocket-client<0.57,>=0.56 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.56.0)
Requirement already satisfied: wrapt<1.12,>=1.11.2 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (1.11.2)
Requirement already satisfied: emoji<0.6,>=0.5.4 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.5.4)
Requirement already satisfied: frozendict<1.3,>=1.2 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (1.2)
Requirement already satisfied: sentry-sdk==0.13.2 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (0.13.2)
Requirement already satisfied: filetype<2,>=1.0.5 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from OctoPrint->Bed-Visualizer==1.0.0) (1.0.7)
Requirement already satisfied: itsdangerous>=0.21 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from flask<0.13,>=0.12->OctoPrint->Bed-Visualizer==1.0.0) (1.1.0)
Requirement already satisfied: MarkupSafe in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from Jinja2<2.9,>=2.8.1->OctoPrint->Bed-Visualizer==1.0.0) (1.1.1)
Requirement already satisfied: Babel>=2.3 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from Flask-Babel<0.13,>=0.12->OctoPrint->Bed-Visualizer==1.0.0) (2.8.0)
Requirement already satisfied: webassets>=0.11.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from Flask-Assets<0.13,>=0.12->OctoPrint->Bed-Visualizer==1.0.0) (2.0)
Requirement already satisfied: setuptools>=36 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from markdown<3.2,>=3.1->OctoPrint->Bed-Visualizer==1.0.0) (46.2.0)
Requirement already satisfied: pathtools>=0.1.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from watchdog<0.10,>=0.9.0->OctoPrint->Bed-Visualizer==1.0.0) (0.1.2)
Requirement already satisfied: argh>=0.24.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from watchdog<0.10,>=0.9.0->OctoPrint->Bed-Visualizer==1.0.0) (0.26.2)
Requirement already satisfied: pyasn1>=0.1.3 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from rsa<5,>=4.0->OctoPrint->Bed-Visualizer==1.0.0) (0.4.8)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from requests<3,>=2.22.0->OctoPrint->Bed-Visualizer==1.0.0) (1.25.9)
Requirement already satisfied: idna<3,>=2.5 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from requests<3,>=2.22.0->OctoPrint->Bed-Visualizer==1.0.0) (2.9)
Requirement already satisfied: certifi>=2017.4.17 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from requests<3,>=2.22.0->OctoPrint->Bed-Visualizer==1.0.0) (2020.4.5.1)
Requirement already satisfied: chardet<4,>=3.0.2 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from requests<3,>=2.22.0->OctoPrint->Bed-Visualizer==1.0.0) (3.0.4)
Requirement already satisfied: Unidecode<0.05,>=0.04.14 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from awesome-slugify<1.7,>=1.6.5->OctoPrint->Bed-Visualizer==1.0.0) (0.4.21)
Requirement already satisfied: six in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from websocket-client<0.57,>=0.56->OctoPrint->Bed-Visualizer==1.0.0) (1.14.0)
Requirement already satisfied: pytz>=2015.7 in /snap/octoprint-pfs/56/lib/python3.6/site-packages (from Babel>=2.3->Flask-Babel<0.13,>=0.12->OctoPrint->Bed-Visualizer==1.0.0) (2020.1)
Building wheels for collected packages: Bed-Visualizer
Building wheel for Bed-Visualizer (setup.py): started
Building wheel for Bed-Visualizer (setup.py): finished with status 'done'
Created wheel for Bed-Visualizer: filename=Bed_Visualizer-1.0.0-py3-none-any.whl size=2557422 sha256=226f339a7a6aa885a0e9a67ee4fc7b5ec8cd8fba54456a14ffeb9714bf367851
Stored in directory: /tmp/pip-ephem-wheel-cache-f38780tb/wheels/58/ff/82/56ca243c29864e652fbbf1a968faf5f0401c1710ab6f6a2413
Successfully built Bed-Visualizer
Installing collected packages: numpy, Bed-Visualizer
ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/snap/octoprint-pfs/56/usr/local/lib/python3.6'
Consider using the --user option or check the permissions.
Error!
Could not parse output from pip, see plugin_pluginmanager_console.log for generated output

Have you tried running in safe mode?

System menu is missing so no, havent tried that.

Did running in safe mode solve the problem?

Cant initiate "safe mode" no system menu

Complete Logs

Dont know how to attaché files.

Additional information about your setup

When checking on ubuntu laptop
/snap/octoprint-pfs/56/usr/local/lib/python3.6
notis that there is no lib name /local/lib/python3.6
flegge@flegge-octoprint-server:/snap/octoprint-pfs/56/usr$ ls -l
total 0
drwxr-xr-x 2 root root 3104 maj 12 2020 bin
drwxr-xr-x 30 root root 2269 maj 12 2020 include
drwxr-xr-x 13 root root 231 maj 12 2020 lib
drwxr-xr-x 2 root root 34 maj 12 2020 sbin
drwxr-xr-x 23 root root 371 maj 12 2020 share
o
as ypu can understand I am totaly new tp this and realy dont know if I am doing this right or in the right place
If wrong pls point me in the right direction

Is it just with bed level visualizer? That has a dependency on numpy which can be problematic for installing.

also, it is recommended to install OctoPrint in a python virtualenv, which could get past the permissions issues because it runs under the logged in user's context. Did you follow the instructions provided here for installing OctoPrint or did you just use the snap install? The snap install is not an official distribution.

I need to figure out what is in this snap distro, and how it works. Lots of issues related to permissions come from it.

No its any plugin.

I followed this instruction:

That's odd then because of this line.

/snap/octoprint-pfs/56/usr/bin/python3 -m pip --disable-pip-version-check install https://github.com/jneilliii/OctoPrint-BedLevelVisualizer/archive/master.zip --no-cache-dir

What do you have in plugin manager's settings for the pip command?

Did a complete reinstallation with this help from Chris.

Octoprint on Linux
Change to your username. Everything in BOLD copy and run in the terminal, everything in italics, copy and paste into config files.

FInd the IP address of the server:
Ifconfig -a

Update your server software to the newest version and reboot:
sudo apt update
sudo apt upgrade

sudo reboot now

cd ~
sudo apt update
sudo apt install python3-pip python3-dev python3-setuptools python3-venv git libyaml-dev build-essential
mkdir OctoPrint && cd OctoPrint
python3 -m venv venv
source venv/bin/activate
pip install pip --upgrade
pip install octoprint

sudo usermod -a -G tty
sudo usermod -a -G dialout
~/OctoPrint/venv/bin/octoprint serve

Now test to make sure you can get to octoprint on the server, use your IP in a browser:
http://192.168.0.5:5000

Now we need to make it so Octoprint starts up after reboot:

wget https://github.com/foosel/OctoPrint/raw/master/scripts/octoprint.init && sudo mv octoprint.init /etc/init.d/octoprint

wget https://github.com/foosel/OctoPrint/raw/master/scripts/octoprint.default && sudo mv octoprint.default /etc/default/octoprint

sudo chmod +x /etc/init.d/octoprint

Edit the user and remove comments in the default file:
sudo nano /etc/default/octoprint

Configuration for /etc/init.d/octoprint

The init.d script will only run if this variable non-empty.

OCTOPRINT_USER=

base directory to use

BASEDIR=/home//.octoprint

configuration file to use

CONFIGFILE=/home//.octoprint/config.yaml

On what port to run daemon, default is 5000

PORT=5000

Path to the OctoPrint executable, you need to set this to match your installation!

DAEMON=/home//OctoPrint/venv/bin/octoprint

What arguments to pass to octoprint, usually no need to touch this

DAEMON_ARGS="--port=$PORT"

Umask of files octoprint generates, Change this to 000 if running octoprint as its own, separate user

UMASK=022

Process priority, 0 here will result in a priority 20 process.

-2 ensures Octoprint has a slight priority over user processes.

NICELEVEL=-2

Should we run at startup?

START=yes

Add default to autostart:
sudo update-rc.d octoprint defaults

Check octoprint service status with:
sudo service octoprint status

Add your users to sudoers file so it can run shutdown commands:
sudo nano /etc/sudoers.d/octoprint-shutdown

ALL=NOPASSWD: /sbin/shutdown

Update octoprint service as well:
sudo nano /etc/sudoers.d/octoprint-service

ALL=NOPASSWD: /usr/sbin/service

Install haproxy:
sudo apt install haproxy

Make a copy of the haproxy config file and remove it:
sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg_old
sudo rm /etc/haproxy/haproxy.cfg

Paste this config into the haproxy file:
sudo nano /etc/haproxy/haproxy.cfg

global
maxconn 4096
user haproxy
group haproxy
daemon
log 127.0.0.1 local0 debug

defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
option http-server-close
option forwardfor
maxconn 2000
timeout connect 5s
timeout client 15min
timeout server 15min

frontend public
bind :::80 v4v6
use_backend webcam if { path_beg /webcam/ }
default_backend octoprint

backend octoprint
reqrep ^([^\ :])\ /(.) \1\ /\2
option forwardfor
server octoprint1 127.0.0.1:5000

backend webcam
reqrep ^([^\ :])\ /webcam/(.) \1\ /\2
server webcam1 127.0.0.1:8080

Enable haproxy:
sudo nano /etc/default/haproxy

Defaults file for HAProxy

This is sourced by both, the initscript and the systemd unit file, so do not

treat it as a shell script fragment.

Change the config file location if needed

#CONFIG="/etc/haproxy/haproxy.cfg"

Add extra flags here, see haproxy(1) for a few options

#EXTRAOPTS="-de -m 16"
ENABLE=1

Check haproxy:
sudo service haproxy status

Restart haproxy just in case:
sudo service haproxy restart

Now we install webcam support:
cd ~
sudo apt install subversion libjpeg8-dev imagemagick ffmpeg libv4l-dev cmake

git clone https://github.com/jacksonliam/mjpg-streamer.git
cd mjpg-streamer/mjpg-streamer-experimental
export LD_LIBRARY_PATH=.
make

Test mjpg streamer:
sudo ./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so"

Create webcam startup scripts don’t use sudo:
cd ~
mkdir scripts
nano /home//scripts/webcam

#!/bin/bash

Start / stop streamer daemon

case "$1" in
start)
/home//scripts/webcamDaemon >/dev/null 2>&1 &
echo "$0: started"
;;
stop)
pkill -x webcamDaemon
pkill -x mjpg_streamer
echo "$0: stopped"
;;
*)
echo "Usage: $0 {start|stop}" >&2
;;
esac

Create webcam Daemon script don’t use sudo:
nano /home//scripts/webcamDaemon

#!/bin/bash

MJPGSTREAMER_HOME=/home//mjpg-streamer/mjpg-streamer-experimental
MJPGSTREAMER_INPUT_USB="input_uvc.so"
MJPGSTREAMER_INPUT_RASPICAM="input_raspicam.so"

init configuration

camera="auto"
camera_usb_options="-r 640x480 -f 10"
camera_raspi_options="-fps 10"

if [ -e "/boot/octopi.txt" ]; then
source "/boot/octopi.txt"
fi

runs MJPG Streamer, using the provided input plugin + configuration

function runMjpgStreamer {
input=$1
pushd $MJPGSTREAMER_HOME
echo Running ./mjpg_streamer -o "output_http.so -w ./www" -i "$input"
LD_LIBRARY_PATH=. ./mjpg_streamer -o "output_http.so -w ./www" -i "$input"
popd
}

starts up the RasPiCam

function startRaspi {
logger "Starting Raspberry Pi camera"
runMjpgStreamer "$MJPGSTREAMER_INPUT_RASPICAM $camera_raspi_options"
}

starts up the USB webcam

function startUsb {
logger "Starting USB webcam"
runMjpgStreamer "$MJPGSTREAMER_INPUT_USB $camera_usb_options"
}

we need this to prevent the later calls to vcgencmd from blocking

I have no idea why, but that's how it is...

vcgencmd version

echo configuration

echo camera: $camera
echo usb options: $camera_usb_options
echo raspi options: $camera_raspi_options

keep mjpg streamer running if some camera is attached

while true; do
if [ -e "/dev/video0" ] && { [ "$camera" = "auto" ] || [ "$camera" = "usb" ] ; }; then
startUsb
elif [ "vcgencmd get_camera" = "supported=1 detected=1" ] && { [ "$camera" = "auto" ] || [ "$camera" = "raspi" ] ; }; then
startRaspi
fi

sleep 120

done

Edit webcam file startup permissions:
sudo chmod +x /home//scripts/webcam
sudo chmod +x /home//scripts/webcamDaemon

Add webcams to startup:
sudo nano /etc/rc.local

#!/bin/sh -e

rc.local

This script is executed at the end of each multiuser runlevel.

Make sure that the script will "" on success or any other

value on error.

In order to enable or disable this script just change the execution

bits.

By default this script does nothing.

/home//scripts/webcam start

exit 0

Start webcam:
sudo /home//scripts/webcam start

Change rc.local permissions:
sudo chmod +x /etc/rc.local

Install avahi:
sudo apt install avahi-daemon

Edit hostname file with server name:
sudo nano /etc/hostname

Edit hosts:
sudo nano /etc/hosts

127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

The following lines are desirable for IPv6 capable hosts

::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

127.0.1.1 octolinux

Now reboot:
sudo reboot now

Shutdown commands:

Restart OctoPrint: sudo service octoprint restart
Restart system: sudo shutdown -r now
Shutdown system: sudo shutdown -h now

Webcam links:

Stream URL: /webcam/?action=stream
Snapshot URL: http://127.0.0.1:8080/?action=snapshot
Path to FFMPEG: /usr/bin/ffmpeg

and now its workin
only thing no system meny.
Probably something wrong with config.yaml
My looks lik this:

flegge@flegge-Latitude-E5400:~/.octoprint$ cat config.yaml
accessControl:
salt: hFRIf93CcYHL7za89drzDqwOksg4WEoc
api:
key: B6FD96770EE44831960535BEE80E9F63
plugins:
announcements:
_config_version: 1
channels:
_blog:
read_until: 1608041700
_important:
read_until: 1521111600
_octopi:
read_until: 1604571600
_plugins:
read_until: 1608876000
_releases:
read_until: 1607604000
bedlevelvisualizer:
_config_version: 1
costestimation:
_config_version: 3
discovery:
upnpUuid: 59876682-dff1-460e-9325-f7f346593861
errortracking:
unique_id: 45a472f5-db47-490e-86f5-d52fd2b51c56
filamentmanager:
_config_version: 1
database:
clientID: b4299be8-4b74-11eb-8c1d-a30c7ee55bd2
gcodeviewer:
_config_version: 1
octolapse:
_config_version: 3
softwareupdate:
_config_version: 9
taborder:
_config_version: 5
tracking:
enabled: false
unique_id: 9caa7762-bc0e-4317-a29f-639e364dc325
virtual_printer:
_config_version: 1
printerProfiles:
default: _default
server:
firstRun: false
onlineCheck:
enabled: true
pluginBlacklist:
enabled: true
secretKey: rBn6ZXBnnKLVmjVnggCR6JqoUnnSvxEb
seenWizards:
backup: null
corewizard: 4
tracking: null
temperature:
profiles:
- bed: 100
chamber: null
extruder: 210
name: ABS
- bed: 60
chamber: null
extruder: 180
name: PLA

No system menu in there.
Trying to understand how to edit config.ymal
Pls if you could give some tipd.

You can use the UI to edit these, head to settings > server and enter the commands:

sounds good, but when you dont have a clue what should br typed in the fields.....its not so easy.
is there som dokumentation somewhere that I can read ?

In the setup guide linked earlier under the Support restart/shutdown through OctoPrint's system menu section it tells you what to put there.

:point_up:

thank you very much, now all is working.