Warning, /network/kaccounts-integration/README is written in an unsupported language. File is not indexed.

0001 # Setting up accounts-sso
0002 
0003 Accounts-SSO is the framework we are using to store secrets (tokens, passwords)
0004 and for storing Accounts (small pieces of information containing a name,
0005 a provider, etc).
0006 
0007 https://accounts-sso.gitlab.io/
0008 
0009 ## Accounts
0010 
0011 This is a fairly simply yet powerful framework, it stores all information into a
0012 sqlite database and then propagates the modifications using dbus so all applications
0013 using libaccounts will be aware of the modifications.
0014 
0015 ### libaccounts-glib
0016 
0017 The first thing to compile is libaccounts-glib, which is the code implementing
0018 all the Read/Write/Notification of Accounts:
0019 
0020     git clone https://gitlab.com/accounts-sso/libaccounts-glib libaccounts-glib
0021     cd libaccounts-glib
0022     meson build
0023     ninja -C build && ninja -C build install
0024 
0025 ### libaccounts-qt
0026 
0027 This is the Qt bindings for libaccounts-glib, it uses qmake.
0028 
0029     git clone https://gitlab.com/accounts-sso/libaccounts-qt libaccounts-qt
0030     cd libaccounts-qt
0031     qmake
0032     make && make install
0033 
0034 Note that at this very day libaccounts-qt qmake does **NOT** support compiling the
0035 library outside the source directory, this means that the command qmake must be
0036 executed within the root of libaccounts-qt and not for example in a build directory.
0037 
0038 ##SSO
0039 
0040 Single Sign On is the part of the framework responsible for storing and obtaining
0041 credentials. It stores the credentials in a secure way (in case of KDE within
0042 KWallet) and has a plugin system to do authentication in most common cases such
0043 oauth/2 or simple user and password.
0044 
0045 An interface can be plugged into SSO, at this moment we are using ubuntu's
0046 implementation signon-ui but that will changes in the future.
0047 
0048 ### signond
0049 
0050 This includes a daemon that will be dbus activated and will offer a set of dbus api
0051 to access to credentials and to authenticate to services (google/facebook oauth or
0052 owncloud user/password). Within this same repo there is a Qt library that we'll use
0053 in our applications to talk to the daemon.
0054 
0055     git clone https://gitlab.com/accounts-sso/signond signond
0056     qmake
0057     make && make install
0058 
0059 Note: Since signond is *dbus* activated be sure that the file
0060 `com.google.code.AccountsSSO.SingleSignOn.service` is in a location where dbus
0061 can find it (usually /usr/share/dbus-1/services)
0062 
0063 ### Wallet support
0064 
0065 In order for sigond to talk to KWallet we need a plugin for it, otherwise it will
0066 store secrets (tokens and passwords) in plain text
0067 
0068     git clone git://anongit.kde.org/signon-kwallet-extension.git
0069     mkdir signon-kwallet-extension/build
0070     cd signon-kwallet-extension/build
0071     cmake ..
0072     make && make install
0073 
0074 ### oauth2 plugin
0075 
0076 This plugin makes signond able to deal with oauth2 authentication
0077 
0078     git clone https://gitlab.com/accounts-sso/signon-plugin-oauth2 signon-plugin-oauth2
0079     mkdir signon-plugin-oauth2/build
0080     cd signon-plugin-oauth2/build
0081     qmake ..
0082     make install
0083 
0084 ### signon-ui
0085 
0086 signon-ui provides the user interface for logging-into various accounts.
0087 
0088     git clone https://gitlab.com/accounts-sso/signon-ui signon-ui
0089     cd signon-ui
0090     qmake
0091     make install
0092 
0093 ### kde providers
0094 
0095 This are the providers and services that at this very moment we provide support for.
0096 For example in Facebook we support Chat, Contacts Calendar... for what we need a
0097 facebook.provider and chat/contacts/calendar.service files. This is basically a bunch
0098 of icons and .xml files
0099 
0100     git clone git://anongit.kde.org/kaccount-providers.git
0101     mkdir kaccount-providers/build
0102     cd kaccount-providers/build
0103     cmake ..
0104     make install