[DOCs] Added which tools are downloaded automagically

This commit is contained in:
Salvador E. Tropea 2022-06-29 10:13:43 -03:00
parent cdc9d5736e
commit c453fff8af
5 changed files with 15 additions and 10 deletions

View File

@ -98,6 +98,8 @@ You can also run KiBot using docker images in a CI/CD environment like GitHub or
Notes:
- When installing from the Debian repo you don't need to worry about dependencies, just pay attention to *recommended* and *suggested* packages.
- When installing using `pip` the dependencies marked as **PyPi dependency** will be automatically installed.
- The dependencies marked with **Auto-download** can be downloaded on-demand by KiBot.
Note this is experimental and is mostly oriented to 64 bits Linux systems.
- The `kibot-check` tool can help you to know which dependencies are missing.
- Note that on some systems (i.e. Debian) ImageMagick disables PDF manipulation in its `policy.xml` file.
Comment or remove lines like this: `<policy domain="coder" rights="none" pattern="PDF" />` (On Debian: `/etc/ImageMagick-6/policy.xml`)
@ -118,7 +120,7 @@ Notes:
- Mandatory for `kicost`
- Optional to find components costs and specs for `bom`
[**PcbDraw**](https://github.com/INTI-CMNB/pcbdraw) v0.9.0 (tool)
[**PcbDraw**](https://github.com/INTI-CMNB/pcbdraw) v0.9.0 (tool) (Auto-download)
- Mandatory for `pcbdraw`
- Optional to create realistic solder masks for `pcb_print`
@ -137,7 +139,7 @@ Notes:
[**Colorama**](https://pypi.org/project/Colorama/) (python module) (PyPi dependency) [Debian](https://packages.debian.org/bullseye/python3-colorama)
- Optional to get color messages in a portable way for general use
[**RSVG tools**](https://gitlab.gnome.org/GNOME/librsvg) v2.40 (tool) [Debian](https://packages.debian.org/bullseye/librsvg2-bin)
[**RSVG tools**](https://gitlab.gnome.org/GNOME/librsvg) v2.40 (tool) [Debian](https://packages.debian.org/bullseye/librsvg2-bin) (Auto-download)
- Optional to:
- Create outputs preview for `navigate_results`
- Create PNG icons for `navigate_results`
@ -145,19 +147,19 @@ Notes:
- Create EPS format for `pcb_print` (v2.40)
- Create PNG and JPG images for `pcbdraw`
[**Git**](https://git-scm.com/) (tool) [Debian](https://packages.debian.org/bullseye/git)
[**Git**](https://git-scm.com/) (tool) [Debian](https://packages.debian.org/bullseye/git) (Auto-download)
- Optional to:
- Find commit hash and/or date for `pcb_replace`
- Find commit hash and/or date for `sch_replace`
- Find commit hash and/or date for `set_text_variables`
[**ImageMagick**](https://imagemagick.org/) (tool) [Debian](https://packages.debian.org/bullseye/imagemagick)
[**ImageMagick**](https://imagemagick.org/) (tool) [Debian](https://packages.debian.org/bullseye/imagemagick) (Auto-download)
- Optional to:
- Create outputs preview for `navigate_results`
- Create monochrome prints for `pcb_print`
- Create JPG images for `pcbdraw`
[**Ghostscript**](https://www.ghostscript.com/) (tool) [Debian](https://packages.debian.org/bullseye/ghostscript)
[**Ghostscript**](https://www.ghostscript.com/) (tool) [Debian](https://packages.debian.org/bullseye/ghostscript) (Auto-download)
- Optional to:
- Create outputs preview for `navigate_results`
- Create PS files for `pcb_print`
@ -165,7 +167,7 @@ Notes:
[**Pandoc**](https://pandoc.org/) (tool) [Debian](https://packages.debian.org/bullseye/pandoc)
- Optional to create PDF/ODF/DOCX files for `report`
[**RAR**](https://www.rarlab.com/) (tool) [Debian](https://packages.debian.org/bullseye/rar)
[**RAR**](https://www.rarlab.com/) (tool) [Debian](https://packages.debian.org/bullseye/rar) (Auto-download)
- Optional to compress in RAR format for `compress`
[**XLSXWriter**](https://pypi.org/project/XLSXWriter/) (python module) (PyPi dependency) [Debian](https://packages.debian.org/bullseye/python3-xlsxwriter)

View File

@ -98,6 +98,8 @@ You can also run KiBot using docker images in a CI/CD environment like GitHub or
Notes:
- When installing from the Debian repo you don't need to worry about dependencies, just pay attention to *recommended* and *suggested* packages.
- When installing using `pip` the dependencies marked as **PyPi dependency** will be automatically installed.
- The dependencies marked with **Auto-download** can be downloaded on-demand by KiBot.
Note this is experimental and is mostly oriented to 64 bits Linux systems.
- The `kibot-check` tool can help you to know which dependencies are missing.
- Note that on some systems (i.e. Debian) ImageMagick disables PDF manipulation in its `policy.xml` file.
Comment or remove lines like this: `<policy domain="coder" rights="none" pattern="PDF" />` (On Debian: `/etc/ImageMagick-6/policy.xml`)

View File

@ -737,6 +737,7 @@ def print_dependencies(markdown=True, jsn=False):
key=lambda x: x[1].importance, reverse=True):
dtype = 'python module' if dep.is_python else 'tool'
is_pypi_dep = ' (PyPi dependency)' if dep.pypi_name.lower() in __pypi_deps__ else ''
has_dowloader = ' (Auto-download)' if dep.downloader is not None else ''
deb = ''
if markdown:
if dep.is_python:
@ -759,7 +760,7 @@ def print_dependencies(markdown=True, jsn=False):
ver = ''
if version:
ver = 'v'+'.'.join(map(str, version))+' '
print("{} {}({}){}{}".format(name, ver, dtype, is_pypi_dep, deb))
print("{} {}({}){}{}{}".format(name, ver, dtype, is_pypi_dep, deb, has_dowloader))
if needed:
if len(needed) == 1:
if needed[0] == 'general use':

View File

@ -28,7 +28,7 @@ from .misc import (CMD_PCBNEW_PRINT_LAYERS, URL_PCBNEW_PRINT_LAYERS, PDF_PCB_PRI
from .kiplot import check_script, exec_with_retry, add_extra_options
from .registrable import RegDependency
from .create_pdf import create_pdf_from_pages
from .dep_downloader import check_tool, rsvg_downloader, gs_downloader, convert_downloader
from .dep_downloader import check_tool, rsvg_downloader, gs_downloader, convert_downloader, pytool_downloader
from .macros import macros, document, output_class # noqa: F401
from .drill_marks import DRILL_MARKS_MAP, add_drill_marks
from .layer import Layer, get_priority
@ -47,7 +47,7 @@ rsvg_dep = rsvg_dependency('pcb_print', rsvg_downloader, roles=ToolDependencyRol
rsvg_dep2 = rsvg_dependency('pcb_print', rsvg_downloader, roles=ToolDependencyRole(desc='Create EPS format', version=(2, 40)))
gs_dep = gs_dependency('pcb_print', gs_downloader, roles=ToolDependencyRole(desc='Create PS files'))
convert_dep = convert_dependency('pcb_print', convert_downloader, roles=ToolDependencyRole(desc='Create monochrome prints'))
pcbdraw_dep = pcbdraw_dependency('pcb_print', None, roles=ToolDependencyRole(desc='Create realistic solder masks',
pcbdraw_dep = pcbdraw_dependency('pcb_print', pytool_downloader, roles=ToolDependencyRole(desc='Create realistic solder masks',
version=PCBDRAW_MIN_VERSION))
RegDependency.register(rsvg_dep)
RegDependency.register(rsvg_dep2)

View File

@ -464,7 +464,7 @@ deps = '{\
"PcbDraw": {\
"command": "pcbdraw",\
"deb_package": "pcbdraw",\
"downloader": null,\
"downloader": {},\
"extra_deb": null,\
"help_option": "--version",\
"importance": 10001,\