[ITP] FUSE 2.8
Sat Jul 23 06:02:00 GMT 2016
On 23/07/2016 02:31, Bill Zissimopoulos wrote:
> On 7/22/16, 12:57 PM, Marco Atzeri wrote:
>> On 22/07/2016 19:58, Bill Zissimopoulos wrote:
>>>> winfsp-fuse is a reasonable name.
>>>> dokan-fuse also (IMHO)
>>> In the interest of moving things forward, I am happy to rename the
>>> package. Is it possible for a package with a name winfsp-fuse to
>>> satisfy a
>>> âfuseâ dependency?
>> It is not clear to me what you mean.
>> If some package depends on winfsp-fuse, the dependency will be
>> winfsp-fuse will require the external package winfsp.
> My apologies for not making it clearer. What I meant to say is this:
> Suppose I have a package XYZ that requires FUSE. Is it possible that the
> âFUSEâ dependency can be satisfied by either winfsp-fuse or dokan-fuse?
> If that is not possible it looks like we would have to have winfsp-sshfs
> or dokan-sshfs, etc. which IMO is less desirable.
It depends on the type of dependency
- The hard coded dependency is based on dll's
example : octave dll requires the readline dll provided by
the package libreadline7
$ cygcheck /usr/bin/cygoctave-3.dll |grep readline
$ cygcheck -f $(cygpath -u 'E:\cygwin64\bin\cygreadline7.dll')
In this case the dependency is hard coded in the octave binary itself.
We don't have a way (yet) to provide the same dll from two different
packages. In theory it can be done with pre/prost install scripts
that copy and remove dll's in "/usr/bin" but it will be tricky.
We can not use links with dll's on cygwin for windows loader constrain.
- The dependency is based on command
ls -l /usr/bin/automake
lrwxrwxrwx 1 marco Administrators 34 Aug 3 2013 /usr/bin/automake ->
64 $ cygcheck -f /usr/share/autotools/am-wrapper.sh
$ cygcheck -cd |grep automake
automake is a wrapper package that can be defined
to match the needed version and pull all the versions
$ automake --version
automake (GNU automake) 1.14.1
$ cygcheck-dep -r automake
automake: requires ( automake1.10 automake1.11 automake1.12
automake1.13 automake1.14 automake1.15 automake1.4 automake1.5
automake1.6 automake1.7 automake1.8 automake1.9 bash gawk )
Alternatives can also be used to manage command dependency
$ alternatives --display unison
unison - status is auto.
link currently points to /usr/bin/unison-2.48
/usr/bin/unison-2.48 - priority 2048
Current `best' version is /usr/bin/unison-2.48.
specially when you need only one variant installed,
but several are potentiall available:
$ cygcheck -cd |grep unison
$ cygcheck -p "bin/unison-"
Found 7 matches for bin/unison-
unison2.27-2.27.157-4 - unison2.27: Synchronize ...
unison2.32-2.32.52-4 - unison2.32: Synchronize ...
unison2.40-2.40.102-1 - unison2.40: Synchronize ..
unison2.45-2.45.28-1 - unison2.45: Synchronize ..
unison2.48-2.48.3-1 - unison2.48: Synchronize ..
unison2.48-2.48.3-2 - unison2.48: Synchronize ..
unison2.49-2.49.543-1 - unison2.49: Synchronize ..
PS: today there is only one case of packages providing same name dll's
and the solution is sub-optimal and working only as
- there is a preferred order
openblas cygblas-0.dll is preferred versus lapack one.
- the maintainer is the same: me
More packages with the same dll collision will require to work on
pre/prost install scripts general solution.
More information about the Cygwin-apps