Opened 3 years ago

Last modified 3 years ago

#7626 assigned defect

On windows all of ChimeraX lives under C:\\...\\ChimeraX.app\\bin\\

Reported by: Zach Pearson Owned by: Greg Couch
Priority: low Milestone:
Component: Build System Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

I was playing whack-a-mole over the weekend with ChimeraX's app dirs definitions and noticed Windows has an odd folder structure.

On Windows, ChimeraX.app has bin, include, and lib at the top level. The latter two are not long for this world, pending the conversion of binary bundles to TOML bundle builder -- they only hold libraries and includes from our packages for the old build system.

It seems like everything in bin should be moved to ChimeraX.app

Attachments (3)

winbin.png (96.8 KB ) - added by Zach Pearson 3 years ago.
All of ChimeraX under the bin directory
wininclude.png (35.1 KB ) - added by Zach Pearson 3 years ago.
Contents of the top level include directory
winlib.png (18.0 KB ) - added by Zach Pearson 3 years ago.
Contents of the top level lib directory

Download all attachments as: .zip

Change History (11)

comment:1 by Greg Couch, 3 years ago

It could be changed. That is breaking the API, so perhaps not. Are you thinking of getting rid of include and lib on Linux and macOS? I like minimizing the cross-platform differences.

comment:2 by Zach Pearson, 3 years ago

No. For example on Linux lib includes other useful libraries and crucially Python, and include also has python3.9.

But on Windows there are only those 3 folders and nothing else in the top level. It seems like keeping with the other platforms the stuff in the include and lib folders should go in folders that are in bin right now. I'll attach screenshots

by Zach Pearson, 3 years ago

Attachment: winbin.png added

All of ChimeraX under the bin directory

by Zach Pearson, 3 years ago

Attachment: wininclude.png added

Contents of the top level include directory

by Zach Pearson, 3 years ago

Attachment: winlib.png added

Contents of the top level lib directory

comment:3 by Zach Pearson, 3 years ago

See what I mean? The whole thing lives under the bin directory

comment:4 by Greg Couch, 3 years ago

Yes, I saw that too. Are you saying that you want to break user's scripts?

comment:5 by Zach Pearson, 3 years ago

Not at all. It was just unexpected to see and I wondered if it was a bug.

comment:6 by pett, 3 years ago

Component: UnassignedBuild System

comment:7 by Zach Pearson, 3 years ago

Priority: blockerlow

Didn't mean to create this ticket as a blocker.

comment:8 by Greg Couch, 3 years ago

(An aside, please don't use png files if possible. Text files are much more useful.)

It is certainly not a bug when it is bin, lib, and include. It's only if it is only bin, that it looks odd. And if that were the original configuration, we probably would have elided the bin directory. But it wasn't. So now we need to maintain compatibility whenever we make changes. But, there is also the proposed incompatible change of renaming ChimeraX-console to ChimeraX. We should decide both at the same time.

Note: See TracTickets for help on using tickets.