Bug 238007 - [NEW PORT] sysutils/py-leviathan: Application to control and monitor NZXT (Asetek) liquid coolers
Summary: [NEW PORT] sysutils/py-leviathan: Application to control and monitor NZXT (As...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Kubilay Kocak
URL:
Keywords: feature
Depends on:
Blocks:
 
Reported: 2019-05-20 19:32 UTC by Greg V
Modified: 2019-05-27 04:12 UTC (History)
2 users (show)

See Also:
koobs: maintainer-feedback+


Attachments
leviathan.patch (1.45 KB, patch)
2019-05-20 19:32 UTC, Greg V
no flags Details | Diff
leviathan.patch v2 (1.46 KB, patch)
2019-05-22 17:49 UTC, Greg V
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Greg V 2019-05-20 19:32:09 UTC
Created attachment 204489 [details]
leviathan.patch
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2019-05-20 22:12:49 UTC
Thank you for contributing a new port Greg

Review items:

 - Python packages that install scripts (this one does) should be made concurrent safe. Use USE_PYTHON=concurrent for this, which handles most files automatically.

 - Port does not specify USES=python:<version-spec>, which (implicitly) declares support for any Python version, but it is unclear what versions this package supports. In particular, if this package only supports Python 2 or 3 *only*, <version-spec> must be declared accordingly

Upstream (https://github.com/jaksi/leviathan/blob/0.1.1/README.md) suggest using pip3 leviathan which implies it supports Python 3, but it is unclear if it *requires* Python 3. Please confirm

 - Confirm this port passes QA (portlint, poudriere in particular) for all Python (major) versions it supports.
Comment 2 Greg V 2019-05-22 17:49:23 UTC
Created attachment 204546 [details]
leviathan.patch v2

Yes, it does work with Python 2. portlint passes. py27 and py36 flavors build under Synth. (why wouldn't they, it's not like a compiled language where a missing library would cause a build-time error)
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2019-05-27 03:52:33 UTC
Since this software has now (post 0.1.1) been converted into a Linux kernel module/driver, and the Python code has essentially been 'replaced', it might be worth either:

a) Asking upstream to create a separate repository for the Python code to live in, that can receive updates/fixes. There's at least packaging fixes and support for more devices to be added (that are now supported in the latest versions).
b) In the even upstream declines, fork the repository so that the module can evolve on its own
Comment 4 commit-hook freebsd_committer 2019-05-27 04:11:20 UTC
A commit references this bug:

Author: koobs
Date: Mon May 27 04:10:17 UTC 2019
New revision: 502764
URL: https://svnweb.freebsd.org/changeset/ports/502764

Log:
  [NEW PORT] sysutils/py-leviathan: Application to control and monitor NZXT (Asetek) liquid coolers

  CLI application to control and monitor NZXT (and possibly other USB connected)
  liquid coolers.

  NZXT is NOT involved in this project, do NOT contact them if your device
  is damaged while using this software.

  WWW: https://github.com/jaksi/leviathan/tree/0.1.1

  PR:		238007
  Submitted by:	Greg V <greg unrelenting technology>

Changes:
  head/sysutils/Makefile
  head/sysutils/py-leviathan/
  head/sysutils/py-leviathan/Makefile
  head/sysutils/py-leviathan/distinfo
  head/sysutils/py-leviathan/pkg-descr
Comment 5 Kubilay Kocak freebsd_committer freebsd_triage 2019-05-27 04:12:42 UTC
Committed with minor changes:

- Add LICENSE_FILE, commented with reason/explanation
- Remove pyusb min version requirement (not declared in setup.py)

Thanks for the new port submission Greg!