nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 cmake,
5 pkg-config,
6 libmicrohttpd,
7 curl,
8 openssl,
9 jsoncpp,
10 libxml2,
11 gst_all_1,
12 boost,
13 websocketpp,
14 libadwaita,
15 gtkmm4,
16 libsecret,
17 fetchFromGitLab,
18 wrapGAppsHook4,
19 xdg-utils,
20 youtube-dl,
21 ffmpeg,
22}:
23
24stdenv.mkDerivation rec {
25 pname = "headlines";
26 version = "0.7.2";
27
28 src = fetchFromGitLab {
29 owner = "caveman250";
30 repo = "Headlines";
31 rev = version;
32 hash = "sha256-wamow0UozX5ecKbXWOgsWCerInL4J0gK0+Muf+eoO9k=";
33 };
34
35 nativeBuildInputs = [
36 cmake
37 pkg-config
38 wrapGAppsHook4
39 ];
40
41 buildInputs = [
42 libmicrohttpd
43 curl
44 openssl
45 jsoncpp
46 libxml2
47 boost
48 websocketpp
49 libadwaita
50 gtkmm4
51 libsecret
52 ]
53 ++ (with gst_all_1; [
54 gstreamer
55 gst-libav
56 gst-plugins-base
57 (gst-plugins-good.override { gtkSupport = true; })
58 gst-plugins-bad
59 ]);
60
61 preFixup = ''
62 gappsWrapperArgs+=(
63 --prefix PATH : "${
64 lib.makeBinPath [
65 xdg-utils
66 youtube-dl
67 ffmpeg
68 ]
69 }"
70 )
71 '';
72
73 meta = {
74 description = "GTK4 / Libadwaita Reddit client written in C++";
75 homepage = "https://gitlab.com/caveman250/Headlines";
76 license = lib.licenses.gpl3Plus;
77 platforms = lib.platforms.linux;
78 maintainers = with lib.maintainers; [ chuangzhu ];
79 mainProgram = "headlines";
80 };
81}