Add the vpn service
[platform/core/connectivity/net-config.git] / packaging / net-config.spec
1 Name:           net-config
2 Summary:        TIZEN Network Configuration service
3 Version:        1.1.76
4 Release:        2
5 Group:          System/Network
6 License:        Apache-2.0
7 Source0:        %{name}-%{version}.tar.gz
8 BuildRequires:  pkgconfig(aul)
9 BuildRequires:  pkgconfig(dlog)
10 BuildRequires:  pkgconfig(tapi)
11 BuildRequires:  pkgconfig(vconf)
12 BuildRequires:  pkgconfig(bundle)
13 BuildRequires:  pkgconfig(gio-2.0)
14 BuildRequires:  pkgconfig(glib-2.0)
15 BuildRequires:  pkgconfig(eventsystem)
16 BuildRequires:  pkgconfig(alarm-service)
17 BuildRequires:  pkgconfig(syspopup-caller)
18 BuildRequires:  pkgconfig(capi-system-info)
19 BuildRequires:  pkgconfig(capi-appfw-application)
20 BuildRequires:  pkgconfig(capi-network-wifi-direct)
21 BuildRequires:  pkgconfig(capi-vpnsvc)
22 BuildRequires:  cmake
23 BuildRequires:  pkgconfig(sqlite3)
24 BuildRequires:  pkgconfig(libtzplatform-config)
25 Requires:               vconf
26 Requires:               connman
27 Requires:               systemd
28 Requires(post):         systemd
29 Requires(preun):        systemd
30 Requires(postun):       systemd
31
32 %description
33 TIZEN Network Configuration service
34
35 %prep
36 %setup -q
37
38 %build
39 cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
40         -DTIZEN_WLAN_PASSPOINT=1 \
41         -DTIZEN_WLAN_USE_P2P_INTERFACE=1 \
42 %if 0%{?model_build_feature_wlan_concurrent_mode}
43         -DWLAN_CONCURRENT_MODE=1 \
44 %endif
45 %if ! 0%{?model_build_feature_wlan_p2p_disable}
46         -DTIZEN_P2P_ENABLE=1 \
47 %endif
48 %if ! 0%{?model_build_feature_network_tethering_disable}
49         -DTIZEN_TETHERING_ENABLE=1 \
50 %endif
51 %if "%{profile}" == "mobile"
52         -DTIZEN_TELEPHONY_ENABLE=1 \
53         -DTIZEN_WLAN_BOARD_SPRD=1 \
54 %else
55 %if "%{profile}" == "tv"
56         -DTIZEN_TV=1 \
57 %endif
58 %endif
59 %if 0%{?model_build_feature_wlan_wearable} == 1
60         -DTIZEN_WEARABLE=1 \
61         -DTIZEN_CAPTIVE_PORTAL=1 \
62 %endif
63         .
64
65 make %{?_smp_mflags}
66
67
68 %install
69 %make_install
70
71 #Systemd service file
72 mkdir -p %{buildroot}%{_libdir}/systemd/system/
73 %if "%{?_lib}" == "lib64"
74 mkdir -p %{buildroot}%{_unitdir}
75 %endif
76
77 %if "%{profile}" == "tv"
78 cp resources/usr/lib/systemd/system/net-config_tv.service %{buildroot}%{_libdir}/systemd/system/net-config.service
79 mkdir -p %{buildroot}%{_libdir}/udev/rules.d/
80 cp resources/usr/lib/udev/rules.d/99-wifiusb-dev.rules %{buildroot}%{_libdir}/udev/rules.d/99-wifiusb-dev.rules
81 %else
82 cp resources/usr/lib/systemd/system/net-config.service %{buildroot}%{_libdir}/systemd/system/net-config.service
83 %if "%{?_lib}" == "lib64"
84 cp resources/usr/lib/systemd/system/net-config.service %{buildroot}%{_unitdir}/net-config.service
85 %endif
86 %endif
87
88 mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/
89 ln -s ../net-config.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/net-config.service
90 %if "%{?_lib}" == "lib64"
91 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants/
92 ln -s ../net-config.service %{buildroot}%{_unitdir}/multi-user.target.wants/net-config.service
93 %endif
94
95 mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
96 cp resources/usr/share/dbus-1/system-services/net.netconfig.service %{buildroot}%{_datadir}/dbus-1/system-services/net.netconfig.service
97
98 mkdir -p %{buildroot}%{_sysconfdir}/
99 cp resources/etc/resolv.conf %{buildroot}%{_sysconfdir}/resolv.conf
100
101 mkdir -p %{buildroot}%{_sbindir}/
102 cp resources/usr/sbin/net-config.service %{buildroot}%{_sbindir}/net-config.service
103
104 mkdir -p %{buildroot}%{TZ_SYS_DB}
105 sqlite3 %{buildroot}%{TZ_SYS_DB}/.wifi_offload.db < resources/usr/share/wifi_offloading.sql
106
107 #DBus DAC (net-config.manifest enables DBus SMACK)
108 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
109 cp resources/etc/dbus-1/system.d/net-config.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/net-config.conf
110
111 #log dump
112 mkdir -p %{buildroot}%{TZ_SYS_ETC}/dump.d/module.d/
113 cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}%{TZ_SYS_ETC}/dump.d/module.d/network_log_dump.sh
114 mkdir -p %{buildroot}%{TZ_SYS_VAR}/lib/net-config/
115 cp resources/opt/etc/dump.d/module.d/network_log_dump.sh %{buildroot}%{TZ_SYS_VAR}/lib/net-config/network_log_dump.sh
116 cp resources/opt/etc/dump.d/module.d/network_dump.sh %{buildroot}%{TZ_SYS_VAR}/lib/net-config/network_dump.sh
117
118 %if 0%{?model_build_feature_wlan_wearable} == 1
119 #softreset scripts
120 mkdir -p %{buildroot}/usr/system/RestoreDir/softreset
121 cp resources/usr/system/RestoreDir/softreset/network_softreset.sh %{buildroot}/usr/system/RestoreDir/softreset/network_softreset.sh
122 %endif
123
124 #License
125 mkdir -p %{buildroot}%{_datadir}/license
126 cp LICENSE %{buildroot}%{_datadir}/license/net-config
127
128 %post
129
130 #Network logs
131 mkdir -p /opt/usr/data/network
132 chmod 755 /opt/usr/data/network
133 chsmack -a 'System' /opt/usr/data/network
134
135 #Add net-config.service to systemd extra default dependency ignore list
136 mkdir -p %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
137 ln -sf %{_libdir}/systemd/system/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
138 %if "%{?_lib}" == "lib64"
139 ln -sf %{_unitdir}/net-config.service %{_sysconfdir}/systemd/default-extra-dependencies/ignore-units.d/
140 %endif
141
142 #systemctl daemon-reload
143 #systemctl restart net-config.service
144
145 %preun
146 #systemctl stop net-config.service
147
148 %postun
149 #systemctl daemon-reload
150
151
152 %files
153 %manifest net-config.manifest
154 %attr(500,root,root) %{_sbindir}/*
155 %attr(644,root,root) %{_sysconfdir}/resolv.conf
156 %attr(644,root,root) %{_datadir}/dbus-1/system-services/*
157 #DBus DAC
158 %attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*
159 %attr(644,root,root) %{_libdir}/systemd/system/net-config.service
160 %attr(644,root,root) %{_libdir}/systemd/system/multi-user.target.wants/net-config.service
161 %if "%{?_lib}" == "lib64"
162 %attr(644,root,root) %{_unitdir}/net-config.service
163 %attr(644,root,root) %{_unitdir}/multi-user.target.wants/net-config.service
164 %endif
165 %{_datadir}/license/net-config
166 %attr(660,root,root) %{TZ_SYS_DB}/.wifi_offload.db
167 %attr(664,root,root) %{TZ_SYS_DB}/.wifi_offload.db-journal
168 %attr(500,root,root) %{TZ_SYS_ETC}/dump.d/module.d/network_log_dump.sh
169 %attr(500,root,root) %{TZ_SYS_VAR}/lib/net-config/network_log_dump.sh
170 %attr(500,root,root) %{TZ_SYS_VAR}/lib/net-config/network_dump.sh
171 %if "%{profile}" == "tv"
172 %attr(644,root,root) %{_libdir}/udev/rules.d/99-wifiusb-dev.rules
173 %endif
174 %if 0%{?model_build_feature_wlan_wearable} == 1
175 %attr(700,root,root) /usr/system/RestoreDir/softreset/network_softreset.sh
176
177 %endif