2 Summary: batterymonitor service daemon
6 Source0: %{name}-%{version}.tar.gz
7 Source1: org.tizen.battery.monitor.service
8 Source2: org.tizen.battery.monitor.conf
9 Source3: batterymonitor.service
10 Source4: batterymonitor.manifest
13 BuildRequires: pkgconfig(dlog)
14 BuildRequires: pkgconfig(capi-system-info)
15 BuildRequires: pkgconfig(glib-2.0) >= 2.26
16 BuildRequires: pkgconfig(gio-2.0)
17 BuildRequires: pkgconfig(gio-unix-2.0)
18 BuildRequires: pkgconfig(db-util)
19 BuildRequires: pkgconfig(sqlite3)
20 BuildRequires: pkgconfig(pkgmgr-info)
21 BuildRequires: pkgconfig(cynara-client)
22 BuildRequires: pkgconfig(cynara-session)
23 BuildRequires: pkgconfig(cynara-creds-gdbus)
24 BuildRequires: pkgconfig(libtzplatform-config)
25 BuildRequires: pkgconfig(json-c)
26 BuildRequires: pkgconfig(capi-appfw-job-scheduler)
27 BuildRequires: pkgconfig(capi-system-device)
28 BuildRequires: pkgconfig(dumpsys-system)
29 BuildRequires: pkgconfig(capi-network-wifi-manager)
30 BuildRequires: pkgconfig(capi-network-bluetooth)
31 BuildRequires: pkgconfig(capi-network-connection)
32 BuildRequires: pkgconfig(vconf)
33 BuildRequires: pkgconfig(tapi)
35 Requires(post): /sbin/ldconfig
36 Requires(postun): /sbin/ldconfig
38 %define power_profile_config_path /usr/etc/batterymonitor/config
40 %define dump_dummy OFF
43 Battery-Monitor Service Daemon
54 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
55 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
56 -DLIB_INSTALL_DIR=%{_libdir} \
57 -DBIN_INSTALL_DIR=%{_bindir} \
58 -DINCLUDE_INSTALL_DIR=%{_includedir} \
60 -DFULLVER=%{version} \
61 -DMAJORVER=${MAJORVER} \
62 -DDUMP_DUMMY=%{dump_dummy}
66 mkdir -p %{buildroot}/usr/etc/batterymonitor/config
67 cp config/bm_power_profile_params.json %{buildroot}%{power_profile_config_path}/bm_power_profile_params.json
69 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
70 cp org.tizen.battery.monitor.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/org.tizen.battery.monitor.conf
72 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
73 cp org.tizen.battery.monitor.service %{buildroot}%{_datadir}/dbus-1/system-services/org.tizen.battery.monitor.service
75 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
76 cp batterymonitor.service %{buildroot}%{_unitdir}/batterymonitor.service
77 ln -s ../batterymonitor.service %{buildroot}%{_unitdir}/multi-user.target.wants/batterymonitor.service
79 rm %{buildroot}%{_includedir}/battery_monitor_stub.h
86 if [ ! -f %{TZ_SYS_DB}/.battery-monitor.db ]
88 sqlite3 %{TZ_SYS_DB}/.battery-monitor.db 'PRAGMA journal_mode = PERSIST;
89 CREATE TABLE if not exists appid_map (id INTEGER PRIMARY KEY AUTOINCREMENT, AppId TEXT);
90 CREATE TABLE if not exists appid_usage (AppId TEXT, log_time INT, rId_ble INT, rId_wifi INT, rId_cpu INT, rId_display INT, rId_device_network INT,
91 rId_gps INT, rId_hrm INT, rId_battery INT);
92 CREATE TABLE if not exists resourceid_usage (ResourceId TEXT, log_time INT, usage INT);
93 CREATE TABLE if not exists gble_stat (time_s LONG INT, ble_idle_time INT, ble_rx_time INT, ble_tx_time INT, ble_pwi_val INT);
94 CREATE TABLE if not exists gwfl_stat (time_s LONG INT, wifi_on_time INT, wifi_conn_time INT, wifi_idle_time INT,
95 wifi_rx_time INT, wifi_tx_time INT, wifi_pwi_val INT);
96 CREATE TABLE if not exists gn_stat (time_s LONG INT, dn_rx_byt INT, dn_tx_byt INT, wifi_rx_byt INT, wifi_tx_byt INT,
97 dn_rx_pkt INT, dn_tx_pkt INT, wifi_rx_pkt INT, wifi_tx_pkt INT, bt_rx_byt INT, bt_tx_byt INT);
98 CREATE TABLE if not exists gbr_stat (time_s LONG INT, dark INT, dim INT, medium INT, light INT, bright INT);
99 CREATE TABLE if not exists gsgt_stat (time_s LONG INT, scan_time INT, none_time INT, poor_time INT, med_time INT,
100 good_time INT, grt_time INT);
101 CREATE TABLE if not exists gwst_stat (time_s LONG INT, wscan_time INT, wnone_time INT, wpoor_time INT, wmed_time INT,
102 wgood_time INT, wgrt_time INT);
103 CREATE TABLE if not exists gbst_stat (time_s LONG INT, off_time INT, low_time INT, med_time INT, high_time INT);
104 CREATE TABLE if not exists gcpu_stat (time_s LONG INT, usr_time INT, sys_time INT);
108 chown service_fw:service_fw %{TZ_SYS_DB}/.battery-monitor.db
109 chown service_fw:service_fw %{TZ_SYS_DB}/.battery-monitor.db-journal
111 chmod 644 %{TZ_SYS_DB}/.battery-monitor.db
112 chmod 644 %{TZ_SYS_DB}/.battery-monitor.db-journal
115 chsmack -a "System" %{TZ_SYS_DB}/.battery-monitor.db
116 chsmack -a "System" %{TZ_SYS_DB}/.battery-monitor.db-journal
118 %postun -p /sbin/ldconfig
121 %manifest %{name}.manifest
123 %defattr(-,root,root)
124 %attr(755,-,-) %{_bindir}/batterymonitor-svcd
125 %config %{_sysconfdir}/dbus-1/system.d/org.tizen.battery.monitor.conf
126 %config %attr(755,root,root) %{power_profile_config_path}/bm_power_profile_params.json
127 %attr(644,root,root) %{_datadir}/dbus-1/system-services/*
128 %attr(644,root,root) %{_unitdir}/batterymonitor.service
129 %attr(644,root,root) %{_unitdir}/multi-user.target.wants/batterymonitor.service