ports/67559: [NEW PORT] graphics/lphoto: A complete desktop solution for digital photo management

michael johnson ahze at ahze.net
Fri Jun 4 07:50:18 UTC 2004


>Number:         67559
>Category:       ports
>Synopsis:       [NEW PORT] graphics/lphoto: A complete desktop solution for digital photo management
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jun 04 00:50:17 PDT 2004
>Closed-Date:
>Last-Modified:
>Originator:     michael johnson
>Release:        FreeBSD 5.2-CURRENT i386
>Organization:
>Environment:
System: FreeBSD gentoo.ahze.net 5.2-CURRENT FreeBSD 5.2-CURRENT #50: Thu Jun  3 21:24:59 EDT
>Description:

I tested this on 4.x and 5.x with sony dsc-p72, dsc-p10, and multi-card-read 
everything works execpt the cropping feature, for the cropping feature to work
we need to patch graphics/jpeg with the crop patch found http://sylvana.net/jpegcrop/jpegtran/

that patch will also allow inplace editing and lphoto won't need to be patched at all.

-

Lphoto is a complete desktop solution for digital photo management that 
resembles iPhoto on Macintosh. It features convenient tools to import, re-touch,
manage, and share digital photos quickly and easily.

Lphoto supports every camera that is supported in gphoto2 (ie. all PTP cameras).
See http://gphoto.sourceforge.net/proj/libgphoto2/support.php for a list of
supported cameras.

WWW:	http://info.linspire.com/lphoto/

Generated with FreeBSD Port Tools 0.50
>How-To-Repeat:
>Fix:

