1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
# afm-main
## Overview
This repository is named **afm-main** because
it stands for **AGL Framework Master - Main**.
It contains programs and services to create widgets,
to install widgets, to run widgets.
## How to compile?
This project uses CMAKE and C compiler suite to be compiled.
### Dependencies
This package requires the following libraries or modules:
- ***libxml-2.0***
- ***openssl***
- ***xmlsec1***
- ***xmlsec1-openssl***
- ***json-c***
- ***dbus-1***
- ***security-manager***
This package also requires either ***libzip*** (version >= 0.11)
or the binaries ***zip*** and ***unzip***. By default, it will
use ***libzip***.
### Compiling
The main scheme for compiling the project is:
> cmake .
>
> make
>
> sudo make install
By default, the installation is made in ***/usr***.
To change this behaviour, you should set the variable
CMAKE_INSTALL_PREFIX as in the below example:
> cmake -DCMAKE_INSTALL_PREFIX=/some/where .
You could check the documentation of the standard CMake module
[GNUInstallDirs](https://cmake.org/cmake/help/v3.4/module/GNUInstallDirs.html).
To forbid the use of ***libzip*** and replace it with the
use of programs ***zip*** and ***unzip***, type:
> cmake -DUSE_LIBZIP=0 .
## Content
This package content source files for several programs.
The installed programs are:
- ***afm-system-daemon***: D-Bus daemon to install,
uninstall, list the widgets.
It runs on the system bus.
- ***afm-user-daemon***: D-Bus daemon to list
available widgets, to start, pause, resume, stop it.
It runs on the user session bus.
- ***wgtpkg-info***: command line tool to display
informations about a widget file.
- ***wgtpkg-installer***: command line tool to
install a widget file.
- ***wgtpkg-pack***: command line tool to create
a widget file from a widget directory.
- ***wgtpkg-sign***: command line tool to add a signature
to a widget directory.
## Description
The framework defined by afm-main
## Comparison with Tizen framework
This package is providing few less behaviour than
the following Tizen packages:
- platform/appfw/app-installers
- platform/core/security/cert-svc
- platform/core/appfw/ail
- platform/core/appfw/aul-1
- platform/core/appfw/libslp-db-util
## Links
### Details about widgets
The widgets are specified in that W3C recommandation:
[Packaged Web Apps](http://www.w3.org/TR/widgets).
This model was initially designed for HTML applications.
But it is well suited for other kind of applications.
### Details about dependencies
For details, you can dig into internet the following links:
- [libxml2](http://xmlsoft.org/html/index.html)
- [OpenSSL](https://www.openssl.org)
- [XMLSec](https://www.aleksey.com/xmlsec)
- [JSON-c](https://github.com/json-c/json-c)
- [D-Bus](http://www.freedesktop.org/wiki/Software/dbus)
- [libzip](http://www.nih.at/libzip)
- [CMake](https://cmake.org)
- [Security-Manager](https://wiki.tizen.org/wiki/Security/Tizen_3.X_Security_Manager)
|