summary refs log blame commit diff
path: root/pkgs/development/libraries/gsignond/default.nix
blob: af7aa2b12076849d9f62a08bd0148c6ab78b7984 (plain) (tree)
1
2
3
4
5
6
7
8
9







                                                                         
                                  
 





                                     
                                                     


















































                                                                                              
{ stdenv, fetchFromGitLab, pkgconfig, meson, ninja, glib, glib-networking
, sqlite, gobjectIntrospection, vala, gtk-doc, libsecret, docbook_xsl
, docbook_xml_dtd_43, docbook_xml_dtd_45, glibcLocales, makeWrapper
, symlinkJoin, gsignondPlugins, plugins }:

let
unwrapped = stdenv.mkDerivation rec {
  pname = "gsignond";
  version = "unstable-2018-10-04";


  outputs = [ "out" "dev" "devdoc" ];

  src = fetchFromGitLab {
    owner = "accounts-sso";
    repo = pname;
    rev = "39022c86ddb5062a10fb0503ad9d81a8e532d527";
    sha256 = "1gw8vbj3j6wxqy759z97arm8lnqhmraw9s2frv3ar6crnfhlidff";
  };

  nativeBuildInputs = [
    docbook_xml_dtd_43
    docbook_xml_dtd_45
    docbook_xsl
    glibcLocales
    gobjectIntrospection
    gtk-doc
    meson
    ninja
    pkgconfig
    vala
  ];

  buildInputs = [
    glib
    glib-networking
    libsecret
  ];

  propagatedBuildInputs = [ sqlite ];

  mesonFlags = [
    "-Dbus_type=session"
    "-Dextension=desktop"
  ];

  LC_ALL = "en_US.UTF-8";

  patches = [
    ./conf.patch
    ./plugin-load-env.patch
  ];

  meta = with stdenv.lib; {
    description = "D-Bus service which performs user authentication on behalf of its clients";
    homepage = https://gitlab.com/accounts-sso/gsignond;
    license = licenses.lgpl21Plus;
    maintainers = with maintainers; [ worldofpeace ];
    platforms = platforms.linux;
  };
};

in if plugins == [] then unwrapped
    else import ./wrapper.nix {
      inherit stdenv makeWrapper symlinkJoin gsignondPlugins plugins;
      gsignond = unwrapped;
    }