Re: git: 37c1a83366f0 - main - devel/desktop-file-utils: use trigger

From: Baptiste Daroussin <bapt_at_FreeBSD.org>
Date: Wed, 17 Nov 2021 10:34:08 UTC
On Wed, Nov 17, 2021 at 11:08:02AM +0100, Tijl Coosemans wrote:
> On Wed, 17 Nov 2021 09:48:16 GMT Baptiste Daroussin <bapt@FreeBSD.org>
> wrote:
> > The branch main has been updated by bapt:
> > 
> > URL: https://cgit.FreeBSD.org/ports/commit/?id=37c1a83366f02cdf76b850c630f79c275a418bea
> > 
> > commit 37c1a83366f02cdf76b850c630f79c275a418bea
> > Author:     Baptiste Daroussin <bapt@FreeBSD.org>
> > AuthorDate: 2021-10-11 07:46:55 +0000
> > Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
> > CommitDate: 2021-11-17 09:47:29 +0000
> > 
> >     devel/desktop-file-utils: use trigger
> >     
> >     Instead of polluting all files with a script to be executed post install
> >     convert the handling of mime database into a trigger
> >     
> >     This trigger will regenerate the db each time someone install a files
> >     into the concern directory
> >     
> >     On removal of the desktop-file-utils port, it will cleanup its cache.
> >     
> >     While here convert the post installation script into a lua script.
> >     Note the db is always run at post installation of the port, just to make
> >     sure the cache is up to date, in case the format changes in the futur
> > ---
> >  devel/desktop-file-utils/Makefile                  | 14 +++++--------
> >  .../files/desktop-file-utils.ucl.in                | 24 ++++++++++++++++++++++
> >  devel/desktop-file-utils/files/pkg-deinstall.in    | 15 --------------
> >  devel/desktop-file-utils/files/pkg-install.in      | 11 ----------
> >  .../files/pkg-post-install.lua.in                  |  2 ++
> >  5 files changed, 31 insertions(+), 35 deletions(-)
> > 
> > diff --git a/devel/desktop-file-utils/Makefile b/devel/desktop-file-utils/Makefile
> > index ff765677b064..4a83a8eab39a 100644
> > --- a/devel/desktop-file-utils/Makefile
> > +++ b/devel/desktop-file-utils/Makefile
> > @@ -2,6 +2,7 @@
> >  
> >  PORTNAME=	desktop-file-utils
> >  PORTVERSION=	0.26
> > +PORTREVISION=	1
> >  CATEGORIES=	devel
> >  MASTER_SITES=	http://freedesktop.org/software/${PORTNAME}/releases/
> >  
> > @@ -11,18 +12,13 @@ COMMENT=	Couple of command line utilities for working with desktop entries
> >  LICENSE=	GPLv2+
> >  LICENSE_FILE=	${WRKSRC}/COPYING
> >  
> > -USES=		compiler:c11 gettext meson gnome pkgconfig tar:xz
> > +USES=		compiler:c11 gettext meson gnome pkgconfig trigger tar:xz
> >  USE_GNOME=	glib20
> >  
> > -PKGINSTALL=	${WRKDIR}/pkg-install
> > -PKGDEINSTALL=	${WRKDIR}/pkg-deinstall
> > -
> > -PORT_MIMEDIRS=	${LOCALBASE}/share/applications
> > -
> > -MIMEDIRS=	${PORT_MIMEDIRS}
> > -
> > -SUB_FILES=	pkg-deinstall pkg-install
> > +MIMEDIRS=	share/applications
> >  SUB_LIST=	MIMEDIRS="${MIMEDIRS}"
> > +PKGPOSTINSTALL=	${WRKDIR}/pkg-post-install
> > +SUB_FILES=	pkg-post-install.lua
> >  
> >  post-install:
> >  	${INSTALL_DATA} ${WRKSRC}/misc/desktop-entry-mode.el \
> > diff --git a/devel/desktop-file-utils/files/desktop-file-utils.ucl.in b/devel/desktop-file-utils/files/desktop-file-utils.ucl.in
> > new file mode 100644
> > index 000000000000..ed07df4f223f
> > --- /dev/null
> > +++ b/devel/desktop-file-utils/files/desktop-file-utils.ucl.in
> > @@ -0,0 +1,24 @@
> > +path: "%%PREFIX%%/%%MIMEDIRS%%"
> > +cleanup: {
> > +	type: lua
> > +	script: <<EOS
> > +local mimedir = "%%PREFIX%%/%%MIMEDIRS%%/"
> > +local cache = mimedir .. "mimeinfo.cache"
> > +local st = pkg.stat(cache)
> > +if st then
> > +	os.remove(cache)
> > +end
> > +local res = pkg.readdir(mimedir)
> > +if #res == 0 then
> > +	os.remove(mimrdir)
> 
> s/mimrdir/mimedir/

Good catch, thank you, fixed!

Bapt