MPlayer Port Suggestion
Ryan Schmidt
ryandesign at macports.org
Fri Nov 21 15:44:14 PST 2008
On Nov 21, 2008, at 12:24, Eric Cronin wrote:
> On Nov 20, 2008, at 7:30 PM, Ryan Schmidt wrote:
>
>> On Nov 20, 2008, at 17:38, David Evans wrote:
>>
>>> I'm not sure if this is what you had in mind or not, but port
>>> ffmpeg is
>>> an example of a port that uses svn to fetch a specific revision
>>> from a
>>> repository (because that's the only way they do it).
>>
>> Well ffmpeg does it a bit of a weird convoluted way, because it
>> wants to pin down the version of an external definition in
>> ffmpeg's repository and they haven't done so themselves in the
>> repository like they should.
>>
>> The simpler way to fetch source from Subversion is to just use the
>> keywords MacPorts gives you for that purpose. See the pure-devel
>> port for an example of that.
>
> Is using svn.url + svn.tag a recommended approach now? I seem to
> remember it being discouraged and that a local distfile should be
> made instead, but maybe that was changed when we dropped support
> for versions of OS X without a system svn client?
I don't have a problem with using svn.url and svn.tag. It's a
MacPorts feature; it's there to be used.
One problem with it is that the files are re-fetched every time you
try to install the port. This is merely an inefficiency and could be
corrected. I filed this ticket:
http://trac.macports.org/ticket/16373
I believe the other complaint about fetching from Subversion is that
we don't get to put checksums in the portfile so we don't get to
confirm that the thing the user downloaded is the same thing the port
author used. This is a valid complaint if you don't use svn.tag since
it will download from HEAD where someone may have made changes after
the port was created. However if you use svn.tag to pin down the
revision, then the only way you could get something different than
the port author did would be if the download was corrupted (can that
happen? doesn't Subversion have built-in checksum methods to handle
that?) or if the repository history was modified (which I think would
be difficult for a malicious person to pull off; it requires admin
access to the server and the ability to run svnadmin dump /
svndumptool / svnadmin load). Or it would require someone bending the
DNS entries to point to a different server...
Being able to use Subversion checkouts in MacPorts is nice. To update
pure-devel to a new version, most of the time all I have to do is
change a single line in the portfile. If I had to make distfiles
every time, it would be a lot more involved. I think for -devel ports
especially, fetching from Subversion is fine. If someone wants all
the stability / security / performance assurances of a released
version, they shouldn't be using a -devel port.
Which brings us back to MPlayer, which is not a -devel port. Well, I
don't know. I guess I've said a lot of things but not really reached
a conclusion. Maybe I'd better stop and wait for some more opinions
to pour in. :)
More information about the macports-users
mailing list