How to deal with ports-filesystem violation?

Marko Käning mk-macports at posteo.net
Sun Jun 28 15:11:02 PDT 2015


Hi maintainers,

I am having a little trouble with some new ports which I am trying to introduce anew.

They need to install stuff into OSX’ system locations, specifically into

 - /Library/Application Support 
 - /Library/Preferences

But, of course, this is what I get when trying that:
---
$  sudo port destroot
Password:
Portfile changed since last build; discarding previous state.
--->  Computing dependencies for kf5-kdoctools
--->  Fetching distfiles for kf5-kdoctools
--->  Verifying checksums for kf5-kdoctools
--->  Extracting kf5-kdoctools
--->  Configuring kf5-kdoctools
--->  Building kf5-kdoctools
--->  Staging kf5-kdoctools into destroot
Warning: violation by /Library/Application Support
Warning: kf5-kdoctools violates the layout of the ports-filesystems!
Warning: Please fix or indicate this misbehavior (if it is intended), it will be an error in future releases!
---

As to be expected, MacPorts allows me to install it in there, but isn’t happy about
it and warns that it will be considered to be an erroneous install in the future…

   So, I wonder what would be the best way to handle this case now.

I thought about installing everything into ${prefix}/Library/... instead and then
fs-traverse through the folders in question and copy (or even better only symlink)
all those files one by one into the system location in a post-destroot step. This
would allow to fine-granularily check that there’s nothing in the system which might
get overwritten.

Anyway, I don’t expect any collisions between the files installed and those usually
present on an OSX system, which is why the direct install into /Library/... seems
fine for the time being, but I want to do it the right way.

Suggestions?

Greets,
Marko



More information about the macports-dev mailing list