Base Code merged to SPIN 2.4
[platform/core/connectivity/net-config.git] / packaging / net-config.spec
1 Name:           net-config
2 Summary:        TIZEN Network Configuration service
3 Version:        1.1.28
4 Release:        2
5 Group:          System/Network
6 License:        Apache-2.0
7 Source0:        %{name}-%{version}.tar.gz
8 BuildRequires:  pkgconfig(dlog)
9 BuildRequires:  pkgconfig(tapi)
10 BuildRequires:  pkgconfig(vconf)
11 BuildRequires:  pkgconfig(bundle)
12 BuildRequires:  pkgconfig(gio-2.0)
13 BuildRequires:  pkgconfig(glib-2.0)
14 BuildRequires:  pkgconfig(eventsystem)
15 BuildRequires:  pkgconfig(alarm-service)
16 BuildRequires:  pkgconfig(syspopup-caller)
17 BuildRequires:  pkgconfig(capi-system-info)
18 BuildRequires:  pkgconfig(capi-appfw-application)
19 BuildRequires:  pkgconfig(capi-network-wifi-direct)
20 BuildRequires:  cmake
21 BuildRequires:  model-build-features
22 Requires:               vconf
23 Requires:               connman
24 Requires:               systemd
25 Requires(post):         systemd
26 Requires(post):         vconf
27 Requires(preun):        systemd
28 Requires(postun):       systemd
29
30 %description
31 TIZEN Network Configuration service
32
33 %prep
34 %setup -q
35
36 %build
37 cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
38         -DTIZEN_WLAN_PASSPOINT=1 \
39 %if 0%{?model_build_feature_wlan_concurrent_mode}
40         -DWLAN_CONCURRENT_MODE=1 \
41 %endif
42 %if ! 0%{?model_build_feature_wlan_p2p_disable}
43         -DTIZEN_P2P_ENABLE=1 \
44 %endif
45 %if ! 0%{?model_build_feature_network_tethering_disable}
46         -DTIZEN_TETHERING_ENABLE=1 \
47 %endif
48 %if "%{?tizen_profile_name}" == "tv"
49         -DTIZEN_TV=1 \
50 %endif
51 %if 0%{?model_build_feature_wlan_wearable} == 1
52         -DTIZEN_WEARABLE=1 \
53         -DTIZEN_CAPTIVE_PORTAL=1 \
54 %endif
55         .
56
57 make %{?_smp_mflags}
58
59
60 %install
61 %make_install
62
63 #Systemd service file
64 mkdir -p %{buildroot}%{_libdir}/systemd/system/
65 %if "%{?_lib}" == "lib64"
66 mkdir -p %{buildroot}%{_unitdir}
67 %endif
68
69 %if "%{?tizen_profile_name}" == "tv"
70 cp resources/usr/lib/systemd/system/net-config_tv.service %{buildroot}%{_libdir}/systemd/system/net-config.service
71 mkdir -p %{buildroot}%{_libdir}/udev/rules.d/
72 cp resources/usr/lib/udev/rules.d/99-wifiusb-dev.rules %{buildroot}%{_libdir}/udev/rules.d/99-wifiusb-dev.rules
73 %else
74 cp resources/usr/lib/systemd/system/net-config.service %{buildroot}%{_libdir}/systemd/system/net-config.service
75 %if "%{?_lib}" == "lib64"
76 cp resources/usr/lib/systemd/system/net-config.service %{buildroot}%{_unitdir}/net-config.service
77 %endif
78 %endif
79
80 mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/
81 ln -s ../net-config.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/net-config.service
82 %if "%{?_lib}" == "lib64"
83 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants/
84 ln -s ../net-config.service %{buildroot}%{_unitdir}/multi-user.target.wants/net-config.service
85 %endif
86
87 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
88 cp resources/usr/share/dbus-1/system-services/net.netconfig.service %{buildroot}%{_datadir}/dbus-1/system-services/net.netconfig.service
89
90 mkdir -p %{buildroot}%{_sysconfdir}/
91 cp resources/etc/resolv.conf %{buildroot}%{_sysconfdir}/resolv.conf
92
93 mkdir -p %{buildroot}%{_sbindir}/
94 cp resources/usr/sbin/net-config.service %{buildroot}%{_sbindir}/net-config.service
95
96 mkdir -p %{buildroot}/opt/dbspace
97 sqlite3 %{buildroot}/opt/dbspace/.wifi_offload.db < resources/usr/share/wifi_offloading.sql
98
99 #DBus DAC (net-config.manifest enables DBus SMACK)
100 #mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
101 #cp resources/etc/dbus-1/system.d/net-config.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/net-config.conf
102
103 #log dump
104 mkdir -p %{buildroot}/opt/etc/dump.d/module.d/
105 cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}/opt/etc/dump.d/module.d/network_log_dump.sh
106 mkdir -p %{buildroot}/opt/var/lib/net-config/
107 cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}/opt/var/lib/net-config/network_log_dump.sh
108 cp resources/opt/etc/dump.d/module.d/network_dump.sh %{buildroot}/opt/var/lib/net-config/network_dump.sh
109
110 %if 0%{?model_build_feature_wlan_wearable} == 1
111 #softreset scripts
112 mkdir -p %{buildroot}/usr/system/RestoreDir/softreset
113 cp resources/usr/system/RestoreDir/softreset/network_softreset.sh %{buildroot}/usr/system/RestoreDir/softreset/network_softreset.sh
114 %endif
115
116 #License
117 mkdir -p %{buildroot}%{_datadir}/license
118 cp LICENSE %{buildroot}%{_datadir}/license/net-config
119
120 %post
121
122 %if "%{?tizen_profile_name}" == "tv"
123 vconftool set -t string db/dnet/mac_address "" -s system::vconf_network
124 %endif
125
126 #Wi-Fi statistics
127 vconftool set -t int db/dnet/statistics/wifi/totalsnt 0 -s tizen::vconf::network
128 vconftool set -t int db/dnet/statistics/wifi/totalrcv 0 -s tizen::vconf::network
129 vconftool set -t int db/dnet/statistics/wifi/lastsnt 0 -s tizen::vconf::network
130 vconftool set -t int db/dnet/statistics/wifi/lastrcv 0 -s tizen::vconf::network
131
132 #Wi-Fi last power state
133 vconftool set -t int file/private/wifi/last_power_state 0 -s system::vconf_network
134
135 #Wi-Fi power state due to airplane mode
136 vconftool set -t int file/private/wifi/wifi_off_by_airplane 0 -s system::vconf_network
137
138 #Wi-Fi power state due to restricted mode
139 vconftool set -t int file/private/wifi/wifi_off_by_restricted 0 -s system::vconf_network
140
141 #Wi-Fi power state due to emergency mode
142 vconftool set -t int file/private/wifi/wifi_off_by_emergency 0 -s system::vconf_network
143
144 #Wi-Fi sleep policy
145 vconftool set -t int file/private/wifi/sleep_policy 0 -g 6519 -s system::vconf_setting
146
147 %if 0%{?model_build_feature_wlan_wearable} == 1
148 #Wearable use Wi-Fi
149 vconftool set -t int db/private/wifi/wearable_wifi_use 0 -g 6519 -s net-config
150 %endif
151
152 #Wi-Fi Network Frequency for Wi-Fi Direct
153 vconftool set -t int memory/private/wifi/frequency 0 -i -s tizen::vconf::platform::r
154
155 #Network logs
156 mkdir -p /opt/usr/data/network
157 chmod 755 /opt/usr/data/network
158
159 #Add net-config.service to systemd extra default dependency ignore list
160 mkdir -p %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
161 ln -sf %{_libdir}/systemd/system/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
162 %if "%{?_lib}" == "lib64"
163 ln -sf %{_unitdir}/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
164 %endif
165
166 #systemctl daemon-reload
167 #systemctl restart net-config.service
168
169 %preun
170 #systemctl stop net-config.service
171
172 %postun
173 #systemctl daemon-reload
174
175
176 %files
177 %manifest net-config.manifest
178 %attr(500,root,root) %{_sbindir}/*
179 %attr(644,root,root) %{_sysconfdir}/resolv.conf
180 %attr(644,root,root) %{_datadir}/dbus-1/system-services/*
181 #DBus DAC
182 #%attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*
183 %attr(644,root,root) %{_libdir}/systemd/system/net-config.service
184 %attr(644,root,root) %{_libdir}/systemd/system/multi-user.target.wants/net-config.service
185 %if "%{?_lib}" == "lib64"
186 %attr(644,root,root) %{_unitdir}/net-config.service
187 %attr(644,root,root) %{_unitdir}/multi-user.target.wants/net-config.service
188 %endif
189 %{_datadir}/license/net-config
190 %attr(660,root,root) /opt/dbspace/.wifi_offload.db
191 %attr(664,root,root) /opt/dbspace/.wifi_offload.db-journal
192 %attr(500,root,root) /opt/etc/dump.d/module.d/network_log_dump.sh
193 %attr(500,root,root) /opt/var/lib/net-config/network_log_dump.sh
194 %attr(500,root,root) /opt/var/lib/net-config/network_dump.sh
195 %if "%{?tizen_profile_name}" == "tv"
196 %attr(644,root,root) %{_libdir}/udev/rules.d/99-wifiusb-dev.rules
197 %endif
198 %if 0%{?model_build_feature_wlan_wearable} == 1
199 %attr(700,root,root) /usr/system/RestoreDir/softreset/network_softreset.sh
200
201 %endif