<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><span style="font-family:Arial,Helvetica,sans-serif">On Tue, May 28, 2019 at 2:39 PM Mojca Miklavec <<a href="mailto:mojca@macports.org">mojca@macports.org</a>> wrote:</span><br></div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Dear Rajdeep,<br>
<br>
[Removing the -users mailing list as regular users should not be<br>
concerned with ugly implementation details of MacPorts :), and CC-ing<br>
Karan, Renee & Cyril.]<br>
<br>
On Tue, 28 May 2019 at 08:56, Rajdeep Bharati wrote:<br>
><br>
> Dear developers,<br>
><br>
> I am packaging buildbot 2.x as a port. However, a key part of buildbot 2 is the web interface, buildbot-www, which uses many javascript dependencies (those aren't available as MacPorts packages yet). Please find the attached image which shows the dependencies.<br>
><br>
> <a href="https://drive.google.com/file/d/1CnjcmMvd4fsXtJqhjrTRGVC0Rfn2s9gW/view" rel="noreferrer" target="_blank">https://drive.google.com/file/d/1CnjcmMvd4fsXtJqhjrTRGVC0Rfn2s9gW/view</a><br>
><br>
>  Screenshot 2019-05-28 at 11.36.55 AM.png<br>
><br>
> What would be the right way to package this? Would it be a python port?<br>
> Would it be better to package all of the above JS libraries?<br>
><br>
> It would be great if someone could throw some light on this.<br>
><br>
> Thanks and Regards<br>
> Rajdeep<br>
<br>
If I didn't make an "OCR error" myself, here's the list of packages in<br>
plain text:<br>
jquery, angular, angular-animate, angular-bootstrap,<br>
angular-ui-router, angular-recursion, loadash, guanlecoja-ui, moment,<br>
d3, font-awesome, bootstrap, buildbot-data,<br>
angular-bootstrap-multiselect<br>
<br>
I'm not entirely sure about the best strategy either. It would<br>
definitely make sense to check what other distributions are doing and<br>
also get recommendations from buildbot developers. I'm pretty sure<br>
that FreeBSD, Debian, RedHat etc. all package buildbot and it would<br>
make sense to check what package dependencies they declare / what<br>
files the packages install.</blockquote><div> </div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">As you can see in the freebsd implementation: <a href="https://svnweb.freebsd.org/ports/head/devel/py-buildbot-www/Makefile?revision=501623&view=markup" style="font-family:Arial,Helvetica,sans-serif">https://svnweb.freebsd.org/ports/head/devel/py-buildbot-www/Makefile?revision=501623&view=markup</a></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">They have specified the pip dependencies only (although I don't know how freshports works internally)</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I would say that it sounds acceptable to install those dependencies on<br>
the fly and mention installation instructions in port notes as the<br>
first step (I'm just not sure where to install those files). I would<br>
like to avoid you having to waste too much time trying to get all of<br>
the javascript dependencies in place instead of spending some<br>
productive time fixing bugs and implementing new functionality in<br>
buildbot. Porting buildbot itself is one thing, dealing with a lot of<br>
other unrelated dependencies something else, and one thing that we<br>
already struggled with in the past, not being quite sure what<br>
precisely to do.<br>
<br>
On the other hand, this potentially sounds like a good real-world test<br>
case for Karan who already wrote both npm backend for upt and the<br>
macports frontend. I'm not sure how mature that code is and what Karan<br>
is currently working on, but it might be worth trying it out.<br>
(The following is meant more as a joke, I know that we don't have<br>
nearly sufficient information available, but ideal upt<br>
frontend/backend would already take care of all the dependency hell<br>
and automatically declare & create also the javascript dependencies<br>
for buildbot :) :) :)<br>
<br>
Mojca<br></blockquote><div><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">The portfiles that I have written (using the awesome upt-macports tool) are analogous to </div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">freshports <a href="https://www.freshports.org/devel/py-buildbot/" style="font-family:Arial,Helvetica,sans-serif">https://www.freshports.org/devel/py-buildbot</a></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><a href="https://www.freshports.org/devel/py-buildbot-pkg">https://www.freshports.org/devel/py-buildbot-pkg</a><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><a href="https://www.freshports.org/devel/py-buildbot-worker">https://www.freshports.org/devel/py-buildbot-worker</a><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">But the py-buildbot-www Portfile doesn't work in the desired manner since the JS dependencies</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">haven't been installed.</div></div></div>