Hello,
I am starting at Octoprint plugins development and I am doing the tutorial available on their docs page.
I am currently unable to pass the first steps of setting up local development environment.
I have done all the step 4 times. One by one. All of them from the tutorial. Those are the steps:
First preparing the machine and setting up
sudo apt-get install python3 python3-pip python3-dev python3-setuptools python3-virtualenv git libyaml-dev build-essential
then:
cd ~/devel
git clone https://github.com/OctoPrint/OctoPrint.git
cd OctoPrint
virtualenv --python=python3 venv
source ./venv/bin/activate
pip install --upgrade pip
pip install -e '.[develop,plugins,docs]'
pre-commit install
git config blame.ignoreRevsFile .git-blame-ignore-revs
After this i go to the Developing Plugins tab:
$ cd ~/devel
$ git clone https://github.com/OctoPrint/OctoPrint
[...]
$ cd OctoPrint
$ virtualenv venv
[...]
$ source venv/bin/activate
(venv) $ pip install -e '.[develop,plugins]'
[...]
(venv) $ octoprint --help
Usage: octoprint [OPTIONS] COMMAND [ARGS]...
[...]
Then I go to the building the skeleton steps
I install this:
(venv) $ pip install "cookiecutter>=2.1.1,<3"
Then I give the command for creating the folders and stuff:
(venv) $ octoprint dev plugin:new helloworld
Then this keeps happening all the times and I cant figure it out:
Usage: octoprint dev [OPTIONS] COMMAND [ARGS]...
Try 'octoprint dev --help' for help.
Error: No such command 'plugin:new'.
On the website they say that this might happen and to be sure the cookiecutter is in the same python environment as OctoPrint.
So i checked it and yes, they are in the same environment:
This is the Octoprint folder and the virtual environment folder venv there
and the cookiecutter is this path:
/home/pi/OctoPrint/venv/lib/python3.12/site-packages/cookiecutter
That is what appears when I use $ octoprint dev --help:
Usage: octoprint dev [OPTIONS] COMMAND [ARGS]...
Additional commands for development tasks.
Options:
--help Show this message and exit.
Commands:
css:build
plugin:install Installs the local plugin in development mode.
plugin:uninstall Uninstalls the plugin with the given name.
I have set up a completely new virtual machine with Ubuntu. The only thing on the machine is what i downloaded in any of the cmd commands above. Python and git up do date.
I hope someone is able to help me and I appreciate!