Opened 13 years ago
Closed 13 years ago
#30940 closed enhancement (wontfix)
Reorganize 'fuse' ports
Reported by: | anatol (Anatol Pomozov) | Owned by: | drkp (Dan Ports) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | mf2k (Frank Schima), bgrupe27 | |
Port: | macfuse fuse4x |
Description
Macfuse project is dead, fuse4x its successor is more and more widely used. Macfuse in macports has issues with Lion (Finder, deadlock, ...) as well as improper locking in 64bits kernel.
My suggestion is to dump macfuse and make fuse4x as a default fuse api implementation.
Dan mentioned that he wants several fuse api implementations in macports. In this case we need to handle this situation correctly. The plan is following:
- Add a virtual package "fuse". The only purpose of it is to have a dependency to default fuse implementation ("lib:libfuse.dylib:fuse4x").
- All fuse filesystems should depends on this virtual fuse package.
- All fuse api implementations should be ABI compatible (the same library name, the same compile flags, ...)
- Remove macfuse.
Change History (7)
comment:1 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
comment:2 Changed 13 years ago by anatol (Anatol Pomozov)
Do not use "lib:"
Or path (e.g. "path:lib/pkgconfig/fuse.pc:fuse4x") or some other mechanism that you think the best of all here.
My idea was that "fuse" port should be a virtual package that does not contain any source, just dependencies.
comment:5 Changed 13 years ago by drkp (Dan Ports)
Cc: | dports@… removed |
---|---|
Owner: | changed from macports-tickets@… to dports@… |
Status: | new → assigned |
I'm not sure I see any particular benefit to having the virtual package over declaring path: dependencies as we're currently doing.
I am giving some thought to replacing macfuse with fuse4x as the default fuse dependency for new installations, or removing macfuse entirely and making it replaced_by fuse4x. Normally, I would be inclined to wait for a while because fuse4x hasn't been available very long and it isn't clear how the situation with the various MacFUSE forks is going to shake out. But given that macfuse is unusable on most Lion systems, and fuse4x looks to be strictly an improvement (haven't heard any major complaints) we may want to do it now.
comment:6 Changed 13 years ago by anatol (Anatol Pomozov)
I'm not sure I see any particular benefit to having the virtual package over declaring path: dependencies as we're currently doing.
Currently we explicitly use macfuse dependency in every filesystem port. If we would have a virtual package then the macfuse/fuse4x dependency will be only in one place (as default implementation of the fuse interface). And it would be easier to change it. At least it is how it is done in APT or some other linux package managers.
But if you think that it is ok to have macfuse/fuse4x dependency in every filesystem port then I am ok as well.
comment:7 Changed 13 years ago by drkp (Dan Ports)
Resolution: | → wontfix |
---|---|
Status: | assigned → closed |
I don't think there's any benefit to having a metaport for the dependency.
But I've changed the default dependency for fuse ports to fuse4x in r83483. If macfuse is already installed (or explicitly installed), it can still be used.
Replying to anatol.pomozov@…:
Do not use "lib:" (or "bin:") -style dependencies unless you want a library (or binary) outside of MacPorts to be able to satisfy the dependency -- which you almost never want.