Opened 7 years ago

Closed 7 years ago

#42596 closed submission (fixed)

new port: MobileDevice 1.0.100

Reported by: schmurtz_macport@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: neverpanic (Clemens Lang)
Port: MobileDevice

Description

A python package, and command line tool, which wraps Apple's MobileDevice API - providing access to iOS devices.

Attachments (1)

Portfile (1.2 KB) - added by schmurtz_macport@… 7 years ago.

Download all attachments as: .zip

Change History (9)

comment:1 Changed 7 years ago by neverpanic (Clemens Lang)

You don't need to set name since github.setup already does that for you.

How did you come up with the version number? It doesn't seem upstream is providing any version numbering (or tags, for that matter), so our course of action usually is the following:

  • Ask upstream to provide versioning and tags in their git-repo for us to track.
  • If upstream isn't willing to do that, reference a commit (like you did) and use a date in the form YYYYMMDD as version number.

The port fails lint (port lint --nitpick), because it doesn't set a license field (effectively preventing binary re-distribution). https://github.com/mountainstorm/MobileDevice/blob/master/LICENSE suggests the project is MIT-licensed, so license MIT would be appropriate. Note that the MIT license requires us to ship the license file:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

So you'd have to add something along the lines of:

post-destroot {
  xinstall -m0755 -d ${destroot}${prefix}/share/doc/${name}
  xinstall -m0644 ${worksrcpath}/LICENSE ${destroot}${prefix}/share/doc/${name}/ 
}

comment:2 Changed 7 years ago by neverpanic (Clemens Lang)

Cc: cal@… added

comment:3 Changed 7 years ago by neverpanic (Clemens Lang)

You might also want to ask upstream to incorporate installing the license file into their installation routine.

comment:4 in reply to:  1 Changed 7 years ago by schmurtz_macport@…

How did you come up with the version number?

Upstream is using the "1.0." + (commit count) as a version number, as implemented in https://github.com/mountainstorm/MobileDevice/blob/master/setup.py:

	version=u'1.0' + getcommit(),


The port fails lint (port lint --nitpick), because it doesn't set a license field (effectively preventing binary re-distribution).

Portfile updated

Changed 7 years ago by schmurtz_macport@…

Attachment: Portfile added

comment:5 Changed 7 years ago by neverpanic (Clemens Lang)

This port currently installs a file at $prefix/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Distutils-1.0-py2.7.egg-info. I've reported and I'd like to wait for https://github.com/mountainstorm/MobileDevice/issues/16 to be fixed before committing this to avoid conflicts with the distutils python package.

Also reported

comment:6 Changed 7 years ago by mf2k (Frank Schima)

Port: MobileDevice added
Type: defectsubmission
Version: 2.2.1

comment:7 Changed 7 years ago by ryandesign (Ryan Schmidt)

Why have you set distname? The github portgroup should work with any distname (when fetching from tags or commits), so there's no reason to change it from its default, and changing it to a value that does not include a version number or other similar identifier is problematic and requires additional steps be taken.

comment:8 Changed 7 years ago by neverpanic (Clemens Lang)

Resolution: fixed
Status: newclosed

It seems upstream isn't going to respond… in that case: committed in r117783 with the following changes:

  • Applied a patch that fixes the package name issue
  • Fixed the package version number (because it can't be determined from git in our setup)
  • Avoid setting distname by renaming the worksrcdir to "MobileDevice" after extract, since the build system expects that

Thank you for your submission!

Note: See TracTickets for help on using tickets.