Opened 5 years ago

Last modified 5 years ago

#3733 assigned enhancement

Building with Conda-Forge?

Reported by: Tristan Croll Owned by: Tom Goddard
Priority: major Milestone:
Component: Build System Version:
Keywords: Cc: chimera-staff
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

I received the following email from John Chodera yesterday:


Tristan: Has chimeraX thought of going to conda-forge too? We're working with Quansight, who have some contractors that can help with that.

I'd be happy to help monetarily with funding Quansight to help if this was an issue.

Best,

John


There could be substantial advantages to this approach. One of those would be direct inter-operability with other major structural biology-related scientific packages. It's the future home of all official builds of OpenMM, and CCTBX/Phenix is also almost completely moved there (they aim to officially switch by the end of the year). Would also make it easy to work with packages like PyTorch, which could be really important - I'm told the Open Force Field consortium is finalising a new force field approach which can do away with residue templates in favour of applying parameters directly based on the molecular bond information using a graph convolutional network. They've already demonstrated some pretty amazing results applying it to small molecules, and are currently extending it out to general polymeric systems.

The other potentially large advantage I can see would be that this would make it easy for third party plugin developers to manage their builds. Rather than needing to have their own well-controlled environments for all three major operating systems, they could just use Conda recipes which declare ChimeraX release or dev builds as dependencies.

Change History (2)

comment:1 by pett, 5 years ago

Cc: chimera-staff added
Component: UnassignedBuild System
Owner: changed from pett to Tom Goddard

I looked very briefly at conda-forge requirements, and one thing that stood out as a problem as long as we use PyQt (and maybe Qt?) is:

As a general rule: all dependencies have to be packaged by conda-forge as well. This is necessary to assure ABI compatibility for all our packages.

in reply to:  2 ; comment:2 by Tristan Croll, 5 years ago

The Phenix team are moving their GUI to Qt (via PySide2 rather than PyQt). Might be worth asking Billy Poon about his experience with that and Conda.
________________________________
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: 18 September 2020 16:28
Cc: chimera-staff@cgl.ucsf.edu <chimera-staff@cgl.ucsf.edu>; goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>; pett@cgl.ucsf.edu <pett@cgl.ucsf.edu>; Tristan Croll <tic20@cam.ac.uk>
Subject: Re: [ChimeraX] #3733: Building with Conda-Forge?

#3733: Building with Conda-Forge?
------------------------------------+-------------------------
          Reporter:  Tristan Croll  |      Owner:  Tom Goddard
              Type:  enhancement    |     Status:  assigned
          Priority:  major          |  Milestone:
         Component:  Build System   |    Version:
        Resolution:                 |   Keywords:
        Blocked By:                 |   Blocking:
Notify when closed:                 |   Platform:  all
           Project:  ChimeraX       |
------------------------------------+-------------------------
Changes (by Eric Pettersen):

 * cc: chimera-staff (added)
 * owner:  Eric Pettersen => Tom Goddard
 * component:  Unassigned => Build System


Comment:

 I looked very briefly at conda-forge requirements, and one thing that
 stood out as a problem as long as we use PyQt (and maybe Qt?) is:

 As a general rule: all dependencies have to be packaged by conda-forge as
 well. This is necessary to assure ABI compatibility for all our packages.

--
Ticket URL: <https://plato.cgl.ucsf.edu/trac/ChimeraX/ticket/3733#comment:1>
ChimeraX <http://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker
Note: See TracTickets for help on using tickets.