forked from ruuda/hoff
-
Notifications
You must be signed in to change notification settings - Fork 3
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
Build Hoff in Nix #105
Merged
Merged
Build Hoff in Nix #105
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
maartenberg
reviewed
Apr 19, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some notes:
maartenberg
approved these changes
Apr 19, 2022
@OpsBotPrime merge |
Pull request approved for merge by @Riscky, rebasing now. |
Approved-by: Riscky Auto-deploy: false
Rebased as c4c2e38, waiting for CI … |
Merged
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In the past, we build Hoff in CI, on a Ubuntu 18.04 server.
We pushed the built apt package to our package repository.
We then ran the apt package on a 18.04 server, and life was good.
We then decided to limit access to our repository server from the outside, and as such we could not upload apt packages from CI.
We then decided to do our builds locally (see #101), and life seemed to be good again.
Then we discovered that something was amiss: the locally build packages did not run on the server.
Building Hoff locally on a 20.04 machine made it rely on glibc version 2.29, but the 18.04 server only has 20.04.
This PR tries to solve this problem once and for all by building with Nix.
The build is done in CI, and then pushed to Cachix.
Because of mismatch between the version of
base16-bytestring
pinned by Stack (0.1.1) and the version pinned by thegithub
dependency in Nix (1.0), we had to upgrade the dependency.Because of a changed function type, this leads to a few lines of changed code, and to the Stack builds being broken (see #106).
The other changed lines of Haskell code are because of packages in Nix not being in their expected location.