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

From: Tijl Coosemans <tijl_at_FreeBSD.org>
Date: Wed, 17 Nov 2021 10:08:02 UTC
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/