Group Meeting on Linux Distribution
What we need
- Distribution mechanism
- Way to handle dependencies
Distribution approaches
- shar (shell archive) files
- Pro: Used for Chimera
- Pro: Lots of flexibility
- Con: We have to manage dependency checking
- deb/rpm - native linux packagers
- Pro: Can handle dependency checking easily
- Pro: Pretty flexible
- Pro: All Linux users will be familiar with this approach
- Autoconf
- Pro: Autoconf was also mentioned a lot, but primarily when sources are involved.
- Con: Not really accessible for most Linux users
- Pro: Most Linux developers will be very familiar with it
- Both pro and con: Can handle dependency checking, assuming we embed that into the configuration file
- pip/pypi
- Pro: Native Python packager/distribution
- Con: Not clear how we would handle dependency checking
- Con: Not clear how we would register app with the system
Dependency Management
- Static linking
- Pro: We deliver all dependencies. No dependency issues
- Con: Upstream bug fixes/security enhancements won't get propagated
- Con: distribution will be very large
- Deliver all dependencies in ChimeraX lib
- Pro's and Con's are essentially the same as above
Suggested Approach (long term)
- Provide our own repostory
- Include rpm or deb files for all dependencies as well as for ChimeraX itself
- Users would download an rpm/deb that added our repository to their repo list
- This would include creating the appropriate keys
- Users would install (or update) ChimeraX
- If the system already has the necessary dependencies, no more will be added
- Missing dependencies would be pulled from our repository and installed
Suggested Approach (for December release)
- Use shar to distribute
- Add the libicu 52 shared objects to ChimeraX's local library
- libicu is the problem. Linux library major version numbers are supposed to indicate API compatibility
- libicu major version numbers indicate Unicode changes (e.g. addition of new characters)
- ICU releases a new major version every 6 months...
Last modified
10 years ago
Last modified on Nov 16, 2015, 10:42:33 AM
Note:
See TracWiki
for help on using the wiki.