summary refs log tree commit diff
path: root/pkgs/applications/video/mpv/default.nix
diff options
context:
space:
mode:
authorDavid Stritzl <437018+davidstritzl@users.noreply.github.com>2023-11-04 21:19:07 +0100
committerAnderson Torres <torres.anderson.85@protonmail.com>2023-11-10 11:03:01 -0300
commitacd80bbf005658bf55dad08819d31529b91fe6cd (patch)
tree2ef3bef47a2a99945b648d7e6c8a85a504483043 /pkgs/applications/video/mpv/default.nix
parent94633f04a3497b60cf15184b05fae12f283e1111 (diff)
downloadnixpkgs-acd80bbf005658bf55dad08819d31529b91fe6cd.tar
nixpkgs-acd80bbf005658bf55dad08819d31529b91fe6cd.tar.gz
nixpkgs-acd80bbf005658bf55dad08819d31529b91fe6cd.tar.bz2
nixpkgs-acd80bbf005658bf55dad08819d31529b91fe6cd.tar.lz
nixpkgs-acd80bbf005658bf55dad08819d31529b91fe6cd.tar.xz
nixpkgs-acd80bbf005658bf55dad08819d31529b91fe6cd.tar.zst
nixpkgs-acd80bbf005658bf55dad08819d31529b91fe6cd.zip
mpv: sign darwin bundle executable
This fixes the application exiting immediately after launch via application bundle on macOS 14 (#261072).
Diffstat (limited to 'pkgs/applications/video/mpv/default.nix')
-rw-r--r--pkgs/applications/video/mpv/default.nix8
1 files changed, 7 insertions, 1 deletions
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index 8290e39979c..95681d4a4ab 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -19,6 +19,7 @@
 , libuchardet
 , libiconv
 , xcbuild
+, sigtool
 
 , waylandSupport ? stdenv.isLinux
   , wayland
@@ -154,7 +155,7 @@ in stdenv'.mkDerivation (finalAttrs: {
     pkg-config
     python3
   ]
-  ++ lib.optionals stdenv.isDarwin [ xcbuild.xcrun ]
+  ++ lib.optionals stdenv.isDarwin [ xcbuild.xcrun sigtool ]
   ++ lib.optionals swiftSupport [ swift ]
   ++ lib.optionals waylandSupport [ wayland-scanner ];
 
@@ -203,6 +204,11 @@ in stdenv'.mkDerivation (finalAttrs: {
   postBuild = lib.optionalString stdenv.isDarwin ''
     pushd .. # Must be run from the source dir because it uses relative paths
     python3 TOOLS/osxbundle.py -s build/mpv
+    # Swap binary and bundle symlink to sign bundle executable as symlinks cannot be signed
+    rm build/mpv.app/Contents/MacOS/mpv-bundle
+    mv build/mpv.app/Contents/MacOS/mpv build/mpv.app/Contents/MacOS/mpv-bundle
+    ln -s mpv-bundle build/mpv.app/Contents/MacOS/mpv
+    codesign --force --sign - build/mpv.app/Contents/MacOS/mpv-bundle
     popd
   '';