diff options
author | rewine <luhongxu@deepin.org> | 2023-01-12 17:06:08 +0800 |
---|---|---|
committer | rewine <lhongxu@outlook.com> | 2023-02-28 10:34:51 +0800 |
commit | 58609f1dc5183df1c37a34be40f219f7ccacc705 (patch) | |
tree | 3f6920bb69c2ecd90fd169990b5122a6ed41358e /pkgs/desktops/deepin | |
parent | 8d38e239668396b787d838d8605a524d539c0114 (diff) |
deepin.deepin-movie-reborn: init at 5.10.17
Diffstat (limited to 'pkgs/desktops/deepin')
-rw-r--r-- | pkgs/desktops/deepin/apps/deepin-movie-reborn/default.nix | 129 | ||||
-rw-r--r-- | pkgs/desktops/deepin/default.nix | 1 |
2 files changed, 130 insertions, 0 deletions
diff --git a/pkgs/desktops/deepin/apps/deepin-movie-reborn/default.nix b/pkgs/desktops/deepin/apps/deepin-movie-reborn/default.nix new file mode 100644 index 0000000000000..eaeeae9892998 --- /dev/null +++ b/pkgs/desktops/deepin/apps/deepin-movie-reborn/default.nix @@ -0,0 +1,129 @@ +{ stdenv +, lib +, fetchFromGitHub +, fetchpatch +, runtimeShell +, cmake +, pkg-config +, wrapQtAppsHook +, qtbase +, qttools +, qtx11extras +, qtmultimedia +, dtkwidget +, qt5integration +, qt5platform-plugins +, qtmpris +, qtdbusextended +, gsettings-qt +, elfutils +, ffmpeg +, ffmpegthumbnailer +, mpv +, xorg +, pcre +, libdvdread +, libdvdnav +, libunwind +, libva +, zstd +, glib +, gst_all_1 +, gtest +, libpulseaudio +}: + +stdenv.mkDerivation rec { + pname = "deepin-movie-reborn"; + version = "5.10.23"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "sha256-0m8wYRQGsdN4zpnHUJKCfF05SdvTauRSp6gCu2F9ZAI"; + }; + + patches = [ + (fetchpatch { + name = "chore: dont use </usr/include/linux/cdrom.h>"; + url = "https://github.com/linuxdeepin/deepin-movie-reborn/commit/2afc63541589adab8b0c8c48e290f03535ec2996.patch"; + sha256 = "sha256-Q9dv5L5sUGeuvNxF8ypQlZuZVuU4NIR/8d8EyP/Q5wk="; + }) + (fetchpatch { + name = "feat: rewrite libPath to read LD_LIBRARY_PATH"; + url = "https://github.com/linuxdeepin/deepin-movie-reborn/commit/432bf452ed244c256e99ecaf80bb6a0eef9b4a74.patch"; + sha256 = "sha256-5hRQ8D9twBKgouVpIBa1pdAGk0lI/wEdQaHBBHFCZBA"; + }) + ]; + + postPatch = '' + substituteInPlace src/widgets/toolbox_proxy.cpp \ + --replace "/bin/bash" "${runtimeShell}" + ''; + + outputs = [ "out" "dev" ]; + + nativeBuildInputs = [ + cmake + pkg-config + qttools + wrapQtAppsHook + ]; + + buildInputs = [ + dtkwidget + qt5platform-plugins + qtx11extras + qtmultimedia + qtdbusextended + qtmpris + gsettings-qt + elfutils.dev + ffmpeg + ffmpegthumbnailer + xorg.libXtst + xorg.libXdmcp + xorg.xcbproto + pcre.dev + libdvdread + libdvdnav + libunwind + libva + zstd.dev + mpv + gtest + libpulseaudio + ] ++ (with gst_all_1; [ + gstreamer + gst-plugins-base + ]); + + # qt5integration must be placed before qtsvg in QT_PLUGIN_PATH + qtWrapperArgs = [ + "--prefix QT_PLUGIN_PATH : ${qt5integration}/${qtbase.qtPluginPrefix}" + "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ mpv ffmpeg ffmpegthumbnailer gst_all_1.gstreamer gst_all_1.gst-plugins-base ]}" + ]; + + env.NIX_CFLAGS_COMPILE = toString [ + "-I${gst_all_1.gstreamer.dev}/include/gstreamer-1.0" + "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0" + ]; + + cmakeFlags = [ + "-DVERSION=${version}" + ]; + + preFixup = '' + glib-compile-schemas ${glib.makeSchemaPath "$out" "${pname}-${version}"} + qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0") + ''; + + meta = with lib; { + description = "Full-featured video player supporting playing local and streaming media in multiple video formats"; + homepage = "https://github.com/linuxdeepin/deepin-movie-reborn"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = teams.deepin.members; + }; +} diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index 4195af30e5d73..64479dca5eca9 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -42,6 +42,7 @@ let deepin-draw = callPackage ./apps/deepin-draw { }; deepin-editor = callPackage ./apps/deepin-editor { }; deepin-image-viewer = callPackage ./apps/deepin-image-viewer { }; + deepin-movie-reborn = callPackage ./apps/deepin-movie-reborn { }; deepin-music = callPackage ./apps/deepin-music { }; deepin-picker = callPackage ./apps/deepin-picker { }; deepin-terminal = callPackage ./apps/deepin-terminal { }; |