Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Sep 2018 22:44:36 +0000 (UTC)
From:      Mateusz Piotrowski <0mp@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r480119 - in head/cad: . k40-whisperer k40-whisperer/files
Message-ID:  <201809192244.w8JMiaG9052867@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: 0mp
Date: Wed Sep 19 22:44:36 2018
New Revision: 480119
URL: https://svnweb.freebsd.org/changeset/ports/480119

Log:
  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.
  - 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.
  
  WWW: http://www.scorchworks.com/K40whisperer/k40whisperer.html
  
  PR:		228466
  Reviewed by:	mat (mentor)
  Approved by:	mat (mentor)
  Sponsored by:   Warsaw Hackerspace
  Differential Revision:	https://reviews.freebsd.org/D16339

Added:
  head/cad/k40-whisperer/
  head/cad/k40-whisperer/Makefile   (contents, props changed)
  head/cad/k40-whisperer/distinfo   (contents, props changed)
  head/cad/k40-whisperer/files/
  head/cad/k40-whisperer/files/k40-whisperer.in   (contents, props changed)
  head/cad/k40-whisperer/files/pkg-message.in   (contents, props changed)
  head/cad/k40-whisperer/pkg-descr   (contents, props changed)
  head/cad/k40-whisperer/pkg-plist   (contents, props changed)
Modified:
  head/cad/Makefile

Modified: head/cad/Makefile
==============================================================================
--- head/cad/Makefile	Wed Sep 19 22:17:02 2018	(r480118)
+++ head/cad/Makefile	Wed Sep 19 22:44:36 2018	(r480119)
@@ -44,6 +44,7 @@
     SUBDIR += irsim
     SUBDIR += iverilog
     SUBDIR += jspice3
+    SUBDIR += k40-whisperer
     SUBDIR += kicad
     SUBDIR += kicad-devel
     SUBDIR += kicad-library

Added: head/cad/k40-whisperer/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/k40-whisperer/Makefile	Wed Sep 19 22:44:36 2018	(r480119)
@@ -0,0 +1,67 @@
+# $FreeBSD$
+
+PORTNAME=	k40-whisperer
+DISTVERSION=	0.19
+CATEGORIES=	cad python
+MASTER_SITES=	http://www.scorchworks.com/K40whisperer/
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+DISTNAME=	K40_Whisperer-${DISTVERSION}_src
+
+MAINTAINER=	0mp@FreeBSD.org
+COMMENT=	GUI control software for the stock K40 laser cutter controller
+
+LICENSE=	GPLv3+
+LICENSE_FILE=	${WRKSRC}/gpl-3.0.txt
+
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pillow>0:graphics/py-pillow@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}usb>0:devel/py-usb@${PY_FLAVOR}
+
+USES=		python:2.7 zip
+
+OPTIONS_DEFINE=		DOCS
+
+NO_BUILD=	yes
+
+WHISPERER_COMMAND=	${PORTNAME}
+SUB_FILES=	pkg-message ${WHISPERER_COMMAND}
+SUB_LIST=	PYTHON_CMD=${PYTHON_CMD} WHISPERER_COMMAND=${WHISPERER_COMMAND}
+PLIST_SUB=	WHISPERER_COMMAND=${WHISPERER_COMMAND}
+
+DATA=	bezmisc.py \
+	CC.png \
+	cspsubdiv.py \
+	cubicsuperpath.py \
+	down.png \
+	dxf.py \
+	egv.py \
+	emblem64 \
+	ffgeom.py \
+	g_code_library.py \
+	inkex.py \
+	interpolate.py \
+	k40_whisperer.py \
+	left.png \
+	LL.png \
+	LR.png \
+	nano_library.py \
+	right.png \
+	simplepath.py \
+	simplestyle.py \
+	simpletransform.py \
+	svg_reader.py \
+	UL.png \
+	up.png \
+	UR.png
+
+DOCS=	README_Linux.txt \
+	README_MacOS.md
+
+do-install:
+	${INSTALL_SCRIPT} ${WRKDIR}/${WHISPERER_COMMAND} ${STAGEDIR}${PREFIX}/bin
+	@${MKDIR} ${STAGEDIR}${DATADIR}
+	${INSTALL_DATA} ${DATA:S,^,${WRKSRC}/,} ${STAGEDIR}${DATADIR}
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	${INSTALL_DATA} ${DOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>

Added: head/cad/k40-whisperer/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/k40-whisperer/distinfo	Wed Sep 19 22:44:36 2018	(r480119)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1527085070
+SHA256 (K40_Whisperer-0.19_src.zip) = c688cf1746aa391b6a9d4cfb3e66c2f183d1f45da88a2770e8ddefac44349193
+SIZE (K40_Whisperer-0.19_src.zip) = 121328

Added: head/cad/k40-whisperer/files/k40-whisperer.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/k40-whisperer/files/k40-whisperer.in	Wed Sep 19 22:44:36 2018	(r480119)
@@ -0,0 +1,5 @@
+#! /bin/sh -
+#
+# $FreeBSD$
+
+exec %%PYTHON_CMD%% %%DATADIR%%/k40_whisperer.py

Added: head/cad/k40-whisperer/files/pkg-message.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/k40-whisperer/files/pkg-message.in	Wed Sep 19 22:44:36 2018	(r480119)
@@ -0,0 +1,5 @@
+At the moment K40 Whisperer has to be run as root unless devd(8) is properly
+configured. Some notes on how it is handled on macOS and Linux can be
+found in %%DATADIR%%.
+
+K40 Whisperer can be launched with a `%%WHISPERER_COMMAND%%` command.

Added: head/cad/k40-whisperer/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/k40-whisperer/pkg-descr	Wed Sep 19 22:44:36 2018	(r480119)
@@ -0,0 +1,21 @@
+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.
+
+WWW: http://www.scorchworks.com/K40whisperer/k40whisperer.html

Added: head/cad/k40-whisperer/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/k40-whisperer/pkg-plist	Wed Sep 19 22:44:36 2018	(r480119)
@@ -0,0 +1,28 @@
+bin/%%WHISPERER_COMMAND%%
+%%PORTDOCS%%%%DOCSDIR%%/README_Linux.txt
+%%PORTDOCS%%%%DOCSDIR%%/README_MacOS.md
+%%DATADIR%%/CC.png
+%%DATADIR%%/LL.png
+%%DATADIR%%/LR.png
+%%DATADIR%%/UL.png
+%%DATADIR%%/UR.png
+%%DATADIR%%/bezmisc.py
+%%DATADIR%%/cspsubdiv.py
+%%DATADIR%%/cubicsuperpath.py
+%%DATADIR%%/down.png
+%%DATADIR%%/dxf.py
+%%DATADIR%%/egv.py
+%%DATADIR%%/emblem64
+%%DATADIR%%/ffgeom.py
+%%DATADIR%%/g_code_library.py
+%%DATADIR%%/inkex.py
+%%DATADIR%%/interpolate.py
+%%DATADIR%%/k40_whisperer.py
+%%DATADIR%%/left.png
+%%DATADIR%%/nano_library.py
+%%DATADIR%%/right.png
+%%DATADIR%%/simplepath.py
+%%DATADIR%%/simplestyle.py
+%%DATADIR%%/simpletransform.py
+%%DATADIR%%/svg_reader.py
+%%DATADIR%%/up.png



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201809192244.w8JMiaG9052867>