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

Update to current nixpkgs-unstable #436

Merged
merged 3 commits into from Mar 4, 2020
Merged

Conversation

andir
Copy link
Member

@andir andir commented Feb 21, 2020

This required the introduction of an overlay file since ofBorg still
requires openssl 1.0.2. Updating to newer version of openssl also
requires updating the amqp library which requires some more involved
changes.

The php code is only updated to php 7.2 and not 7.3 (the default in
nixpkgs) since there seem to been a few syntax changes that aren't yet
compatible with composer2nix.

In previous versions of the rust infrastructure within nixpkgs we would
have been able to override all crates during the invocation of the
target crate. That override feature was removed as it caused a huge
eval overhead for larger projects. We did end up with (n^2)
instantiations of dependencies since they were being overridden on every
invocation of every dependency on every level further down the chain.
The current understanding is that the build tooling that each project is
using (e.g. crate2nix, crate2nix, …) that is driving the actual build
could easily reintroduce that feature without the overhead.

@andir
Copy link
Member Author

andir commented Feb 21, 2020

I am still trying to figure out what it takes to make the PHP stuff work again.. Right now it is just spewing out cryptic error messages about break and continue 2.

This required the introduction of an overlay file since ofBorg still
requires openssl 1.0.2. Updating to newer version of openssl also
requires updating the amqp library which requires some more involved
changes.

The php code is only updated to php 7.2 and not 7.3 (the default in
nixpkgs) since there seem to been a few syntax changes that aren't yet
compatible with composer2nix.

In previous versions of the rust infrastructure within nixpkgs we would
have been able to override all crates during the invocation of the
target crate. That `override` feature was removed as it caused a huge
eval overhead for larger projects. We did end up with (n^2)
instantiations of dependencies since they were being overriden on every
invocation of every dependency on every level further down the chain.
The current understanding is that the build tooling that each project is
using (e.g.  crate2nix, crate2nix, …) that is driving the actual build
could easily reintroduce that feature without the overhead.

pin to php72
@andir
Copy link
Member Author

andir commented Feb 21, 2020

The default php version of unstable is 7.3 which did break composer2nix. For now we can probably just stick with 7.2.

@andir
Copy link
Member Author

andir commented Feb 22, 2020

Ok, CI finally passed. It looks good. Was a bit more involved due to the rust version upgrades and the corresponding linting fixes.

@andir andir requested a review from grahamc February 22, 2020 12:08
@grahamc grahamc merged commit ea4b7f8 into NixOS:released Mar 4, 2020
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.

None yet

2 participants