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

opensmtpd: 6.4.2p1 -> 6.6.1p1 #72390

Merged
merged 3 commits into from Nov 11, 2019
Merged

opensmtpd: 6.4.2p1 -> 6.6.1p1 #72390

merged 3 commits into from Nov 11, 2019

Conversation

flokli
Copy link
Contributor

@flokli flokli commented Oct 31, 2019

The substitition in smtpd/parse.y isn't necessary anymore (it's gone).

opensmtpd 6.6.0p1 fails to build with libressl like this:

    make[1]: Entering directory '/build/opensmtpd-6.6.0p1'
    Making all in openbsd-compat
    make[2]: Entering directory '/build/opensmtpd-6.6.0p1/openbsd-compat'
    gcc -DHAVE_CONFIG_H -I. -I..  -I../smtpd -I../openbsd-compat -I../openbsd-compat/err_h -I/nix/store/7hgyarrzkhvp47ynwljabdfy28vzwjwb-libevent-2.1.11-dev/include   -ffunction-sections -c -o arc4random.o arc4random.c
    arc4random.c:167:21: error: macro "arc4random_stir" passed 1 arguments, but takes just 0
     arc4random_stir(void)
                         ^
    arc4random.c:168:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
     {
     ^
    make[2]: *** [Makefile:445: arc4random.o] Error 1
    make[2]: Leaving directory '/build/opensmtpd-6.6.0p1/openbsd-compat'
    make[1]: *** [Makefile:419: all-recursive] Error 1
    make[1]: Leaving directory '/build/opensmtpd-6.6.0p1'
    make: *** [Makefile:351: all] Error 2

Internet suggests it's a libressl-specific issue, so build with openssl for now.

Also update the module to use tmpfiles to set up the spool directories.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Notify maintainers

cc @Ekleog @rickynils @obadz

Ekleog
Ekleog previously requested changes Nov 1, 2019
Copy link
Member

@Ekleog Ekleog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One important comment about the removed substitution below.

Also, I seem to remember from the mailing list that 6.6.0p2 is underway/almost coming, fixing issues with some platforms -- don't know whether it'd be worth it to wait for p2 to do the upgrade here, though.

@ofborg build opensmtpd.tests

pkgs/servers/mail/opensmtpd/default.nix Show resolved Hide resolved
@flokli
Copy link
Contributor Author

flokli commented Nov 1, 2019

Hm, we probably should hold this off until 6.6.0p2, and check building with libressl then: OpenSMTPD/OpenSMTPD#958.

@flokli
Copy link
Contributor Author

flokli commented Nov 2, 2019

I pushed a new version pointing to the latest version of the "portable" branch, which seems to be able to build work with libressl again.

@ofborg ofborg bot requested a review from Ekleog November 2, 2019 13:45
@Ekleog
Copy link
Member

Ekleog commented Nov 2, 2019

Must say I don't really feel great about releasing as 6.6.0p1 something that's actually halfway between p1 and p2 -- IMO it'd be better to either release p1 with openssl or wait for p2 with libressl?

@flokli
Copy link
Contributor Author

flokli commented Nov 2, 2019

No, I didn't meant to merge this as it is now, but couldn't find a button to degrade this to a draft PR - we should wait for the 6.6.0p2 release.

@flokli flokli changed the title opensmtpd: 6.4.2p1 -> 6.6.0p1 [WIP] opensmtpd: 6.4.2p1 -> 6.6.0p1 Nov 2, 2019
@flokli flokli changed the title [WIP] opensmtpd: 6.4.2p1 -> 6.6.0p1 [WIP] opensmtpd: 6.4.2p1 -> 6.6.0p2 Nov 2, 2019
@Ekleog
Copy link
Member

Ekleog commented Nov 2, 2019

Sounds great to me, thanks!

@flokli flokli force-pushed the bump-opensmtpd branch 2 times, most recently from b86a8b9 to dcd80d7 Compare November 5, 2019 00:52
@Ekleog
Copy link
Member

Ekleog commented Nov 6, 2019

6.6.1p1 appears to be out, which I guess is what I was expecting to be released as 6.6.0p2 :)

The substitition in smtpd/parse.y isn't necessary anymore.
The hardcoded /usr/libexec/ has been replaced by a PATH_LIBEXEC #define,
which will be set properly by the build system.
@flokli
Copy link
Contributor Author

flokli commented Nov 8, 2019

Bumped to the latest official release, and refactored the test to the python test driver. (cc #72828) PTAL.

@flokli flokli changed the title [WIP] opensmtpd: 6.4.2p1 -> 6.6.0p2 opensmtpd: 6.4.2p1 -> 6.6.1p1 Nov 8, 2019
@Ekleog
Copy link
Member

Ekleog commented Nov 9, 2019

@ofborg build opensmtpd.test

@Ekleog
Copy link
Member

Ekleog commented Nov 9, 2019

@ofborg build opensmtpd.tests

Copy link
Member

@Ekleog Ekleog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great to me! Letting you merge when you feel best :)

@flokli flokli merged commit 848399f into NixOS:master Nov 11, 2019
@flokli flokli deleted the bump-opensmtpd branch November 11, 2019 00:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants