diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/video/mpv/scripts/uosc.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/video/mpv/scripts/uosc.nix | 50 |
1 files changed, 29 insertions, 21 deletions
diff --git a/nixpkgs/pkgs/applications/video/mpv/scripts/uosc.nix b/nixpkgs/pkgs/applications/video/mpv/scripts/uosc.nix index b88cd2c5b968..4c434d49f368 100644 --- a/nixpkgs/pkgs/applications/video/mpv/scripts/uosc.nix +++ b/nixpkgs/pkgs/applications/video/mpv/scripts/uosc.nix @@ -1,42 +1,50 @@ -{ stdenvNoCC, lib, fetchFromGitHub, makeFontsConf }: - -stdenvNoCC.mkDerivation (finalAttrs: { +{ lib +, fetchFromGitHub +, fetchpatch +, makeFontsConf +, buildLua +, buildGoModule +}: + +buildLua (finalAttrs: { pname = "uosc"; - version = "4.7.0"; + version = "5.1.1"; + scriptPath = "src/uosc"; src = fetchFromGitHub { owner = "tomasklaen"; repo = "uosc"; rev = finalAttrs.version; - hash = "sha256-JqlBjhwRgmXl6XfHYTwtNWZj656EDHjcdWOlCgihF5I="; + hash = "sha256-+4k8T1yX3IRXK3XkUShsuJSH9w1Zla7CaRENcIqX4iM="; }; - postPatch = '' - substituteInPlace scripts/uosc.lua \ - --replace "mp.find_config_file('scripts')" "\"$out/share/mpv/scripts\"" - ''; - - dontBuild = true; - - installPhase = '' - runHook preInstall - - mkdir -p $out/share/mpv/ - cp -r scripts $out/share/mpv - cp -r fonts $out/share + tools = buildGoModule { + pname = "uosc-bin"; + inherit (finalAttrs) version src; + vendorHash = "sha256-nkY0z2GiDxfNs98dpe+wZNI3dAXcuHaD/nHiZ2XnZ1Y="; + }; - runHook postInstall - ''; + # Patch lua script to get the path to its `ziggy` binary form the environment + patches = [ + # uosc#814: Support overriding `ziggy_path` via environment variable + (fetchpatch { + url = "https://github.com/tomasklaen/uosc/commit/4fdf68a1bcb510824d66f35ecc7672a6452a44b2.patch"; + hash = "sha256-igUqFf8e7LVIIjGxACdIWAeZxjF/yqaCL4QRXrzNQXk="; + }) + ]; - passthru.scriptName = "uosc.lua"; # the script uses custom "texture" fonts as the background for ui elements. # In order for mpv to find them, we need to adjust the fontconfig search path. + postInstall = "cp -r src/fonts $out/share"; passthru.extraWrapperArgs = [ "--set" "FONTCONFIG_FILE" (toString (makeFontsConf { fontDirectories = [ "${finalAttrs.finalPackage}/share/fonts" ]; })) + "--set" + "MPV_UOSC_ZIGGY" + (lib.getExe' finalAttrs.tools "ziggy") ]; meta = with lib; { |