[PD] future PD-extended development

Ivica Bukvic ico at vt.edu
Tue Dec 23 23:24:23 CET 2014


On Dec 23, 2014 3:27 PM, "Dan Wilcox" <danomatika at gmail.com> wrote:
>
> * starting a new thread *
>
> * responding to : *
>
>> Actually, you're simply trading one shortcoming for another, and I would
argue you're shortcoming is a lot harder to troubleshoot. If you provide a
monolithic distribution to all of your users, then reproducing their
problems becomes exponentially easier as opposed to encouraging each user
to install select externals which may clash with each other in unusual ways
that may not be apparent otherwise and then trying to backtrace and
troubleshoot their specific set up as opposed to relying on one monolithic
release that you can easily reproduce on your own computer. If we had
infinite time on this rock this may be a feasible option. As for me,
particularly considering I am doing this not because I am getting paid to
do it, monolithic approach is the way to go with the ultimate goal of
having all externals in the extra folder and without any subfolders (in
part because duplicates and buggy externals will have been weeded out).
>
>
> Technically it doesn’t matter if you want to build everything together or
install things individually. Let’s say we move the externals into separate
repos. People working with the vanilla or Pd-L2ork sources or whatever can
use git submodules or clone the sources that they need into the extras
folder. Then everything can be built together and distributed. If a PD
developer wants to change the folder structure and layout of the externals
they use and maybe conditionally drop a c file, they can easily do that
with scripting that fetches the latest version and then removes the
unneeded files. I do this in a lot of projects including libpd where we
don’t need to compile all of the vanilla sources.

All this sounds nice but the question remains who will do the add-on
scripts to customize the build process and support both approaches? Hans
did a good chunk of this for extended and I simply chose to maintain entire
build system for pd-l2ork to ensure things get built properly for
pd-l2ork's needs which was a good chunk of work. If you want to merge what
I did with pd-l2ork and populate sources with ifdefs where I added features
that are impossible to implement in the current vanilla, I am all fine with
that. With my limited time, I simply don't have the resources to do all
this work and chance having it lie stuck on SourceForge as an uncommitted
patch.

>
> Conversely, some people can still download the vanilla binary and build
an external separately or install a precompiled external.
>
> Bug-wise, things might show up now and then (as they always do), but if
we’re all pulling from the a same place, bug reports can be sent upstream
and fixed. Again, it’s easy for this model to work on Github. Judging from
the sourceforge bugtracker, the pd community is good about opening bug
reports.
>
> Also, a simple option to continue extended would be a new “Pd-extended”
that is basically Miller’s current Pd vanilla binary with precompiled
externals in the /extra folder. This is what I currently use, a few of the
precompiled externals from the last version of Pd-extended with Miller’s
latest version. If what most people want are the new features of vanilla
with GEM and a few set of other externals, then we can do that now if it’s
much easier to build those externals without downloading the massive SVN. I
have a script which does this on Linux for my UDOO board setup so I have
the 9-10 externals my old song patch set requires. This is similar to
aforementioned idea of providding all the commonly used externals in one
precompiled download.
>
> As was pointed out Hans has already established the libdir format and I
was using “standard makefiles” etc earlier to refer to that. Again, I think
what’s important is to break out the external development from the SVN into
smaller, more maintainable repos in order to more effectively coordinate
resources. None of us are getting paid, which is why it’d be nice to find a
way to make this whole think work for *all* pd development.

Indeed. If you would like to reconcile the sources between pd-l2ork's tree
and vanilla third party externals, by all means please feel free to do so
and I will gladly merge whatever does not break my build process.

Best,

Ico

>
> --------
> Dan Wilcox
> @danomatika
> danomatika.com
> robotcowboy.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20141223/8ab6858c/attachment.html>


More information about the Pd-list mailing list