1{
2 mkDerivation,
3 lib,
4 fetchFromGitHub,
5 phonon,
6 phonon-backend-vlc,
7 qtbase,
8 qmake,
9 qtdeclarative,
10 qttools,
11 qtx11extras,
12 mpv,
13
14 # "Free" key generated by pasqui23
15 withAPIKey ? "AIzaSyBQvZXseEVvgu5Ega_DI-AIJ55v0OsHmVY",
16}:
17
18mkDerivation rec {
19 pname = "minitube";
20 version = "3.9.3";
21
22 src = fetchFromGitHub {
23 hash = "sha256-ROqROQsV8ddrxYT5mMdkf6rCgCoGr1jpxQ1ohcoEaQs=";
24 rev = version;
25 repo = "minitube";
26 owner = "flaviotordini";
27 fetchSubmodules = true;
28 };
29
30 patches = [
31 # Taken from FreeBSD; already merged upstream in the media submodule
32 # (https://github.com/flaviotordini/media/commit/f6b7020f273e1fc06e6e204fab37a7c8edaa857a)
33 ./lib_media_src_mpv_mpvwidget.patch
34 ];
35
36 nativeBuildInputs = [
37 qmake
38 qttools
39 ];
40
41 buildInputs = [
42 phonon
43 phonon-backend-vlc
44 qtbase
45 qtdeclarative
46 qtx11extras
47 mpv
48 ];
49
50 qmakeFlags = [ "DEFINES+=APP_GOOGLE_API_KEY=${withAPIKey}" ];
51
52 meta = with lib; {
53 description = "Stand-alone YouTube video player";
54 longDescription = ''
55 Watch YouTube videos in a new way: you type a keyword, Minitube gives
56 you an endless video stream. Minitube is not about cloning the YouTube
57 website, it aims to create a new TV-like experience.
58 '';
59 homepage = "https://flavio.tordini.org/minitube";
60 license = licenses.gpl3Plus;
61 platforms = platforms.linux;
62 maintainers = [ ];
63 mainProgram = "minitube";
64 };
65}