ports-mgmt/synth: Release version 1.00

I'm pleased to finally issue the first release of Synth.  There were some
significant changes since the last release candidate:

* Rework piped command handling to fix command parsing
  Synth was using ada-util to execute external commands and receive the
  output.  Unfortunately, this implementation currently can not handle
  either extra whitespace nor can it support quoted values.  The author
  is going to fix this soon using popen and pclose for Unix, but I just
  implemented the functionality by binding to those functions myself.
* This was the only use of ada-util (I originally expected to use more
  of this library's functionality) so it's been dropped as a dependency.
  This reduces the stripped executable size by about 30%.
* The environment was prepopulated with UNAME_[x] variables.  This is
  required for Synth to support building packages for different releases
  or even architectures (e.g. building 10.2 packages on 11.0-CURRENT).
* Define OSREL in the builder's /etc/make.conf.  This seemed to be
  required for emulators/virtio-kmod which uses <pre> although it's not
  clear defining OSREL is necessary.
* Fix graceful shutdown handling in text mode.
  When the graceful shutdown key was changed from Escape to Control-Q, it
  stopped working in text mode (i.e. when it wasn't in curses).  I believe
  that's because the curses display uses the "raw" tty mode and lets all
  control characters through.  In text mode, Control-Q has a flow control
  functionality.  I wrote a routine to disable that flow control and give
  Synth access to control-Q keypress in all cases.
* The same routine disables TTY echoes when they are unwanted
* Fix "status-everything" dry-run issue where a graceful shutdown resulted
  in an unwanted "sorry" message.
* In test mode file system violation check, mark changes to /var/run
  during building to be excluded from checks.
* Add a guard that checks if Synth is launched when the current directory
  is <sysroot>/usr/local (or a subdirectory of it).  Synth will fail
  to mount everything in this case, so now it stops and tells the user
  to change directories and try again.
This commit is contained in:
John Marino 2016-02-16 23:12:33 +00:00
parent 8fee180476
commit 4d3257c9df
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=409022
2 changed files with 5 additions and 7 deletions

View file

@ -2,9 +2,8 @@
# $FreeBSD$
PORTNAME= synth
PORTVERSION= 0.99
PORTVERSION= 1.00
DISTVERSIONPREFIX= v
PORTREVISION= 7
CATEGORIES= ports-mgmt
MAINTAINER= marino@FreeBSD.org
@ -13,15 +12,14 @@ COMMENT= Custom package repository builder for FreeBSD and DragonFly
LICENSE= ISCL
LICENSE_FILE= ${WRKSRC}/License.txt
#BUILD_DEPENDS= ${LOCALBASE}/lib/gnat/util.gpr:${PORTSDIR}/devel/ada-util \
# ${LOCALBASE}/lib/gnat/${IFM}.gpr:${PORTSDIR}/misc/${IFM} \
#BUILD_DEPENDS= ${LOCALBASE}/lib/gnat/${IFM}.gpr:${PORTSDIR}/misc/${IFM} \
# ${LOCALBASE}/lib/gnat/${AC}.gpr:${PORTSDIR}/devel/${AC}
USES= ada:6 ncurses:port
USE_GITHUB= yes
GH_ACCOUNT= jrmarino
GH_PROJECT= synth_external:bundle
GH_TAGNAME= v1.3:bundle a8ed62b
GH_TAGNAME= v1.3:bundle
# When framework is moved to Ada6, the ada-util and ini-file-manager
# libraries can be used as prebuilt (switch default.gpr url)

View file

@ -1,4 +1,4 @@
SHA256 (jrmarino-synth-v0.99-a8ed62b_GH0.tar.gz) = eaaf55991c069e4ab2c81da93cdb32de2d901ad3d7b07915f54def1be934f8a1
SIZE (jrmarino-synth-v0.99-a8ed62b_GH0.tar.gz) = 90469
SHA256 (jrmarino-synth-v1.00_GH0.tar.gz) = ac1d0a2bdc6db2eea9e88f4248451da09b95115ce57d7ca745d3616550a1e791
SIZE (jrmarino-synth-v1.00_GH0.tar.gz) = 91578
SHA256 (jrmarino-synth_external-v1.3_GH0.tar.gz) = 2afc03e494d2394446eabdb5244967c202a79b449c7cad7ea67a87807cc25f44
SIZE (jrmarino-synth_external-v1.3_GH0.tar.gz) = 209283