Skip to content

nv-codec-headers: 12.0.16.0 -> 12.1.14.0, ffmpeg: 6.0 -> 6.1, jellyfin-ffmpeg: 6.0-7 -> 6.0.1-1#271905

Merged
Atemu merged 9 commits intoNixOS:stagingfrom
arthsmn:update-ffmpeg
Dec 5, 2023
Merged

nv-codec-headers: 12.0.16.0 -> 12.1.14.0, ffmpeg: 6.0 -> 6.1, jellyfin-ffmpeg: 6.0-7 -> 6.0.1-1#271905
Atemu merged 9 commits intoNixOS:stagingfrom
arthsmn:update-ffmpeg

Conversation

@arthsmn
Copy link
Member

@arthsmn arthsmn commented Dec 3, 2023

Description of changes

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review/3032/3037

@Atemu Atemu changed the title Update ffmpeg nv-codec-headers: 12.0.16.0 -> 12.1.14.0, ffmpeg: 6.0 -> 6.1, jellyfin-ffmpeg: 6.0-7 -> 6.0.1-1 Dec 3, 2023
Copy link
Member

@Atemu Atemu left a comment

Choose a reason for hiding this comment

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

Please rebase away the merge commit.

@arthsmn
Copy link
Member Author

arthsmn commented Dec 3, 2023

Please rebase away the merge commit.

Done.

@arthsmn arthsmn requested review from Atemu and chayleaf December 3, 2023 22:00
Copy link
Contributor

@chayleaf chayleaf left a comment

Choose a reason for hiding this comment

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

might be worth pinging gifsik and wl-screenrec maintainers after merging so they know about the switch to ffmpeg_5 (it would be hard to notice the change in all-packages.nix)

@arthsmn
Copy link
Member Author

arthsmn commented Dec 3, 2023

might be worth pinging gifsik and wl-screenrec maintainers after merging so they know about the switch to ffmpeg_5 (it would be hard to notice the change in all-packages.nix)

Done.

@delroth delroth added the 12.approvals: 1 This PR was reviewed and approved by one person. label Dec 3, 2023
@ofborg ofborg bot requested review from a user, MP2E, astsmtl and tobim December 4, 2023 02:02
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 2501-5000 This PR causes many rebuilds on Darwin and should target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. labels Dec 4, 2023
@ofborg ofborg bot requested a review from Atemu December 4, 2023 10:19
Copy link
Contributor

@chayleaf chayleaf left a comment

Choose a reason for hiding this comment

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

there's a couple of comment typos but i'm not gonna nitpick comments

@arthsmn
Copy link
Member Author

arthsmn commented Dec 4, 2023

there's a couple of comment typos but i'm not gonna nitpick comments

Can you point them? English is not my first language and I'm not fluent yet lol.

@delroth delroth removed the 12.approvals: 2 This PR was reviewed and approved by two persons. label Dec 4, 2023
@Atemu
Copy link
Member

Atemu commented Dec 4, 2023

I think it's better to get more familiar with Nix and the Nixpkgs workflow before maintaining such an important package. I'll just do PRs for now.

Nah, you're fine. Maintainership "only" means that people come to you if the package needs to change. You'll get pinged on any PRs that touches ffmpeg for example.

What you need to maintain a package is knowledge about the package's specifics; how to test it still works etc. General Nix/Nixpkgs experience always helps of course but that's not the important part here.

@arthsmn
Copy link
Member Author

arthsmn commented Dec 4, 2023

I think it's better to get more familiar with Nix and the Nixpkgs workflow before maintaining such an important package. I'll just do PRs for now.

Nah, you're fine. Maintainership "only" means that people come to you if the package needs to change. You'll get pinged on any PRs that touches ffmpeg for example.

What you need to maintain a package is knowledge about the package's specifics; how to test it still works etc. General Nix/Nixpkgs experience always helps of course but that's not the important part here.

Oh thanks for the clarification, I think I'll add myself so.

@Atemu
Copy link
Member

Atemu commented Dec 4, 2023

@ofborg eval

@Atemu
Copy link
Member

Atemu commented Dec 4, 2023

Result of nixpkgs-review pr 271905 run on x86_64-linux 1

59 packages built:
  • ffmpeg
  • ffmpeg-headless
  • ffmpeg-headless.bin
  • ffmpeg-headless.data
  • ffmpeg-headless.dev
  • ffmpeg-headless.doc
  • ffmpeg-headless.lib
  • ffmpeg-headless.man
  • ffmpeg-normalize
  • ffmpeg-normalize.dist
  • ffmpeg.bin
  • ffmpeg.data
  • ffmpeg.dev
  • ffmpeg.doc
  • ffmpeg.lib
  • ffmpeg.man
  • ffmpeg_4
  • ffmpeg_4-full
  • ffmpeg_4-full.bin
  • ffmpeg_4-full.data
  • ffmpeg_4-full.dev
  • ffmpeg_4-full.doc
  • ffmpeg_4-full.lib
  • ffmpeg_4-full.man
  • ffmpeg_4-headless
  • ffmpeg_4-headless.bin
  • ffmpeg_4-headless.data
  • ffmpeg_4-headless.dev
  • ffmpeg_4-headless.doc
  • ffmpeg_4-headless.lib
  • ffmpeg_4-headless.man
  • ffmpeg_4.bin
  • ffmpeg_4.data
  • ffmpeg_4.dev
  • ffmpeg_4.doc
  • ffmpeg_4.lib
  • ffmpeg_4.man
  • ffmpeg_5
  • ffmpeg_5-full
  • ffmpeg_5-full.bin
  • ffmpeg_5-full.data
  • ffmpeg_5-full.dev
  • ffmpeg_5-full.doc
  • ffmpeg_5-full.lib
  • ffmpeg_5-full.man
  • ffmpeg_5-headless
  • ffmpeg_5-headless.bin
  • ffmpeg_5-headless.data
  • ffmpeg_5-headless.dev
  • ffmpeg_5-headless.doc
  • ffmpeg_5-headless.lib
  • ffmpeg_5-headless.man
  • ffmpeg_5.bin
  • ffmpeg_5.data
  • ffmpeg_5.dev
  • ffmpeg_5.doc
  • ffmpeg_5.lib
  • ffmpeg_5.man
  • ffmpegthumbnailer

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-already-reviewed/2617/1282

