From owner-svn-ports-head@freebsd.org Sun Apr 7 21:00:28 2019 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BE400156A8FD; Sun, 7 Apr 2019 21:00:28 +0000 (UTC) (envelope-from kai@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6E8D371F06; Sun, 7 Apr 2019 21:00:28 +0000 (UTC) (envelope-from kai@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3D3B9198BC; Sun, 7 Apr 2019 21:00:28 +0000 (UTC) (envelope-from kai@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x37L0SAa077992; Sun, 7 Apr 2019 21:00:28 GMT (envelope-from kai@FreeBSD.org) Received: (from kai@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x37L0QYb077982; Sun, 7 Apr 2019 21:00:26 GMT (envelope-from kai@FreeBSD.org) Message-Id: <201904072100.x37L0QYb077982@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kai set sender to kai@FreeBSD.org using -f From: Kai Knoblich Date: Sun, 7 Apr 2019 21:00:26 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r498334 - in head/sysutils/dvdisaster: . files X-SVN-Group: ports-head X-SVN-Commit-Author: kai X-SVN-Commit-Paths: in head/sysutils/dvdisaster: . files X-SVN-Commit-Revision: 498334 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 6E8D371F06 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.98 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.98)[-0.980,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Apr 2019 21:00:29 -0000 Author: kai Date: Sun Apr 7 21:00:25 2019 New Revision: 498334 URL: https://svnweb.freebsd.org/changeset/ports/498334 Log: sysutils/dvdisaster: Update to 0.79.5 * Pass maintainership to submitter * Switch to new MASTER_SITES as the previous one ceased to exist * Switch to GCC as upstream officially supports GCC only (it still compiles with CLANG if appropriate patching of the GNUMakefile is used. But the chances are somewhat higher that it might introduce subtle errors during runtime because some valid statements are optimized out by CLANG) * Add desktop and icon file * Add missing library dependencies * Add additional documentation that describes how dvdisaster accesses optical drives with FreeBSD * Add more information to pkg-message and make it dynamic * Include two patches from Debian that fix the missing language fields with .po files. [1] * Remove debug options that are not really useful for end users * Remove redundant configure script arguments * Remove redundant do-configure target * Sort pkg-plist While I'm here: * Fix the license * Simplify the makefile targets further by using only option helpers and thus remove the need for Changelog since 0.72.6 (summary): The most prominent feature of this version is that the multithreaded RS03 codec reached production quality, and all required features have been implemented. A few things will be added with the next releases: * Adaptive reading is currently disabled as it does not support RS03 yet and would crash or misbehave on RS03 error correction data * A heuristic for an exhaustive re-discovery of RS03 structures in a badly damaged medium is missing in the decoder But these things should not keep you from using RS03, as the encoder is complete and future decoder enhancements do not affect already created RS03 data. 0.79.4 (07-10-2012 / not released) * Optical drives would only be detected for /dev/pass[0-9] on FreeBSD. Fixed to work with arbitrary /dev/pass numbers. * Blocked menu selection when any other action is in progress * Made actions properly shut down (e.g. remove incomplete ecc data) when closing the window or pushing the "Quit" button. * Changed sources for clean compile on gcc 4.4.3 * Added #include for libpng 1.5 compatibility * Introduced internal Image object for unified access to optical media and on disk ISO images; lots of internal changes and fixes due to that * Added --ignore-iso-size option * Fixed bug in pngpack * Added remaining patches for Czech online manual. * More comprehensive and unified version information for banner, --version, log window and log file to aid in working on bug reports * Hardcoded icons to defeat theming * Changed glib.h include for compatibility with glib 2.32 * Removed Darwin / Mac OS X support * Synced with dvdisaster 0.72.4 fixes * Completed RS01 and RS03 specification in the papers subdir 0.79.3 (21-11-2010) * Fixed and documented -n command line options for RS02. * Reworked configure for current NetBSD release PR: 236423 Submitted by: Bob Eager Approved by: tcberner (mentor) Obtained from: Debian [1] Differential Revision: https://reviews.freebsd.org/D19807 Added: head/sysutils/dvdisaster/files/DEVICES.html.in (contents, props changed) head/sysutils/dvdisaster/files/DEVICES.md.in (contents, props changed) head/sysutils/dvdisaster/files/patch-icon-factory.c (contents, props changed) head/sysutils/dvdisaster/files/patch-locale_pt__BR.po (contents, props changed) head/sysutils/dvdisaster/files/patch-locale_ru.po (contents, props changed) head/sysutils/dvdisaster/files/pkg-message.in (contents, props changed) Deleted: head/sysutils/dvdisaster/pkg-message Modified: head/sysutils/dvdisaster/Makefile head/sysutils/dvdisaster/distinfo head/sysutils/dvdisaster/pkg-descr head/sysutils/dvdisaster/pkg-plist Modified: head/sysutils/dvdisaster/Makefile ============================================================================== --- head/sysutils/dvdisaster/Makefile Sun Apr 7 20:40:54 2019 (r498333) +++ head/sysutils/dvdisaster/Makefile Sun Apr 7 21:00:25 2019 (r498334) @@ -2,98 +2,67 @@ # $FreeBSD$ PORTNAME= dvdisaster -PORTVERSION= 0.72.6 -PORTREVISION= 1 +PORTVERSION= 0.79.5 CATEGORIES= sysutils -MASTER_SITES= http://dvdisaster.net/downloads/ +MASTER_SITES= http://www.ml1.org.uk/distfiles/ \ + http://www.ancientgeek.org.uk/distfiles/ -MAINTAINER= ports@FreeBSD.org -COMMENT= CD/DVD error recovery tool +MAINTAINER= bob@eager.cx +COMMENT= Optical disc error correction data and recovery tool -LICENSE= GPLv2 +LICENSE= GPLv3+ +LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= bash:shells/bash +LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ + libfreetype.so:print/freetype2 -MAKEFILE= GNUmakefile +USES= gmake gnome pkgconfig +USE_GCC= yes +USE_GNOME= gdkpixbuf2 gtk20 cairo -USES= gmake pkgconfig tar:bzip2 -USE_GNOME= gtk20 cairo -GNU_CONFIGURE= yes +CFLAGS+= -Wno-stringop-overflow +MAKEFILE= GNUmakefile +HAS_CONFIGURE= yes CONFIGURE_LOG= configure.log -CONFIGURE_ARGS= --prefix=${PREFIX} \ - --docsubdir="/" \ - --png-includes=${LOCALBASE}/include \ - --png-libraries=${LOCALBASE}/lib \ - --phpmountdir=${LOCALBASE}/www/${PORTNAME} \ +CONFIGURE_ARGS= --docsubdir="/" \ --localedir=${PREFIX}/share/locale \ --buildroot=${STAGEDIR} MAKE_JOBS_UNSAFE= yes PORTDOCS= * +SUB_FILES= pkg-message DEVICES.md DEVICES.html OPTIONS_DEFINE= DOCS NLS -OPTIONS_GROUP= DEBUG -OPTIONS_GROUP_DEBUG= EFENCE MEMDEBUG OPTIONS_SUB= yes -EFENCE_DESC= Electric Fence malloc() debugger -MEMDEBUG_DESC= Enable memory debugging - DOCS_CONFIGURE_ON= --docdir=${DOCSDIR} - -MEMDEBUG_CONFIGURE_ON= -with-memdebug=yes - -EFENCE_LIB_DEPENDS= libefence.so.0:devel/ElectricFence -EFENCE_CONFIGURE_ON= -with-efence=yes - NLS_USES= gettext NLS_CONFIGURE_OFF= -with-nls=no -.include - post-patch: - ${REINPLACE_CMD} -e '/REQUIRE_GCC/d' \ - ${WRKSRC}/configure ${WRKSRC}/tools/configure - ${REINPLACE_CMD} -e '/dvdisaster uninstaller/,+12 d' \ + ${REINPLACE_CMD} -e '/dvdisaster uninstaller/,+19 d' \ ${WRKSRC}/GNUmakefile.template - ${REINPLACE_CMD} -e 's|(ctx)|(*ctx)|' \ - ${WRKSRC}/md5.c - ${REINPLACE_CMD} -e 's|stdout, msg|stdout, "msg\\n"|' \ - ${WRKSRC}/tools/memory.c -.if ! ${PORT_OPTIONS:MDOCS} +post-patch-DOCS-off: ${REINPLACE_CMD} -e 's|THESE_ARE_THE_DEVEL_SOURCES;|GNUmakefile;|; \ - /install -d $$(BUILDROOT)$$(DOCSUBDIR)/,+18 d' \ + /install -d $$(BUILDROOT)$$(DOCSUBDIR)/,+7 d' \ ${WRKSRC}/GNUmakefile.template -.elif ${ARCH} == i386 - ${REINPLACE_CMD} -e 's|THESE_ARE_THE_DEVEL_SOURCES;|GNUmakefile;|; \ - /install -m 644 README.MODIFYING/{N;p;s/.*/ install -m 644 TODO $$(BUILDROOT)$$(DOCSUBDIR)/;}; \ - /install -m 644 TODO $$(BUILDROOT)$$(DOCSUBDIR)/,+13 d' \ - ${WRKSRC}/GNUmakefile.template -.endif post-patch-NLS-off: - ${REINPLACE_CMD} -e 's|DOC_LOCALES = cs de en ru|DOC_LOCALES = en|; \ + ${REINPLACE_CMD} -Ee 's|(PO_LOCALES)|#\1|; \ s|install -m 644 CREDITS\*|install -m 644 CREDITS\.en|' \ ${WRKSRC}/GNUmakefile.template -do-configure: - @(cd ${CONFIGURE_WRKSRC} && \ - if ! ${SETENV} CC="${CC}" CXX="${CXX}" \ - CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \ - INSTALL="${INSTALL} -c " \ - INSTALL_DATA="${INSTALL_DATA}" \ - INSTALL_PROGRAM="${INSTALL_PROGRAM}" \ - INSTALL_SCRIPT="${INSTALL_SCRIPT}" \ - ${CONFIGURE_ENV} bash configure ${CONFIGURE_ARGS}; then \ - ${ECHO_CMD} "===> Script \"${CONFIGURE_SCRIPT}\" failed unexpectedly."; \ - (${ECHO_CMD} ${CONFIGURE_FAIL_MESSAGE}) | ${FMT} 75 79 ; \ - ${FALSE}; \ - fi) - post-install: -.if ! ${PORT_OPTIONS:MEFENCE} || ! ${PORT_OPTIONS:MMEMDEBUG} + @${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps + ${INSTALL_DATA} ${WRKSRC}/contrib/dvdisaster48.png ${STAGEDIR}${PREFIX}/share/pixmaps/ + @${MKDIR} ${STAGEDIR}${PREFIX}/share/applications + ${INSTALL_DATA} ${WRKSRC}/contrib/dvdisaster.desktop ${STAGEDIR}${PREFIX}/share/applications/ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME} -.endif -.include +post-install-DOCS-on: + ${INSTALL_MAN} ${WRKDIR}/DEVICES.md ${STAGEDIR}${DOCSDIR} + ${INSTALL_MAN} ${WRKDIR}/DEVICES.html ${STAGEDIR}${DOCSDIR} + +.include Modified: head/sysutils/dvdisaster/distinfo ============================================================================== --- head/sysutils/dvdisaster/distinfo Sun Apr 7 20:40:54 2019 (r498333) +++ head/sysutils/dvdisaster/distinfo Sun Apr 7 21:00:25 2019 (r498334) @@ -1,2 +1,3 @@ -SHA256 (dvdisaster-0.72.6.tar.bz2) = e9787dea39aeafa38b26604752561bc895083c17b588489d857ac05c58be196b -SIZE (dvdisaster-0.72.6.tar.bz2) = 5048399 +TIMESTAMP = 1551738342 +SHA256 (dvdisaster-0.79.5.tar.gz) = d6efa1643945fe7b16382f4164a68bdad14de48c8506d844d740cd3a2b143e55 +SIZE (dvdisaster-0.79.5.tar.gz) = 9722312 Added: head/sysutils/dvdisaster/files/DEVICES.html.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/dvdisaster/files/DEVICES.html.in Sun Apr 7 21:00:25 2019 (r498334) @@ -0,0 +1,80 @@ +

Useful hints for dvdisaster

+ +

Device access

+ +

dvdisaster tries to read /dev/pass* to list available optical drives, +so it will not detect any available drives if the user running +dvdisaster does not have permissions to read /dev/pass*.

+ +

The solution is to create the file /etc/devfs.rules, containing +something like the following.

+ +
    [localrules=10]
+    add path 'pass*' mode 0775 group mygroup
+
+ +

You also need to add this line to /etc/rc.conf:

+ +
    devfs_system_ruleset="localrules"
+
+ +

You can use anything you like for localrules, and the number does not have to be 10. +See devfs.rules(5) for more details.

+ +

If /etc/devfs.rules already exists, add the line starting add to the section for the ruleset +mentioned in /etc/rc.conf.

+ +

For this to take effect, either reboot, or issue the command:

+ +
    # service devfs restart
+
+ +

as root.

+ +

Missing optical drives

+ +

The most common problem encountered is that dvdisaster does not detect +optical drives on older versions of FreeBSD.

+ +

FreeBSD 9.x does not pre-install a uniform CD-ROM driver for SCSI and +ATAPI drives, thus it cannot use any ATAPI drives in an out-of-the-box +FreeBSD 9.x installation. Normally, this can be fixed by loading a +kernel module called atapicam.

+ +

Loading the atapicam kernel module by hand

+ +

To manually load the required kernel module, issue the command:

+ +
    # kldload atapicam
+
+ +

To see if any optical drives are available:

+ +
    # camcontrol devlist
+    <NAME OF YOUR DRIVE>           at scbus1 target 0 lun 0 (pass0,cd0)
+
+ +

Loading the atapicam kernel module permanently

+ +

If the above step works, the module can be loaded automatically at boot time by adding +the line:

+ +
    atapicam_load="YES"
+
+ +

to the file /boot/loader.conf.

+ +

Building the atapicam module

+ +

If the atapicam kernel module is not available (check the contents +of /boot/kernel) you will need to recompile the kernel with the following +additional device line in the kernel configuration:

+ +
    device atapicam
+
+ +

This will actually build the module into the kernel. To build it separately, +see make.conf(5).

+ +

The devices ata, scbus, cd, and pass are also required, but are included by +default in FreeBSD 6.0 and later.

Added: head/sysutils/dvdisaster/files/DEVICES.md.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/dvdisaster/files/DEVICES.md.in Sun Apr 7 21:00:25 2019 (r498334) @@ -0,0 +1,76 @@ +Useful hints for dvdisaster +=========================== + +Device access +------------- +dvdisaster tries to read `/dev/pass*` to list available optical drives, +so it will not detect any available drives if the user running +dvdisaster does not have permissions to read `/dev/pass*`. + +The solution is to create the file `/etc/devfs.rules`, containing +something like the following. + + [localrules=10] + add path 'pass*' mode 0775 group mygroup + +You also need to add this line to `/etc/rc.conf`: + + devfs_system_ruleset="localrules" + +You can use anything you like for `localrules`, and the number does not have to be `10`. +See `devfs.rules(5)` for more details. + +If `/etc/devfs.rules` already exists, add the line starting `add` to the section for the ruleset +mentioned in `/etc/rc.conf`. + +For this to take effect, either reboot, or issue the command: + + # service devfs restart + +as root. + +Missing optical drives +---------------------- + +The most common problem encountered is that dvdisaster does not detect +optical drives on older versions of FreeBSD. + +FreeBSD 9.x does not pre-install a uniform CD-ROM driver for SCSI and +ATAPI drives, thus it cannot use any ATAPI drives in an out-of-the-box +FreeBSD 9.x installation. Normally, this can be fixed by loading a +kernel module called `atapicam`. + +### Loading the `atapicam` kernel module by hand + +To manually load the required kernel module, issue the command: + + # kldload atapicam + +To see if any optical drives are available: + + # camcontrol devlist + at scbus1 target 0 lun 0 (pass0,cd0) + +### Loading the `atapicam` kernel module permanently + +If the above step works, the module can be loaded automatically at boot time by adding +the line: + + atapicam_load="YES" + +to the file `/boot/loader.conf`. + +### Building the `atapicam` module + +If the atapicam kernel module is not available (check the contents +of /boot/kernel) you will need to recompile the kernel with the following +additional device line in the kernel configuration: + + device atapicam + +This will actually build the module into the kernel. To build it separately, +see `make.conf(5)`. + +The devices `ata`, `scbus`, `cd`, and `pass` are also required, but are included by +default in FreeBSD 6.0 and later. + Added: head/sysutils/dvdisaster/files/patch-icon-factory.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/dvdisaster/files/patch-icon-factory.c Sun Apr 7 21:00:25 2019 (r498334) @@ -0,0 +1,11 @@ +--- icon-factory.c.orig 2019-03-06 11:28:20 UTC ++++ icon-factory.c +@@ -20,6 +20,8 @@ + * along with dvdisaster. If not, see . + */ + ++#define GDK_PIXBUF_VERSION_MIN_REQUIRED GDK_PIXBUF_VERSION_2_30 ++ + #include "dvdisaster.h" + + #include "inlined-icons.h" Added: head/sysutils/dvdisaster/files/patch-locale_pt__BR.po ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/dvdisaster/files/patch-locale_pt__BR.po Sun Apr 7 21:00:25 2019 (r498334) @@ -0,0 +1,12 @@ +Taken from Debian "13-fix-missing-language-field-in-po-files.patch" +--- locale/pt_BR.po.orig 2019-03-06 10:42:22 UTC ++++ locale/pt_BR.po +@@ -11,7 +11,7 @@ msgstr "" + "PO-Revision-Date: 2010-06-09 11:13+0200\n" + "Last-Translator: cg \n" + "Language-Team: Portuguese\n" +-"Language: \n" ++"Language: Portuguese\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" Added: head/sysutils/dvdisaster/files/patch-locale_ru.po ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/dvdisaster/files/patch-locale_ru.po Sun Apr 7 21:00:25 2019 (r498334) @@ -0,0 +1,12 @@ +Taken from Debian "13-fix-missing-language-field-in-po-files.patch" +--- locale/ru.po.orig 2019-03-06 10:41:55 UTC ++++ locale/ru.po +@@ -13,7 +13,7 @@ msgstr "" + "PO-Revision-Date: 2009-07-23 08:11+0300\n" + "Last-Translator: Igor Gorbounov \n" + "Language-Team: Russian\n" +-"Language: \n" ++"Language: Russian\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" Added: head/sysutils/dvdisaster/files/pkg-message.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/dvdisaster/files/pkg-message.in Sun Apr 7 21:00:25 2019 (r498334) @@ -0,0 +1,8 @@ +---------------------------------------------------------------------- +If there are problems detecting optical drives, please see the files +DEVICES.md or DEVICES.html in the directory: + %%DOCSDIR%% + +Note that the documentation option (DOCS) must be selected for these +files to be installed. +---------------------------------------------------------------------- Modified: head/sysutils/dvdisaster/pkg-descr ============================================================================== --- head/sysutils/dvdisaster/pkg-descr Sun Apr 7 20:40:54 2019 (r498333) +++ head/sysutils/dvdisaster/pkg-descr Sun Apr 7 21:00:25 2019 (r498334) @@ -1,4 +1,3 @@ -The dvdisaster project: dvdisaster provides a margin of safety against data loss on CD and DVD media caused by aging or scratches. @@ -17,4 +16,4 @@ If you create the error correction data in time and ke you have a good chance of recovering the medium contents from typical read errors and to transfer your complete data onto a new medium. -WWW: http://dvdisaster.net/ +WWW: http://www.bobeager.uk/software.html Modified: head/sysutils/dvdisaster/pkg-plist ============================================================================== --- head/sysutils/dvdisaster/pkg-plist Sun Apr 7 20:40:54 2019 (r498333) +++ head/sysutils/dvdisaster/pkg-plist Sun Apr 7 21:00:25 2019 (r498334) @@ -1,11 +1,11 @@ bin/dvdisaster -man/cs/man1/dvdisaster.1.gz man/de/man1/dvdisaster.1.gz -man/it/man1/dvdisaster.1.gz man/man1/dvdisaster.1.gz +share/applications/dvdisaster.desktop +share/pixmaps/dvdisaster48.png %%NLS%%share/locale/cs/LC_MESSAGES/dvdisaster.mo %%NLS%%share/locale/de/LC_MESSAGES/dvdisaster.mo %%NLS%%share/locale/it/LC_MESSAGES/dvdisaster.mo +%%NLS%%share/locale/pt_BR/LC_MESSAGES/dvdisaster.mo %%NLS%%share/locale/ru/LC_MESSAGES/dvdisaster.mo %%NLS%%share/locale/sv/LC_MESSAGES/dvdisaster.mo -%%NLS%%share/locale/pt_BR/LC_MESSAGES/dvdisaster.mo