Page MenuHomeFreeBSD

graphics/webp-pixbuf-loader: Update to 0.0.1 -> stage_fs_violation
ClosedPublic

Authored by rigoletto on Fri, Jul 31, 1:32 AM.

Details

Summary
  • the port seems abbandoned
  • unfortunatelly there is a need to use PORTEPOCH (I would like to avoid if possible)
  • poudriere rise stage_fs_violation, and I have no clue of why
=>> Checking for staging violations... done
=>> Error: Filesystem touched during stage (files must install to ${STAGEDIR}):
usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache: 
	size (2841, 2840)

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

rigoletto created this revision.Fri, Jul 31, 1:32 AM
rigoletto requested review of this revision.Fri, Jul 31, 1:32 AM
rigoletto retitled this revision from graphics/webp-pixbuf-loader: Update to 0.0.1 -stage_fs_violation to graphics/webp-pixbuf-loader: Update to 0.0.1-stage_fs_violation.Fri, Jul 31, 1:33 AM
rigoletto edited the summary of this revision. (Show Details)
rigoletto edited the summary of this revision. (Show Details)
rigoletto retitled this revision from graphics/webp-pixbuf-loader: Update to 0.0.1-stage_fs_violation to graphics/webp-pixbuf-loader: Update to 0.0.1 -> stage_fs_violation.Fri, Jul 31, 1:36 AM
rigoletto updated this revision to Diff 75193.Fri, Jul 31, 1:39 AM

Re-instate STRIP_CMD.

rigoletto updated this revision to Diff 75194.Fri, Jul 31, 1:41 AM

Fix STRIP_CMD path.

unfortunatelly there is a need to use PORTEPOCH

huh, why?

poudriere rise stage_fs_violation, and I have no clue of why
usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache

Because the build system is doing gdk-pixbuf-query-loaders --update-cache for us, that should be disabled.
(And should be done in pkg post install hooks..)

They have a gdk_pixbuf_query_loaders_path meson option now, so we could define that to something harmless like echo.

graphics/webp-pixbuf-loader/Makefile
22 ↗(On Diff #75194)

I'm pretty sure it should be thumbnailers, that must be a mistake.

% ls /usr/local/share/thumbnailers
evince.thumbnailer                      gdk-pixbuf-webp-thumbnailer.thumbnailer heif.thumbnailer                        mypaint-ora.thumbnailer
gdk-pixbuf-thumbnailer.thumbnailer      gsf-office.thumbnailer                  librsvg.thumbnailer                     renderdoc.thumbnailer

Raised https://github.com/aruiz/webp-pixbuf-loader/issues/19

The port was not abandoned good. :-)

unfortunatelly there is a need to use PORTEPOCH

huh, why?

20160329 > 0.0.1

When there is no version yet, please, use:

DISTVERSION=	g20160329

https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/makefile-distfiles.html#makefile-master_sites-github-description

:-D

poudriere rise stage_fs_violation, and I have no clue of why
usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache

Because the build system is doing gdk-pixbuf-query-loaders --update-cache for us, that should be disabled.
(And should be done in pkg post install hooks..)

They have a gdk_pixbuf_query_loaders_path meson option now, so we could define that to something harmless like echo.

I was tough about that this night but I would need to have a look on how to do it since I am not used to gdk. Also, I have to have a look on that path but this is being done by upstream.

Thanks!

rigoletto updated this revision to Diff 75203.EditedFri, Jul 31, 11:06 AM

General update.

gdk-pixbuf-query-loaders --update-cache

brought a few doubts:

  1. it needs to be run by root hence the port could not be built by user;
  2. should it use FAKEROOT?
  3. the command could theoretically be run from anywhere, does it worth to run from ${STAGEDIR} or something?

@mat

PS. the path thing was already be fixed by upstream.

Thanks!

rigoletto marked an inline comment as done.Fri, Jul 31, 11:07 AM

No, no, please read this carefully again:

Because the build system is doing gdk-pixbuf-query-loaders --update-cache for us, that should be disabled.
(And should be done in pkg post install hooks..)

We specifically MUST NOT run gdk-pixbuf-query-loaders --update-cache at BUILD time, only at pkg install time.

Basically copy the @postexec / @postunexec lines from graphics/librsvg2-rust/pkg-plist here.

And add something like MESON_ARGS+= -Dgdk_pixbuf_query_loaders_path=/bin/echo to not do it at build time

rigoletto added a comment.EditedFri, Jul 31, 12:30 PM

No, no, please read this carefully again:

Because the build system is doing gdk-pixbuf-query-loaders --update-cache for us, that should be disabled.
(And should be done in pkg post install hooks..)

We specifically MUST NOT run gdk-pixbuf-query-loaders --update-cache at BUILD time, only at pkg install time.

Basically copy the @postexec / @postunexec lines from graphics/librsvg2-rust/pkg-plist here.

And add something like MESON_ARGS+= -Dgdk_pixbuf_query_loaders_path=/bin/echo to not do it at build time

I've commented that line out. Cleaner than doing things for no reason,

graphics/webp-pixbuf-loader/Makefile
26 ↗(On Diff #75203)

???

You've commented it out in meson just to do the same manually at the same time. post-install is when the ports makefile "installs" the software into the staging directory.

Basically copy the @postexec / @postunexec lines from graphics/librsvg2-rust/pkg-plist here.

We have to have a pkg-plist that would do this IN PKG.

rigoletto updated this revision to Diff 75219.Fri, Jul 31, 4:54 PM

Seems to work as expected now.

rigoletto added inline comments.Fri, Jul 31, 4:59 PM
graphics/webp-pixbuf-loader/Makefile
26 ↗(On Diff #75203)

???

You've commented it out in meson just to do the same manually at the same time. post-install is when the ports makefile "installs" the software into the staging directory.

Basically copy the @postexec / @postunexec lines from graphics/librsvg2-rust/pkg-plist here.

We have to have a pkg-plist that would do this IN PKG.

Sorry, just saw I see your comment, and I have not finished yet. :-)

rigoletto updated this revision to Diff 75221.Fri, Jul 31, 5:18 PM

Well, I think this is more correct to be done at post-install phase. :-)

rigoletto updated this revision to Diff 75223.Fri, Jul 31, 5:33 PM

Add PORTEPOCH. :-(

graphics/webp-pixbuf-loader/Makefile
26 ↗(On Diff #75203)

That echo won't do anything unless you echo into TMPPLIST or PLIST whatever is appropriate for PLIST_FILES.

I'd rather switch to a real plist file.

rigoletto added inline comments.Sat, Aug 1, 2:14 AM
graphics/webp-pixbuf-loader/Makefile
26 ↗(On Diff #75203)

Hi, we can switch to a pkg-plist file but the project recommendation is to use PLIST_FILES when there are just a few files. :-)

rigoletto updated this revision to Diff 75241.Sat, Aug 1, 8:31 AM

Add pkg-plist. In this particular case not using the pkg-plist file proved to be worse than using it with a few files.

Thanks for your pacience. ;-)

rigoletto marked 2 inline comments as done.Sat, Aug 1, 8:32 AM

I just still don't know why the cache was apparently being updated before but this is something I can investigate later.

I just still don't know why the cache was apparently being updated before but this is something I can investigate later.

Before as in..?

This revision is now accepted and ready to land.Sat, Aug 1, 8:02 PM

I just still don't know why the cache was apparently being updated before but this is something I can investigate later.

Before as in..?

I've run gdk-pixbuf-query-loaders --update-cache after removing the package, and I supposed it would remove it from the cache (what seems sane to me).

This revision was automatically updated to reflect the committed changes.