K40 Whisperer is an alternative to the Laser Draw (LaserDRW) program that comes
with some Chinese laser cutters. It reads SVG and DXF files, interprets the
data and sends commands to the K40 controller to move the laser head and
control the laser accordingly. K40 Whisperer does not require a USB key
(dongle) to function.
Features:
- Reads SVG files and DXF files.
- Splits input design based on color formatting (red, blue).
- In SVG files blue and red paths are interpreted as vectors for vector
engraving and cutting. Everything else is transferred as a raster image.
- In DXF files blue paths are interpreted as vector engrave (blue).
Everything else is interpreted as vector cut (red).
- Performs cuts on features inside of other features before cutting the outside
features. (If you cut the outside first the part might drop out of the stock
material.)
- Converts gray scale images to halftone images to simulating varying levels of
gray (i.e. engraving pictures). The Halftone option needs to be selected
under "Raster"-"Settings" to enable halftoning.
===> The following configuration options are available for k40-whisperer-0.71:
DOCS=on: Build and/or install documentation
===> Use 'make config' to modify these settings
*/*: switch dependency from devel/py-lxml5 to devel/py-lxml
Currently, there are two versions of python XML processing library
which conflict each other in the ports tree, namely:
- devel/py-lxml5 (now at version 5.4.0)
- devel/py-lxml (now at version 6.0.1)
To avoid the situation that some ports depend on py-lxml5 and some
others do on py-lxml (by switching dependencies individually), this
commit switches the dependencies from py-lxml5 to py-lxml at once.
Additional note: There are still two ports (textproc/py-rdflib and
www/py-draftjs-exporter) depending on py-lxml5 since they limit upper
version to less than 6.
PR: 289491
Approved by: Michiel van Baak Jansen <michiel@vanbaak.eu>, arrowd,
crees, madpilot, delphij, marcus, nivit, kai,
skreuzer, fluffy, bofh, thierry, stephen, sunpoet,
0mp, Eric Camachat <eric@camachat.org>
*/*: update dependency on devel/py-lxml to devel/py-lxml5 (2nd attempt)
This is a follow up to the commit 230fb2661c78, which updated some
ports' dependencies on devel/py-lxml to devel/py-lxml5. It was an
attempt to follow the dependency change of
www/py-beautifulsoup. However, the switch was incomplete and broke
some other ports.
It has turned out that the ports depending on devel/py-lxml (at
version 4.9.3) does not limit their dependencies' upper bound to 4.x
except for one (devel/py-pymaven-patch). So updating them to
devel/py-lxml5 (at version 5.4.0) should cause no harm.
This commit switch dependencies of all the ports (except
devel/py-pymaven-patch) to devel/py-lxml5 avoid potential conflicts.
Co-authored-by: Daniel Engberg <diizzy@FreeBSD.org>
PR: 287144, 288047
Reported by: makc (via ports-committers),
vvd (PR 288047),
diizzy (PR 287144)
Approved by: portmgr (chase dependency change, unbreak build)
Fixes: 230fb2661c78 (*/*: update dependency on devel/py-lxml to devel/py-lxml5)
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++
-DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable
-Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong
-fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi
-Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings
-Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x
-MT _quickfix_la-QuickfixPython.lo -MD -MP -MF
.deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o
.libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean
'-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568>
cad/k40-whisperer: Replace reference to PY_PILLOW with its value
Since this port works with Python 3.6 and later, the value of
PY_PILLOW doesn't change. So replace reference to it with its value.
PR: 269397
Approved by: maintainer
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
Follow up on graphics/py-pillow6 port removal in r559976
The graphics/py-pillow6 port was removed in r559976 as it was for
Python 2.7 only and no longer referenced in the default cases.
However it was still defined in Mk/Uses/python.mk in PY_PILLOW,
leaving a dangling reference.
Remove it from Mk/Uses/python.mk, leaving only the Python 3
version of that port, graphics/py-pillow, defined and bump the
minimal verion of Python to 3.6 for affected ports.
graphics/py-pillow: Update to 7.0.0
* Repo-Copy the Pillow 6.2.2 release to graphics/py-pillow6 to retain
backwards compatibility for Python 2 consumers as the Pillow 7.0.0 release
dropped the support for Python 2.
* Apply conditional statements to use either Pillow 7.x or Pillow 6.x for
consumers that can be built for Python 2 or newer.
* Exceptions are ports that can be built only for either Python 2 or
Python 3. For the first case, consumers are just assigned to the
repo-copied graphics/py-pillow6.
* Also remove Pillow from BUILD_DEPENDS of math/py-PyWavelets as it is not
listed in setup.py as a build dependency [1] and relax the version
(Only the first 15 lines of the commit message are shown above )
cad/k40-whisperer: Update to 0.35
Changelog:
- http://www.scorchworks.com/K40whisperer/k40whisperer_change_log.html
- http://www.scorchworks.com/K40whisperer/k40whisperer.html
- Do not set PKGNAMEPREFIX to the Python package name prefix. The software
does not care about the underlying Python version and supporting flavors
is not worth it in this case.
- Mark the port as working with Python 3.7.
- Set DESKTOP_ENTRIES, USES=shebangfix, and NO_ARCH.
- Put variables in order.
- Change the way files are installed so that it is easier to spot a change
in pkg-plist in the future.
- Fix Python script indentation issues (mixed up tabs and spaces) in
post-patch.
- Suggest the user to look in the docs directory instead of the data
directory for notes about Linux and macOS setups.
New port: cad/k40-whisperer
GUI control software for the stock K40 laser cutter controller
K40 Whisperer is an alternative to the Laser Draw (LaserDRW) program that
comes with some Chinese laser cutters. It reads SVG and DXF files,
interprets the data and sends commands to the K40 controller to move the
laser head and control the laser accordingly. K40 Whisperer does not
require a USB key (dongle) to function.
Features:
- Reads SVG files and DXF files.
- Splits input design based on color formatting (red, blue).
- In SVG files blue and red paths are interpreted as vectors for vector
engraving and cutting. Everything else is transferred as a raster image.
(Only the first 15 lines of the commit message are shown above )