--- lphoto-1.0.13.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	lphoto
#	lphoto/pkg-descr
#	lphoto/Makefile
#	lphoto/pkg-plist
#	lphoto/files
#	lphoto/files/patch-aa
#	lphoto/distinfo
#
echo c - lphoto
mkdir -p lphoto > /dev/null 2>&1
echo x - lphoto/pkg-descr
sed 's/^X//' >lphoto/pkg-descr << 'END-of-lphoto/pkg-descr'
XLphoto is a complete desktop solution for digital photo management that 
Xresembles iPhoto on Macintosh. It features convenient tools to import, re-touch,
Xmanage, and share digital photos quickly and easily.
X
XLphoto supports every camera that is supported in gphoto2 (ie. all PTP cameras).
XSee http://gphoto.sourceforge.net/proj/libgphoto2/support.php for a list of
Xsupported cameras.
X
XWWW:	http://info.linspire.com/lphoto/
END-of-lphoto/pkg-descr
echo x - lphoto/Makefile
sed 's/^X//' >lphoto/Makefile << 'END-of-lphoto/Makefile'
X# New ports collection makefile for:	lphoto
X# Date created:		2004-06-03
X# Whom:			michael johnson <ahze at ahze.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	lphoto
XPORTVERSION=	1.0.13
XCATEGORIES=	graphics
XMASTER_SITES=	 http://software.linspire.com/emptypool/lindowsos/pool/main/l/lphoto/
XDISTNAME=	${PORTNAME}_${PORTVERSION}-0.0.0.45.lindows0.1
X
XMAINTAINER=	ahze at ahze.net
XCOMMENT=	A complete desktop solution for digital photo management
X
XBUILD_DEPENDS=	pyuic:${PORTSDIR}/x11-toolkits/py-qt
XLIB_DEPENDS=	Magick.6:${PORTSDIR}/graphics/ImageMagick
XRUN_DEPENDS=	gphoto2:${PORTSDIR}/graphics/gphoto2 \
X		pyuic:${PORTSDIR}/x11-toolkits/py-qt
X
XUSE_KDELIBS_VER=3
XUSE_PYTHON=	yes
XNO_BUILD=	yes
XWRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}
X
Xdo-install:
X	@cd ${WRKSRC} && ${PYTHON_CMD} install.py -d ${PREFIX}/${PYTHON_SITELIBDIR:S/${PYTHONBASE}//} -b ${PREFIX}/bin
X
X.include <bsd.port.mk>
END-of-lphoto/Makefile
echo x - lphoto/pkg-plist
sed 's/^X//' >lphoto/pkg-plist << 'END-of-lphoto/pkg-plist'
Xbin/lphoto
X%%PYTHON_SITELIBDIR%%/Lphoto/LICENSE.GPL
X%%PYTHON_SITELIBDIR%%/Lphoto/LPixmapPushButton.py
X%%PYTHON_SITELIBDIR%%/Lphoto/LPixmapPushButton.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/LRatingWidget.py
X%%PYTHON_SITELIBDIR%%/Lphoto/LRatingWidget.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/PListParser.py
X%%PYTHON_SITELIBDIR%%/Lphoto/PListParser.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/about.py
X%%PYTHON_SITELIBDIR%%/Lphoto/about.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/albumlist.py
X%%PYTHON_SITELIBDIR%%/Lphoto/albumlist.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/backtick.py
X%%PYTHON_SITELIBDIR%%/Lphoto/backtick.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/config.py
X%%PYTHON_SITELIBDIR%%/Lphoto/config.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/dragobjects.py
X%%PYTHON_SITELIBDIR%%/Lphoto/dragobjects.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/editview.py
X%%PYTHON_SITELIBDIR%%/Lphoto/editview.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/email.py
X%%PYTHON_SITELIBDIR%%/Lphoto/email.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/html.py
X%%PYTHON_SITELIBDIR%%/Lphoto/html.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/images/buttonadd.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/buttoninfo.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/buttonplay.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/buttonrotate.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/editb&w.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/editcrop.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/editenhance.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/editnext.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/editprev.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/editredeye.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/editrevert.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/icon.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/importcamera.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/labelstar.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/servicedesktop.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/serviceemail.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/servicehtml.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/serviceprint.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/serviceslideshow.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/shadowlowerleft.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/shadowlowermiddle.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/shadowlowerright.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/shadowmiddleright.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/shadowupperright.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourcealbum0.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourcealbum1.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourcealbum2.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourceimport.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourcelibrary0.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourcelibrary1.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourcelibrary2.png
X%%PYTHON_SITELIBDIR%%/Lphoto/images/sourcetrash.png
X%%PYTHON_SITELIBDIR%%/Lphoto/importpanel.py
X%%PYTHON_SITELIBDIR%%/Lphoto/importpanel.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/importsession.py
X%%PYTHON_SITELIBDIR%%/Lphoto/importsession.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/importthread.py
X%%PYTHON_SITELIBDIR%%/Lphoto/importthread.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/infopanel.py
X%%PYTHON_SITELIBDIR%%/Lphoto/infopanel.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/kdeemul.py
X%%PYTHON_SITELIBDIR%%/Lphoto/kdeemul.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/lphoto.py
X%%PYTHON_SITELIBDIR%%/Lphoto/lphoto.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/organizeview.py
X%%PYTHON_SITELIBDIR%%/Lphoto/organizeview.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/paths.py
X%%PYTHON_SITELIBDIR%%/Lphoto/paths.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/photolibrary.py
X%%PYTHON_SITELIBDIR%%/Lphoto/photolibrary.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/preferences.py
X%%PYTHON_SITELIBDIR%%/Lphoto/preferences.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/printer.py
X%%PYTHON_SITELIBDIR%%/Lphoto/printer.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/slideshow.py
X%%PYTHON_SITELIBDIR%%/Lphoto/slideshow.pyc
X%%PYTHON_SITELIBDIR%%/Lphoto/templates/thumb.xsl
X%%PYTHON_SITELIBDIR%%/Lphoto/utils.py
X%%PYTHON_SITELIBDIR%%/Lphoto/utils.pyc
X at dirrm %%PYTHON_SITELIBDIR%%/Lphoto/templates
X at dirrm %%PYTHON_SITELIBDIR%%/Lphoto/images
X at dirrm %%PYTHON_SITELIBDIR%%/Lphoto
END-of-lphoto/pkg-plist
echo c - lphoto/files
mkdir -p lphoto/files > /dev/null 2>&1
echo x - lphoto/files/patch-aa
sed 's/^X//' >lphoto/files/patch-aa << 'END-of-lphoto/files/patch-aa'
X--- Lphoto/photolibrary.py.orig	Fri May 14 15:44:44 2004
X+++ Lphoto/photolibrary.py	Fri Jun  4 00:47:08 2004
X@@ -535,9 +535,11 @@
X 		photo = self.getImage(key)
X 		self.__backupImage(photo)
X 		ipath = photo['ImagePath']
X-		os.system("jpegtran -copy all -rotate 90 -outfile \"%s\" \"%s\"" % (ipath,ipath))
X+		os.system("cp -f \"%s\" \"%s-TEMP\"" % (ipath,ipath))
X+		os.system("jpegtran -copy all -rotate 90 -outfile \"%s\" \"%s-TEMP\"" % (ipath,ipath))
X+		os.system("rm -f \"%s-TEMP\"" % (ipath))
X 		self.__refreshThumbnail(photo)
X-		self.emit(PYSIGNAL("updateImage"), (key, None))
X+		self.emit(PYSIGNAL("updateImageDetail"), (key, None))
X 		self.fastWrite()
X 
X 	def rotateCCImage(self, key):
X@@ -545,9 +547,11 @@
X 		photo = self.getImage(key)
X 		self.__backupImage(photo)
X 		ipath = photo['ImagePath']
X-		os.system("jpegtran -copy all -rotate 270 -outfile \"%s\" \"%s\"" % (ipath,ipath))
X+		os.system("cp -f \"%s\" \"%s-TEMP\"" % (ipath,ipath))
X+		os.system("jpegtran -copy all -rotate 270 -outfile \"%s\" \"%s-TEMP\"" % (ipath,ipath))
X+		os.system("rm -f \"%s-TEMP\"" % (ipath))
X 		self.__refreshThumbnail(photo)
X-		self.emit(PYSIGNAL("updateImage"), (key, None))
X+		self.emit(PYSIGNAL("updateImageDetail"), (key, None))
X 		self.fastWrite()
X 
X 	def cropImage(self, key, rect):
X@@ -555,7 +559,9 @@
X 		photo = self.getImage(key)
X 		self.__backupImage(photo)
X 		ipath = photo['ImagePath']
X-		os.system("jpegtran -copy all -crop %dx%d+%d+%d -outfile \"%s\" \"%s\"" % (rect.width(),rect.height(),rect.left(),rect.top(),ipath,ipath))
X+		os.system("cp -f \"%s\" \"%s-TEMP\"" % (ipath,ipath))
X+		os.system("jpegtran -copy all -crop %dx%d+%d+%d -outfile \"%s\" \"%s-TEMP\"" % (rect.width(),rect.height(),rect.left(),rect.top(),ipath,ipath))
X+		os.system("rm -f \"%s-TEMP\"" % (ipath))
X 		self.__refreshThumbnail(photo)
X 		self.emit(PYSIGNAL("updateImage"), (key, None))
X 		self.fastWrite()
X@@ -565,7 +571,9 @@
X 		photo = self.getImage(key)
X 		self.__backupImage(photo)
X 		ipath =photo['ImagePath']
X-		os.system("jpegtran -copy all -grayscale -outfile \"%s\" \"%s\"" % (ipath,ipath))
X+		os.system("cp -f \"%s\" \"%s-TEMP\"" % (ipath,ipath))
X+		os.system("jpegtran -copy all -grayscale -outfile \"%s\" \"%s-TEMP\"" % (ipath,ipath))
X+		os.system("rm -f \"%s-TEMP\"" % (ipath))
X 		self.__refreshThumbnail(photo)
X 		self.emit(PYSIGNAL("updateImageDetail"), (key, None))
X 	
END-of-lphoto/files/patch-aa
echo x - lphoto/distinfo
sed 's/^X//' >lphoto/distinfo << 'END-of-lphoto/distinfo'
XMD5 (lphoto_1.0.13-0.0.0.45.lindows0.1.tar.gz) = 45d8f8c2fd5a1d2b706c755653862258
XSIZE (lphoto_1.0.13-0.0.0.45.lindows0.1.tar.gz) = 137508
END-of-lphoto/distinfo
exit
--- lphoto-1.0.13.shar ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list