Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch from Star to a minimal install of Rakudo on debian:bullseye-slim #5

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

nwc10
Copy link

@nwc10 nwc10 commented Nov 30, 2021

This represents several breaking changes at the same time

  1. Only install Cro's minimal dependencies.
    Previously using Rakudo Star meant that we shipped other (useful) modules
  2. We now build on bullseye-slim.
    Star was building on buster, and with more Debian packages installed
  3. We now install to /opt/rakudo/bin (etc)
    The Rakudo Star docker image is built with a prefix of /usr

The docker image is still built with a PATH that contains rakudo, zef and the other relevant binaries.

The Rakudo version of 2021.10 is quite a jump - Cro was using Rakudo Star from 2020.01. The latest Star is 2021.04, but @jnthn reports that it isn't really suitable as the the version of OpenSSL that it bundles has bugs that aren't easy to work around. As 2021.04 is already 6 months old, bite the bullet and move to the most recent monthly release.

Given the other breaking changes that end users will have to evaluate here, I don't think that it adds cost to change the PATH that we install to. Star's Dockerfile is written to build with a --prefix of /usr. Long term, I don't think that that's wise. In that, I hope we soon see end user tools written in Raku, and then Debian (and other distros) package them, at which point the OS would want to install its rakudo package to /usr/bin, and that would clash with one we installed, if we keep installing there. Hence as this is already a "flag day" commit, we can add more flags for little extra cost.

This represents several breaking changes at the same time

1) Only install Cro's minimal dependencies.
   Previously using Rakudo Star meant that we shipped other (useful) modules
2) We now build on bullseye-slim.
   Star was building on buster, and with more Debian packages installed
3) We now install to /opt/rakudo/bin (etc)
   The Rakudo Star docker image is build with a prefix of /usr

The docker image is still built with a PATH that contains rakudo, zef and
the other relevant binaries.
@nwc10
Copy link
Author

nwc10 commented Nov 30, 2021

To be fair, I don't know for sure whether this version avoids the OpenSSL bugs, but it does pass its own regression tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant