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