init commit

This commit is contained in:
Lea 2023-09-24 16:39:30 +02:00
commit efc12119b8
Signed by: Lea
GPG key ID: 1BAFFE8347019C42
10 changed files with 194 additions and 0 deletions

18
.editorconfig Normal file
View file

@ -0,0 +1,18 @@
# This file is for unifying the coding style for different editors and IDEs
# editorconfig.org
root = true
[*]
end_of_line = lf
charset = utf-8
insert_final_newline = true
trim_trailing_whitespace = true
[**.py]
indent_style = space
indent_size = 4
[**.js]
indent_style = space
indent_size = 4

9
.gitignore vendored Normal file
View file

@ -0,0 +1,9 @@
*.pyc
*.swp
.idea
*.iml
build
dist
*.egg*
.DS_Store
*.zip

4
MANIFEST.in Normal file
View file

@ -0,0 +1,4 @@
include README.md
recursive-include octoprint_liveleak/templates *
recursive-include octoprint_liveleak/translations *
recursive-include octoprint_liveleak/static *

17
README.md Normal file
View file

@ -0,0 +1,17 @@
# LiveLeak
**TODO:** Describe what your plugin does.
## Setup
Install via the bundled [Plugin Manager](https://docs.octoprint.org/en/master/bundledplugins/pluginmanager.html)
or manually using this URL:
https://git.amogus.cloud/lea/octoprint-liveleak/archive/master.zip
**TODO:** Describe how to install your plugin, if more needs to be done than just installing it via pip or through
the plugin manager.
## Configuration
**TODO:** Describe your plugin's configuration options (if any).

8
babel.cfg Normal file
View file

@ -0,0 +1,8 @@
[python: */**.py]
[jinja2: */**.jinja2]
silent=false
extensions=jinja2.ext.do, octoprint.util.jinja.trycatch
[javascript: */**.js]
extract_messages = gettext, ngettext

View file

@ -0,0 +1,14 @@
import octoprint.plugin
__plugin_name__ = "LiveLeak"
__plugin_version__ = "1.0.0"
__plugin_description__ = "Insert a LiveLeak logo into the camera feed"
__plugin_pythoncompat__ = ">=3.7,<4"
class LiveLeakPlugin(octoprint.plugin.AssetPlugin):
def get_assets(self):
return dict(
css=['liveleak.css']
)
__plugin_implementation__ = LiveLeakPlugin()

View file

@ -0,0 +1,11 @@
#webcam_rotator::before {
content: "";
width: 20%;
height: 20%;
background: url('https://cdn.discordapp.com/attachments/966400443720826970/1155503444241682644/liveleak.png') 0 0 no-repeat;
position: absolute;
background-size: contain;
z-index: 1000;
top: 4px;
left: 4px;
}

9
requirements.txt Normal file
View file

@ -0,0 +1,9 @@
###
# This file is only here to make sure that something like
#
# pip install -e .
#
# works as expected. Requirements can be found in setup.py.
###
.

2
setup.cfg Normal file
View file

@ -0,0 +1,2 @@
[bdist_wheel]
universal = 1

102
setup.py Normal file
View file

@ -0,0 +1,102 @@
# coding=utf-8
########################################################################################################################
### Do not forget to adjust the following variables to your own plugin.
# The plugin's identifier, has to be unique
plugin_identifier = "liveleak"
# The plugin's python package, should be "octoprint_<plugin identifier>", has to be unique
plugin_package = "octoprint_liveleak"
# The plugin's human readable name. Can be overwritten within OctoPrint's internal data via __plugin_name__ in the
# plugin module
plugin_name = "LiveLeak"
# The plugin's version. Can be overwritten within OctoPrint's internal data via __plugin_version__ in the plugin module
plugin_version = "0.1.0"
# The plugin's description. Can be overwritten within OctoPrint's internal data via __plugin_description__ in the plugin
# module
plugin_description = """Display a LiveLeak logo in the camera view"""
# The plugin's author. Can be overwritten within OctoPrint's internal data via __plugin_author__ in the plugin module
plugin_author = "Lea"
# The plugin's author's mail address.
plugin_author_email = "meow@lea.pet"
# The plugin's homepage URL. Can be overwritten within OctoPrint's internal data via __plugin_url__ in the plugin module
plugin_url = "https://git.amogus.cloud/lea/octoprint-liveleak"
# The plugin's license. Can be overwritten within OctoPrint's internal data via __plugin_license__ in the plugin module
plugin_license = "AGPLv3"
# Any additional requirements besides OctoPrint should be listed here
plugin_requires = []
### --------------------------------------------------------------------------------------------------------------------
### More advanced options that you usually shouldn't have to touch follow after this point
### --------------------------------------------------------------------------------------------------------------------
# Additional package data to install for this plugin. The subfolders "templates", "static" and "translations" will
# already be installed automatically if they exist. Note that if you add something here you'll also need to update
# MANIFEST.in to match to ensure that python setup.py sdist produces a source distribution that contains all your
# files. This is sadly due to how python's setup.py works, see also http://stackoverflow.com/a/14159430/2028598
plugin_additional_data = []
# Any additional python packages you need to install with your plugin that are not contained in <plugin_package>.*
plugin_additional_packages = []
# Any python packages within <plugin_package>.* you do NOT want to install with your plugin
plugin_ignored_packages = []
# Additional parameters for the call to setuptools.setup. If your plugin wants to register additional entry points,
# define dependency links or other things like that, this is the place to go. Will be merged recursively with the
# default setup parameters as provided by octoprint_setuptools.create_plugin_setup_parameters using
# octoprint.util.dict_merge.
#
# Example:
# plugin_requires = ["someDependency==dev"]
# additional_setup_parameters = {"dependency_links": ["https://github.com/someUser/someRepo/archive/master.zip#egg=someDependency-dev"]}
# "python_requires": ">=3,<4" blocks installation on Python 2 systems, to prevent confused users and provide a helpful error.
# Remove it if you would like to support Python 2 as well as 3 (not recommended).
additional_setup_parameters = {"python_requires": ">=3,<4"}
########################################################################################################################
from setuptools import setup
try:
import octoprint_setuptools
except:
print(
"Could not import OctoPrint's setuptools, are you sure you are running that under "
"the same python installation that OctoPrint is installed under?"
)
import sys
sys.exit(-1)
setup_parameters = octoprint_setuptools.create_plugin_setup_parameters(
identifier=plugin_identifier,
package=plugin_package,
name=plugin_name,
version=plugin_version,
description=plugin_description,
author=plugin_author,
mail=plugin_author_email,
url=plugin_url,
license=plugin_license,
requires=plugin_requires,
additional_packages=plugin_additional_packages,
ignored_packages=plugin_ignored_packages,
additional_data=plugin_additional_data,
)
if len(additional_setup_parameters):
from octoprint.util import dict_merge
setup_parameters = dict_merge(setup_parameters, additional_setup_parameters)
setup(**setup_parameters)