@Atemu Atemu merged commit be6c816 into NixOS:staging Dec 5, 2023
@arthsmn
Copy link
Member Author

arthsmn commented Dec 5, 2023

@Atemu @chayleaf @justinas and all the others that helped here. I just wanted to say thank you! I've been having only great experiences in this community. It's been 2 weeks since I started on NixOS and I'm already making a contribution this big! Have a great day you all!

@arthsmn
Copy link
Member Author

arthsmn commented Dec 5, 2023

Also, I think #260538 can be closed.

@Atemu
Copy link
Member

Atemu commented Dec 5, 2023

You're welcome @arthsmn :)

@OPNA2608
Copy link
Contributor

Not familiar with the stability of these packages across minor version bumps, but is this backportable to 23.11? punes on current 23.11 segfaults on startup:

Thread 1 ".punes-wrapped" received signal SIGSEGV, Segmentation fault.
0x00007ffff5a50147 in av_fifo_read () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavutil.so.58
(gdb) bt
#0  0x00007ffff5a50147 in av_fifo_read () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavutil.so.58
#1  0x00007ffff5cac3c2 in reorder_queue_flush () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#2  0x00007ffff5cae0d1 in ff_nvenc_encode_close () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#3  0x00007ffff5c7ecca in avcodec_close () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#4  0x00007ffff5c7ee34 in avcodec_open2[cold] () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#5  0x0000000000567176 in recording_init () at /build/source/src/core/recording.c:206
#6  0x0000000000454c3d in main (argc=<optimized out>, argv=0x7fffffffc978) at /build/source/src/core/main.c:95

Cherry-picking this merge onto nixos-23.11 fixes the crash locally.

@arthsmn
Copy link
Member Author

arthsmn commented Jan 13, 2024

Not familiar with the stability of these packages across minor version bumps, but is this backportable to 23.11? punes on current 23.11 segfaults on startup:

Thread 1 ".punes-wrapped" received signal SIGSEGV, Segmentation fault.
0x00007ffff5a50147 in av_fifo_read () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavutil.so.58
(gdb) bt
#0  0x00007ffff5a50147 in av_fifo_read () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavutil.so.58
#1  0x00007ffff5cac3c2 in reorder_queue_flush () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#2  0x00007ffff5cae0d1 in ff_nvenc_encode_close () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#3  0x00007ffff5c7ecca in avcodec_close () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#4  0x00007ffff5c7ee34 in avcodec_open2[cold] () from /nix/store/dkxlgdrafqv3r91w8mfm06zvp7m24xj5-ffmpeg-6.0-lib/lib/libavcodec.so.60
#5  0x0000000000567176 in recording_init () at /build/source/src/core/recording.c:206
#6  0x0000000000454c3d in main (argc=<optimized out>, argv=0x7fffffffc978) at /build/source/src/core/main.c:95

Cherry-picking this merge onto nixos-23.11 fixes the crash locally.

I think they don't bump versions on stable releases, maybe @Atemu can give a way.

@ElvishJerricco
Copy link
Contributor

This broke jellyfin-ffmpeg. It now fails with:

Unknown option "--enable-libaribcaption".

It can be fixed with

diff --git a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
index 7109a5d6dfd1..f519fb15b9b9 100644
--- a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
+++ b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
@@ -4,7 +4,7 @@
 , lib
 }:
 
-ffmpeg_6-full.overrideAttrs (old: rec {
+(ffmpeg_6-full.override { withAribcaption = false; }).overrideAttrs (old: rec {
   pname = "jellyfin-ffmpeg";
   version = "6.0.1-1";

But I have no idea if this is actually an acceptable fix. It looks like jellyfin-ffmpeg has not been updated with ffmpeg 6.1

@arthsmn
Copy link
Member Author

arthsmn commented Jan 13, 2024

This broke jellyfin-ffmpeg. It now fails with:

Unknown option "--enable-libaribcaption".

It can be fixed with

diff --git a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
index 7109a5d6dfd1..f519fb15b9b9 100644
--- a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
+++ b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
@@ -4,7 +4,7 @@
 , lib
 }:
 
-ffmpeg_6-full.overrideAttrs (old: rec {
+(ffmpeg_6-full.override { withAribcaption = false; }).overrideAttrs (old: rec {
   pname = "jellyfin-ffmpeg";
   version = "6.0.1-1";

But I have no idea if this is actually an acceptable fix. It looks like jellyfin-ffmpeg has not been updated with ffmpeg 6.1

First of all, jellyfin-ffmpeg will just be updated in version 7 of ffmpeg. This is a known issue and it's being discussed here and in the PRs associated with the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 2501-5000 This PR causes many rebuilds on Darwin and should target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants