1{
2 lib,
3 mkDerivation,
4
5 extra-cmake-modules,
6 wrapGAppsHook3,
7
8 futuresql,
9 gst_all_1,
10 kcoreaddons,
11 kcrash,
12 ki18n,
13 kirigami2,
14 kirigami-addons,
15 kpurpose,
16 qcoro,
17 qtimageformats,
18 qtmultimedia,
19 qtquickcontrols2,
20 python3Packages,
21}:
22
23mkDerivation rec {
24 pname = "audiotube";
25
26 nativeBuildInputs = [
27 extra-cmake-modules
28 wrapGAppsHook3
29 python3Packages.wrapPython
30 python3Packages.pybind11
31 ];
32
33 buildInputs = [
34 futuresql
35 kcoreaddons
36 kcrash
37 ki18n
38 kirigami2
39 kirigami-addons
40 kpurpose
41 qcoro
42 qtimageformats
43 qtmultimedia
44 qtquickcontrols2
45 ]
46 ++ (with gst_all_1; [
47 gst-plugins-bad
48 gst-plugins-base
49 gst-plugins-good
50 gstreamer
51 ])
52 ++ pythonPath;
53
54 pythonPath = with python3Packages; [
55 yt-dlp
56 ytmusicapi
57 ];
58
59 preFixup = ''
60 buildPythonPath "$pythonPath"
61 qtWrapperArgs+=(--prefix PYTHONPATH : "$program_PYTHONPATH")
62 qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
63 '';
64 dontWrapGApps = true;
65
66 meta = with lib; {
67 description = "Client for YouTube Music";
68 mainProgram = "audiotube";
69 homepage = "https://invent.kde.org/plasma-mobile/audiotube";
70 # https://invent.kde.org/plasma-mobile/audiotube/-/tree/c503d0607a3386112beaa9cf990ab85fe33ef115/LICENSES
71 license = with licenses; [
72 bsd2
73 cc0
74 gpl2Only
75 gpl3Only
76 ];
77 maintainers = [ ];
78 };
79}