ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / ab / abaddon / package.nix
bloba8db4395645faa4f6d78090ecd4489a2cd34436e
1 { lib
2 , fetchFromGitHub
3 , stdenv
4 , cmake
5 , copyDesktopItems
6 , makeDesktopItem
7 , makeWrapper
8 , pkg-config
9 , alsa-lib
10 , curl
11 , gtkmm3
12 , libhandy
13 , libopus
14 , libpulseaudio
15 , libsecret
16 , libsodium
17 , nlohmann_json
18 , pcre2
19 , spdlog
20 , sqlite
23 stdenv.mkDerivation rec {
24   pname = "abaddon";
25   version = "0.2.1";
27   src = fetchFromGitHub {
28     owner = "uowuo";
29     repo = "abaddon";
30     rev = "v${version}";
31     hash = "sha256-FPhHy+4BmaoGrHGsc5o79Au9JcH5C+iWTYQYwnTLaUY=";
32     fetchSubmodules = true;
33   };
35   nativeBuildInputs = [
36     cmake
37     copyDesktopItems
38     makeWrapper
39     pkg-config
40   ];
42   buildInputs = [
43     curl
44     gtkmm3
45     libhandy
46     libopus
47     libsecret
48     libsodium
49     nlohmann_json
50     pcre2
51     spdlog
52     sqlite
53   ];
55   installPhase = ''
56     runHook preInstall
58     mkdir -p $out/share/abaddon
59     cp -r ../res/{css,res} $out/share/abaddon
60     mkdir $out/bin
61     cp abaddon $out/bin
62     wrapProgram $out/bin/abaddon \
63       --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ alsa-lib libpulseaudio ]}" \
64       --chdir $out/share/abaddon
66     runHook postInstall
67   '';
69   desktopItems = [
70     (makeDesktopItem {
71       name = pname;
72       exec = pname;
73       desktopName = "Abaddon";
74       genericName = meta.description;
75       startupWMClass = pname;
76       categories = [ "Network" "InstantMessaging" ];
77       mimeTypes = [ "x-scheme-handler/discord" ];
78     })
79   ];
81   meta = with lib; {
82     description = "A discord client reimplementation, written in C++";
83     mainProgram = "abaddon";
84     homepage = "https://github.com/uowuo/abaddon";
85     license = licenses.gpl3Plus;
86     maintainers = with maintainers; [ genericnerdyusername ];
87     platforms = lib.platforms.linux;
88   };