On Mar 7, 2009, at 01:56, Martin Krischik wrote:

Jeremy Huddleston schrieb:

Could we possibly make nonpareil a bit more light weight by adding the files/ stuff to a tarball on the mirrors... there's no need to clutter
everyone's disk with these 9M

Agreed. Note it's really only 4MB for most people. (You're counting the redundant files that Subversion stores in working copies; most people use rsync for their dports tree and not Subversion.) But that's still excessive for one port. The entire dports tree is 51.6MB with the PortIndex occupying 3.2MB. We have ~5600 ports so the average size of a port is around 8KB, so nonpareil is 500 times larger than the average.


Shure - have you got a link for me on how to do it? Yes, I did search
the guide and I did search the wiki but nothing useful turned up. Of
course I might just have used the wrong search keywords.

Suggestion: If there is no documentation yet then write a Wiki and send
be the link only.

And is there a place in the svn hierarchy where I can keep the files. It
is helpful to keep the change history of command files and plists.

I don't think there's any specific documentation on this topic. If you need documentation, please consider writing some, after you've learned the steps. It's hard for me to know what steps would be helpful to you.


I recommend you copy the icons into your user directory in the repository, which you would first have to create.


export REPO=http://svn.macosforge.org/repository/macports

svn mkdir $REPO/users/krischik

svn mkdir $REPO/users/krischik/nonpareil

svn cp $REPO/trunk/dports/emulators/nonpareil/files \
$REPO/users/krischik/nonpareil/appbundles

svn rm $REPO/users/kirschik/nonpareil/appbundles/patch-src-util.diff


Now you can export that directory and compress it in the same format as your port's existing distfile, which is .tar.gz. Note you should "svn export" and not "svn checkout" because checking out will create a working copy with lots of redundant information in the .svn directories which is not appropriate in a distribution tarball.


svn export $REPO/users/kirschik/nonpareil/appbundles \
nonpareil-appbundles

tar czf nonpareil-appbundles-rREV.tar.gz nonpareil-appbundles


where REV is the revision number that was exported, or some other unique identifier that is not necessarily tied to the version number of nonpareil.

Now you can import that distfile into the repository. The distfiles directory would be a good place for it. You'll first have to make the directory for nonpareil.


svn mkdir $REPO/distfiles/nonpareil

svn import nonpareil-appbundles-rREV.tar.gz $REPO/distfiles/nonpareil


Now you can go back to your dports working copy and edit the nonpareil portfile to download nonpareil-appbundles-rREV.tar.gz additionally, like this:


Index: Portfile
===================================================================
--- Portfile    (revision 47813)
+++ Portfile    (working copy)
@@ -22,13 +22,17 @@
                                        algorithms from the calculator.

 homepage                       http://nonpareil.brouhaha.com/
-master_sites           http://nonpareil.brouhaha.com/download
+master_sites           http://nonpareil.brouhaha.com/download:prog \
+                                       macports:nonpareil:appbundles

 set prog                       nonpareil-${version}.tar.gz
+set appbundles         nonpareil-appbundles-rREV.tar.gz

-distfiles                      ${prog}
+distfiles                      ${prog}:prog \
+                                       ${appbundles}:appbundles

-checksums                      ${prog} sha1 
83bc2f57e6ece9ce19e3449cce075ef246a9f4c2
+checksums                      ${prog} sha1 
83bc2f57e6ece9ce19e3449cce075ef246a9f4c2 \
+                                       ${appbundles} sha1 
0123456789abcdef0123456789abcdef01234567

 depends_lib                    port:bison                                      
                        \
                                        port:flex                               
                                \


It seems like you also can enormously simplify your "platform macosx" section to just this:


platform macosx {
        post-destroot {
                xinstall -d ${destroot}${applications_dir}/Nonpareil
foreach calc {HP-21 HP-25 HP-32E HP-33C HP-34C HP-34 HP-37E HP-38C HP-38E HP-41CV HP-41CX HP-45 HP-55 HP-80} { copy ${worksrcpath}/nonpareil-appbundles/${calc}.app ${destroot}$ {applications_dir}/Nonpareil
                        reinplace s|@PREFIX@|${prefix}|g \
${destroot}${applications_dir}/Nonpareil/${calc}.app/Contents/ MacOS/${calc}.command
                }
        }
}


And of course you'll want to then "svn rm" all the icons in the files directory before you commit.




_______________________________________________
macports-dev mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev

Reply via email to