Need someone to check the new Portfile

Ryan Schmidt ryandesign at macports.org
Wed Dec 21 01:03:19 PST 2011


On Dec 21, 2011, at 02:55, 에센 사그노브 wrote:

> My name is Esen Sagynov. I have just developed a port for CUBRID Manager, a GUI based database administration tool for CUBRID. CUBRID is a very popular open source SQL database management system in Asia. The community site can be found at http://www.cubrid.org.
> 
> 
> 
> Before I proceed with requesting a commit access, I would like to make sure my code follows the standards.

We consider granting commit access to people who have already demonstrated an ongoing commitment to MacPorts. Since I believe this will be your first contribution, please follow the normal procedure: create a ticket in the issue tracker and attach your proposed Portfile there.


> I have pasted the Portfile code to http://pastebin.com/DZ7DkfER.
> 
> 
> 	• Simply put, the software doesn't require any build or installation. It's just extract-and-use type of software.
> 		• For this reason I skipped build {},
> 		• and implemented custom destroot {...} which just copies the extracted files to /opt/local/etc/${name}.

${prefix}/etc is not a good place for executable code; typically, only config files would live there.

Possible ${prefix}/libexec/${name} would be an acceptable location, but it would be preferable if you can fit the files into the normal directory structure (see "man porthier").

> 	• Once extracted and copies to destination, it will have a cubridmanager.app. Since /opt/loca/etc/cubridmanager is not included in the path, I added a symlink to /opt/local/bin.
> So here I need your feedback. How good practice it is to add symlinks to the main App file to ${prefix}/bin?

If you can't install the binaries into ${prefix}/bin directly, then putting a symlink there is fine.


> Or is it better to add final destination dir to users' path? But again, I don't know who is the user, so I can't do this.

Right, so don't do that.


> Another small problem I experience with symlink is that when I uninstall the port, the symlink still remains. Macports doesn't delete it. Why?

Because you made it directly in ${prefix}; you need to make it in ${destroot}${prefix}.




More information about the macports-dev mailing list