Package Base Details: nginx-quic

Git Clone URL: https://aur.archlinux.org/nginx-quic.git (read-only, click to copy)
Keywords: http3 nginx quic webserver
Submitter: DasSkelett
Maintainer: DasSkelett
Last Packager: DasSkelett
Votes: 9
Popularity: 0.013515
First Submitted: 2020-12-20 02:20 (UTC)
Last Updated: 2023-04-05 22:01 (UTC)

Pinned Comments

DasSkelett commented on 2023-05-24 08:02 (UTC) (edited on 2023-05-24 21:48 (UTC) by DasSkelett)

With the release of nginx mainline 1.25, including QUIC+HTTP/3 support, this package is now discontinued. Please switch to Arch package nginx-mainline 1.25.0-2 in the "Extra" repository, it is built with the http_v3 module enabled.
https://archlinux.org/packages/extra/x86_64/nginx-mainline/

If you do have a need for "Early Data" or an nginx package with a statically compiled BoringSSL as TLS library instead of the default dynamically linked OpenSSL, please let me know, and I may consider reviving the orphaned nginx-mainline-boringssl AUR package (if nobody else wants to).

I am going to request deletion of this package in a few days. I will keep the out-of-date flag to give people an indicator that there is a newer release available (as another package).

Latest Comments

1 2 3 4 Next › Last »

Fijxu commented on 2023-05-24 11:00 (UTC)

Thanks DasSkelett for serving this package for almost 3 years ;)

DasSkelett commented on 2023-05-24 08:02 (UTC) (edited on 2023-05-24 21:48 (UTC) by DasSkelett)

With the release of nginx mainline 1.25, including QUIC+HTTP/3 support, this package is now discontinued. Please switch to Arch package nginx-mainline 1.25.0-2 in the "Extra" repository, it is built with the http_v3 module enabled.
https://archlinux.org/packages/extra/x86_64/nginx-mainline/

If you do have a need for "Early Data" or an nginx package with a statically compiled BoringSSL as TLS library instead of the default dynamically linked OpenSSL, please let me know, and I may consider reviving the orphaned nginx-mainline-boringssl AUR package (if nobody else wants to).

I am going to request deletion of this package in a few days. I will keep the out-of-date flag to give people an indicator that there is a newer release available (as another package).

DasSkelett commented on 2023-05-22 21:52 (UTC) (edited on 2023-05-22 21:59 (UTC) by DasSkelett)

This package is not out of date. This package tracks a mix of the quic branch of nginx, which in turn is based on the mainline branch, and mainline releases. The latest mainline release was and still is 1.23.4. You can see this quite easily by looking at the tags of the official Docker image for nginx, maintained by the nginx dev team. There one can see that "mainline" is an alias for "1.23.4", and stable is an alias for "1.24.0" (https://hub.docker.com/_/nginx/). It should also be mentioned in the nginx documentation somewhere that even numbers are for stable releases and uneven for mainline.

If any other (Arch) maintainers update their -mainline packages to a release version not part of mainline, this is their decision. Following this practice would at the very least be confusing to many, if not break the setup for some.
If you need to compile the stable nginx release for compatibility reasons, it should be fairly straigthforward to edit the PKGBUILD to change the revision tag to the corresponding commit/changeset and re-add the lines for the manual merge with the stable branch as it has been done in the past, have a look through the commit history for this.

 

In any case, this package will likely be discontinued very soon, as the quic branch has been merged into mainline very recently: https://hg.nginx.org/nginx/rev/235d482ef6bc
The next mainline release will most likely include QUIC support.
I guess someone could revive the orphaned nginx-mainline-boringssl for those wanting to stick to BoringSSL, but otherwise the nginx-mainline package in extra should be a good replacement, thanks to the OpenSSL compat layer included in nginx(-quic) nowadays.

Fijxu commented on 2023-05-20 23:04 (UTC)

I guess you should add a Co-maintainer for this package to keep it updated

Zepman commented on 2023-05-12 12:59 (UTC) (edited on 2023-05-12 14:42 (UTC) by Zepman)

This package is still on version 1.23.4, and therefore is incompatible with nginx-mainline-mod-* packages in AUR, which do track mainline correctly and are compiled for version 1.24.0.

# nginx -t
2023/05/12 14:57:44 [emerg] 117089#117089: module "/usr/lib/nginx/modules/ngx_http_headers_more_filter_module.so" version 1024000 instead of 1023004 in /etc/nginx/include/modules:1
nginx: configuration file /etc/nginx/nginx.conf test failed

Please follow the actual mainline version.

[edit]

It seems that this package does not track mainline. It tracks nginx-quic, which does not have 1.24.0 tagged. Therefore this package is currently not out-of-date.

[edit2]

I probably did not install nginx-quic-src when I first attempted to build and install nginx-mainline-mod-(...). Installing nginx-quic-src explicitly should solve issues when building mainline modules.

Still, this package does not track mainline. It tracks quic, which is a separate branch. While quic is very close to mainline (so close that it allows building of mainline modules), it is not the same.

DasSkelett commented on 2023-05-08 06:40 (UTC)

This package tracks nginx-mainline, not stable, as such 1.23.4 is the latest release. nginx 1.24 has no additional changes to 1.23.4.

kescherAUR commented on 2023-04-06 13:07 (UTC)

1.23.4 does not break the config yet, it will output the "http3" parameter is deprecated, use "quic" parameter instead in <config>:<line_number>. So configs will continue to work in this minor version, but should be updated to prevent future breakage.

DasSkelett commented on 2023-04-05 22:12 (UTC) (edited on 2023-04-05 22:13 (UTC) by DasSkelett)

Updated to nginx-quic 1.23.4, be aware that this will break your config!
The argument for the listen directive has changed, from listen ... htt3 reuseport; to listen --- quic reuseport;. This now only activates the QUIC protocol on the socket (in theory). Additionally there's a new http3 directive for server blocks, which can be http3 on; or http3 off;. It defaults to on however, so it's enough to only specify listen ... quic.

Example config excerpt:

...
    # HTTPS server
    server {
        listen       443 ssl http2;
        listen       [::]:443 ssl http2;
        listen       443 quic reuseport;
        listen       [::]:443 quic reuseport;

        server_name  localhost;

        http3 on; # Can be left out, as it defaults to on
...

See also https://hg.nginx.org/nginx-quic/file/0af598651e33/README

@Strykar this is what caught you, because the README you looked at didn't match the nginx version you were running through this package. However now it should work the way you tried to at first.

Fijxu commented on 2023-03-29 22:38 (UTC)

@Strykar it's http3, not quic

Strykar commented on 2023-03-26 14:54 (UTC) (edited on 2023-03-26 14:55 (UTC) by Strykar)

Would someone link to a working QUIC config with this?

I have tried https://quic.nginx.org/readme.html and a bunch of other suggestions but no go.

Any reference to quic in the nginx vhost config fails with:

nginx: 2023/03/26 20:10:48 [emerg] 245509#245509: unknown "quic" variable
nginx: nginx: configuration file /etc/nginx/nginx.conf test failed

nginx -V shows "--with-http_v3_module --with-stream_quic_module"