master
cmake 723 lines 25.1 KB
Raw
1 #
2 # CPack options
3 #
4
5 if(NETDATA_VERSION_DESCR STREQUAL "N/A")
6 set(CPACK_PACKAGE_VERSION ${NETDATA_VERSION_MAJOR}.${NETDATA_VERSION_MINOR}.${NETDATA_VERSION_PATCH})
7 else()
8 set(CPACK_PACKAGE_VERSION ${NETDATA_VERSION_MAJOR}.${NETDATA_VERSION_MINOR}.${NETDATA_VERSION_PATCH}-${NETDATA_VERSION_TWEAK}-${NETDATA_VERSION_DESCR})
9 endif()
10
11 set(CPACK_THREADS 0)
12 set(CPACK_COMPONENTS_GROUPING IGNORE)
13
14 set(CPACK_STRIP_FILES NO)
15 set(CPACK_DEBIAN_DEBUGINFO_PACKAGE NO)
16
17 set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS YES)
18 set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
19
20 if(OS_LINUX)
21 set(OS_DISTRO_ID "unknown")
22 set(OS_VERSION_ID "unknown")
23
24 find_file(OS_RELEASE_PATH os-release PATHS /etc /usr/lib
25 NO_DEFAULT_PATH
26 NO_PACKAGE_ROOT_PATH
27 NO_CMAKE_PATH
28 NO_CMAKE_ENVIRONMENT_PATH
29 NO_SYSTEM_ENVIRONMENT_PATH
30 NO_CMAKE_SYSTEM_PATH
31 NO_CMAKE_INSTALL_PREFIX)
32
33 if(NOT OS_RELEASE_PATH STREQUAL OS_RELEASE_PATH-NOTFOUND)
34 file(STRINGS "${OS_RELEASE_PATH}" OS_RELEASE_LINES)
35
36 foreach(_line IN LISTS OS_RELEASE_LINES)
37 if(_line MATCHES "^ID=.*$")
38 string(SUBSTRING "${_line}" 3 -1 OS_DISTRO_ID)
39 string(REPLACE "\"" "" OS_DISTRO_ID "${OS_DISTRO_ID}")
40 elseif(_line MATCHES "^VERSION_ID=.*$")
41 string(SUBSTRING "${_line}" 11 -1 OS_VERSION_ID)
42 string(REPLACE "\"" "" OS_VERSION_ID "${OS_VERSION_ID}")
43 endif()
44 endforeach()
45 endif()
46
47 if(OS_DISTRO_ID STREQUAL "debian")
48 if(OS_VERSION_ID VERSION_GREATER_EQUAL 12)
49 set(CPACK_DEBIAN_COMPRESSION_TYPE "zstd")
50 endif()
51 elseif(OS_DISTRO_ID STREQUAL "ubuntu")
52 if(OS_VERSION_ID VERSION_GREATER_EQUAL 21.10)
53 set(CPACK_DEBIAN_COMPRESSION_TYPE "zstd")
54 endif()
55 endif()
56 endif()
57
58 set(CPACK_PACKAGING_INSTALL_PREFIX "/")
59
60 set(CPACK_PACKAGE_VENDOR "Netdata Inc.")
61
62 set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE")
63 set(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/README.md")
64
65 set(CPACK_PACKAGE_INSTALL_DIRECTORY "netdata")
66 set(CPACK_PACKAGE_DIRECTORY "${CMAKE_BINARY_DIR}/packages")
67
68 # to silence lintian
69 set(CPACK_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS
70 OWNER_READ OWNER_WRITE OWNER_EXECUTE
71 GROUP_READ GROUP_EXECUTE
72 WORLD_READ WORLD_EXECUTE)
73
74 #
75 # Debian options
76 #
77
78 set(CPACK_DEB_COMPONENT_INSTALL YES)
79 set(CPACK_DEBIAN_ENABLE_COMPONENT_DEPENDS YES)
80 set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
81
82 set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Netdata Builder <bot@netdata.cloud>")
83
84 #
85 # netdata
86 #
87
88 set(CPACK_COMPONENT_NETDATA_DESCRIPTION
89 "Netdata is a high-resolution, real-time, low-latency observability platform.
90 Per-second data collection, high-performance long-term storage, low-latency
91 visualization, machine-learning based anomaly detection, alerts and notifications,
92 advanced correlations and fast root cause analysis, native horizontal scalability.")
93
94 set(CPACK_DEBIAN_NETDATA_PACKAGE_NAME "netdata")
95 set(CPACK_DEBIAN_NETDATA_PACKAGE_SECTION "net")
96 set(CPACK_DEBIAN_NETDATA_PACKAGE_PREDEPENDS "netdata-user, libcap2-bin")
97 set(CPACK_DEBIAN_NETDATA_PACKAGE_SUGGESTS
98 "netdata-plugin-cups, netdata-plugin-freeipmi, netdata-plugin-ibm")
99 set(CPACK_DEBIAN_NETDATA_PACKAGE_RECOMMENDS
100 "netdata-plugin-systemd-journal, netdata-plugin-systemd-units, \
101 netdata-plugin-network-viewer, netdata-plugin-scripts")
102 set(CPACK_DEBIAN_NETDATA_PACKAGE_CONFLICTS
103 "netdata-core, netdata-plugins-bash, netdata-plugins-python, netdata-web")
104
105 if(ENABLE_DASHBOARD)
106 list(APPEND _main_deps "netdata-dashboard")
107 endif()
108
109 if(ENABLE_PLUGIN_OTEL)
110 list(APPEND _main_deps "netdata-plugin-otel")
111 endif()
112
113 if(ENABLE_PLUGIN_CHARTS)
114 list(APPEND _main_deps "netdata-plugin-chartsd")
115 endif()
116
117 if(ENABLE_PLUGIN_PYTHON)
118 list(APPEND _main_deps "netdata-plugin-pythond")
119 endif()
120
121 if(ENABLE_PLUGIN_APPS)
122 list(APPEND _main_deps "netdata-plugin-apps")
123 endif()
124
125 if(ENABLE_PLUGIN_GO)
126 list(APPEND _main_deps "netdata-plugin-go")
127 endif()
128
129 if(ENABLE_PLUGIN_DEBUGFS)
130 list(APPEND _main_deps "netdata-plugin-debugfs")
131 endif()
132
133 if(ENABLE_PLUGIN_NFACCT)
134 list(APPEND _main_deps "netdata-plugin-nfacct")
135 endif()
136
137 if(ENABLE_PLUGIN_SLABINFO)
138 list(APPEND _main_deps "netdata-plugin-slabinfo")
139 endif()
140
141 if(ENABLE_PLUGIN_PERF)
142 list(APPEND _main_deps "netdata-plugin-perf")
143 endif()
144
145 if(ENABLE_PLUGIN_EBPF)
146 list(APPEND _main_deps "netdata-plugin-ebpf")
147 endif()
148
149 list(JOIN _main_deps ", " CPACK_DEBIAN_NETDATA_PACKAGE_DEPENDS)
150
151 set(CPACK_DEBIAN_NETDATA_PACKAGE_CONTROL_EXTRA
152 "${PKG_FILES_PATH}/deb/netdata/conffiles;"
153 "${PKG_FILES_PATH}/deb/netdata/postinst"
154 "${PKG_FILES_PATH}/deb/netdata/prerm"
155 "${PKG_FILES_PATH}/deb/netdata/postrm")
156
157 set(CPACK_DEBIAN_NETDATA_DEBUGINFO_PACKAGE Off)
158
159 #
160 # user
161 #
162
163 set(CPACK_COMPONENT_USER_DESCRIPTION
164 "User and group accounts for the Netdata Agent")
165
166 set(CPACK_DEBIAN_USER_PACKAGE_NAME "netdata-user")
167 set(CPACK_DEBIAN_USER_PACKAGE_SECTION "net")
168 set(CPACK_DEBIAN_USER_PACKAGE_CONFLICTS "netdata (<< ${CPACK_PACKAGE_VERSION})")
169 set(CPACK_DEBIAN_USER_PACKAGE_DEPENDS "adduser | systemd")
170
171 set(CPACK_DEBIAN_USER_PACKAGE_CONTROL_EXTRA
172 "${PKG_FILES_PATH}/deb/user/postinst")
173
174 set(CPACK_DEBIAN_USER_DEBUGINFO_PACKAGE Off)
175
176 #
177 # dashboard
178 #
179
180 set(CPACK_COMPONENT_DASHBOARD_DEPENDS "netdata")
181 set(CPACK_COMPONENT_DASHBOARD_DESCRIPTION
182 "The local dashboard for the Netdata Agent.
183 This allows access to the dashboard on the local node without internet access.")
184
185 set(CPACK_DEBIAN_DASHBOARD_PACKAGE_NAME "netdata-dashboard")
186 set(CPACK_DEBIAN_DASHBOARD_PACKAGE_SECTION "net")
187 set(CPACK_DEBIAN_DASHBOARD_PACKAGE_CONFLICTS "netdata (<< ${CPACK_PACKAGE_VERSION})")
188 set(CPACK_DEBIAN_DASHBOARD_PACKAGE_PREDEPENDS "netdata-user")
189
190 set(CPACK_DEBIAN_DASHBOARD_DEBUGINFO_PACKAGE Off)
191
192 #
193 # apps.plugin
194 #
195
196 set(CPACK_COMPONENT_PLUGIN-APPS_DEPENDS "netdata")
197 set(CPACK_COMPONENT_PLUGIN-APPS_DESCRIPTION
198 "The per-application metrics collector plugin for the Netdata Agent
199 This plugin allows the Netdata Agent to collect per-application and
200 per-user metrics without using cgroups.")
201
202 set(CPACK_DEBIAN_PLUGIN-APPS_PACKAGE_NAME "netdata-plugin-apps")
203 set(CPACK_DEBIAN_PLUGIN-APPS_PACKAGE_SECTION "net")
204 set(CPACK_DEBIAN_PLUGIN-APPS_PACKAGE_CONFLICTS "netdata (<< 1.40)")
205 set(CPACK_DEBIAN_PLUGIN-APPS_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
206
207 set(CPACK_DEBIAN_PLUGIN-APPS_PACKAGE_CONTROL_EXTRA
208 "${PKG_FILES_PATH}/deb/plugin-apps/postinst")
209
210 set(CPACK_DEBIAN_PLUGIN-APPS_DEBUGINFO_PACKAGE On)
211
212 #
213 # charts.d.plugin
214 #
215
216 set(CPACK_COMPONENT_PLUGIN-CHARTSD_DEPENDS "netdata")
217 set(CPACK_COMPONENT_PLUGIN-CHARTSD_DESCRIPTION
218 "The charts.d metrics collection plugin for the Netdata Agent
219 This plugin adds a selection of additional collectors written in shell
220 script to the Netdata Agent. It includes collectors for APCUPSD,
221 LibreSWAN, OpenSIPS, and Wireless access point statistics.")
222
223 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_NAME "netdata-plugin-chartsd")
224 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_SECTION "net")
225 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_CONFLICTS "netdata (<< 1.40)")
226 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_PREDEPENDS "netdata-user")
227 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_DEPENDS "bash")
228 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_ARCHITECTURE "all")
229 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_SUGGESTS "apcupsd, iw, sudo")
230
231 set(CPACK_DEBIAN_PLUGIN-CHARTSD_PACKAGE_CONTROL_EXTRA
232 "${PKG_FILES_PATH}/deb/plugin-chartsd/postinst")
233
234 set(CPACK_DEBIAN_PLUGIN-CHARTSD_DEBUGINFO_PACKAGE Off)
235
236 #
237 # cups.plugin
238 #
239
240 set(CPACK_COMPONENT_PLUGIN-CUPS_DEPENDS "netdata")
241 set(CPACK_COMPONENT_PLUGIN-CUPS_DESCRIPTION
242 "The CUPS metrics collection plugin for the Netdata Agent
243 This plugin allows the Netdata Agent to collect metrics from the Common UNIX Printing System.")
244
245 set(CPACK_DEBIAN_PLUGIN-CUPS_PACKAGE_NAME "netdata-plugin-cups")
246 set(CPACK_DEBIAN_PLUGIN-CUPS_PACKAGE_SECTION "net")
247 set(CPACK_DEBIAN_PLUGIN-CUPS_PACKAGE_PREDEPENDS "netdata-user")
248 set(CPACK_DEBIAN_PLUGIN-CUPS_PACKAGE_CONTROL_EXTRA
249 "${PKG_FILES_PATH}/deb/plugin-cups/postinst")
250
251 set(CPACK_DEBIAN_PLUGIN-CUPS_DEBUGINFO_PACKAGE On)
252
253 #
254 # debugfs.plugin
255 #
256
257 set(CPACK_COMPONENT_PLUGIN-DEBUGFS_DEPENDS "netdata")
258 set(CPACK_COMPONENT_PLUGIN-DEBUGFS_DESCRIPTION
259 "The debugfs metrics collector for the Netdata Agent
260 This plugin allows the Netdata Agent to collect Linux kernel metrics
261 exposed through debugfs.")
262
263 set(CPACK_DEBIAN_PLUGIN-DEBUGFS_PACKAGE_NAME "netdata-plugin-debugfs")
264 set(CPACK_DEBIAN_PLUGIN-DEBUGFS_PACKAGE_SECTION "net")
265 set(CPACK_DEBIAN_PLUGIN-DEBUGFS_PACKAGE_CONFLICTS "netdata (<< 1.40)")
266 set(CPACK_DEBIAN_PLUGIN-DEBUGFS_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
267 set(CPACK_DEBIAN_PLUGIN-DEBUGFS_PACKAGE_CONTROL_EXTRA
268 "${PKG_FILES_PATH}/deb/plugin-debugfs/postinst")
269
270 set(CPACK_DEBIAN_PLUGIN-DEBUGFS_DEBUGINFO_PACKAGE On)
271
272 #
273 # ebpf.plugin
274 #
275
276 set(CPACK_COMPONENT_PLUGIN-EBPF_DEPENDS "netdata")
277 set(CPACK_COMPONENT_PLUGIN-EBPF_DESCRIPTION
278 "The eBPF metrics collection plugin for the Netdata Agent
279 This plugin allows the Netdata Agent to use eBPF code to collect more
280 detailed kernel-level metrics for the system.")
281
282 set(CPACK_DEBIAN_PLUGIN-EBPF_PACKAGE_NAME "netdata-plugin-ebpf")
283 set(CPACK_DEBIAN_PLUGIN-EBPF_PACKAGE_SECTION "net")
284 set(CPACK_DEBIAN_PLUGIN-EBPF_PACKAGE_CONFLICTS "netdata (<< 1.40)")
285 set(CPACK_DEBIAN_PLUGIN-EBPF_PACKAGE_PREDEPENDS "netdata-user")
286 set(CPACK_DEBIAN_PLUGIN-EBPF_PACKAGE_RECOMMENDS "netdata-plugin-apps (= ${CPACK_PACKAGE_VERSION}), netdata-ebpf-code-legacy (= ${CPACK_PACKAGE_VERSION})")
287
288 set(CPACK_DEBIAN_PLUGIN-EBPF_PACKAGE_CONTROL_EXTRA
289 "${PKG_FILES_PATH}/deb/plugin-ebpf/postinst")
290
291 set(CPACK_DEBIAN_PLUGIN-EBPF_DEBUGINFO_PACKAGE On)
292
293 #
294 # ebpf-code-legacy
295 #
296
297 set(CPACK_COMPONENT_EBPF-CODE-LEGACY_DEPENDS "netdata")
298 set(CPACK_COMPONENT_EBPF-CODE-LEGACY_DESCRIPTION
299 "Compiled eBPF legacy code for the Netdata eBPF plugin
300 This package provides the pre-compiled eBPF legacy code for use by
301 the Netdata eBPF plugin. This code is only needed when using the eBPF
302 plugin with kernel that do not include BTF support (mostly kernel
303 versions lower than 5.10).")
304
305 set(CPACK_DEBIAN_EBPF-CODE-LEGACY_PACKAGE_NAME "netdata-ebpf-code-legacy")
306 set(CPACK_DEBIAN_EBPF-CODE-LEGACY_PACKAGE_SECTION "net")
307 set(CPACK_DEBIAN_EBPF-CODE-LEGACY_PACKAGE_CONFLICTS "netdata (<< 1.40)")
308 set(CPACK_DEBIAN_EBPF-CODE-LEGACY_PACKAGE_PREDEPENDS "netdata-user")
309 set(CPACK_DEBIAN_EBPF-CODE-LEGACY_PACKAGE_RECOMMENDS "netdata-plugin-ebpf (= ${CPACK_PACKAGE_VERSION})")
310
311 set(CPACK_DEBIAN_EBPF-CODE-LEGACY_PACKAGE_CONTROL_EXTRA
312 "${PKG_FILES_PATH}/deb/ebpf-code-legacy/postinst")
313
314 set(CPACK_DEBIAN_EBPF-CODE-LEGACY_DEBUGINFO_PACKAGE Off)
315
316 #
317 # freeipmi.plugin
318 #
319
320 set(CPACK_COMPONENT_PLUGIN-FREEIPMI_DEPENDS "netdata")
321 set(CPACK_COMPONENT_PLUGIN-FREEIPMI_DESCRIPTION
322 "The FreeIPMI metrics collection plugin for the Netdata Agent
323 This plugin allows the Netdata Agent to collect metrics from hardware
324 using FreeIPMI.")
325
326 set(CPACK_DEBIAN_PLUGIN-FREEIPMI_PACKAGE_NAME "netdata-plugin-freeipmi")
327 set(CPACK_DEBIAN_PLUGIN-FREEIPMI_PACKAGE_SECTION "net")
328 set(CPACK_DEBIAN_PLUGIN-FREEIPMI_PACKAGE_PREDEPENDS "netdata-user")
329
330 set(CPACK_DEBIAN_PLUGIN-FREEIPMI_PACKAGE_CONTROL_EXTRA
331 "${PKG_FILES_PATH}/deb/plugin-freeipmi/postinst")
332
333 set(CPACK_DEBIAN_PLUGIN-FREEIPMI_DEBUGINFO_PACKAGE On)
334
335 #
336 # go.plugin
337 #
338
339 set(CPACK_COMPONENT_PLUGIN-GO_DEPENDS "netdata")
340 set(CPACK_COMPONENT_PLUGIN-GO_DESCRIPTION
341 "The go.d metrics collection plugin for the Netdata Agent
342 This plugin adds a selection of additional collectors written in Go to
343 the Netdata Agent. A significant percentage of the application specific
344 collectors provided by Netdata are part of this plugin, so most users
345 will want it installed.")
346
347 set(CPACK_DEBIAN_PLUGIN-GO_PACKAGE_NAME "netdata-plugin-go")
348 set(CPACK_DEBIAN_PLUGIN-GO_PACKAGE_SECTION "net")
349 set(CPACK_DEBIAN_PLUGIN-GO_PACKAGE_CONFLICTS "netdata (<< 1.40)")
350 set(CPACK_DEBIAN_PLUGIN-GO_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
351 set(CPACK_DEBIAN_PLUGIN-GO_PACKAGE_SUGGESTS "nvme-cli")
352
353 set(CPACK_DEBIAN_PLUGIN-GO_PACKAGE_CONTROL_EXTRA
354 "${PKG_FILES_PATH}/deb/plugin-go/postinst")
355
356 set(CPACK_DEBIAN_PLUGIN-GO_DEBUGINFO_PACKAGE Off)
357
358 #
359 # scripts.d.plugin
360 #
361
362 set(CPACK_COMPONENT_PLUGIN-SCRIPTS_DEPENDS "netdata")
363 set(CPACK_COMPONENT_PLUGIN-SCRIPTS_DESCRIPTION
364 "The scripts metrics collection plugin for the Netdata Agent
365 This plugin allows the Netdata Agent to collect metrics using scripts
366 that provide data in an extended version of the output format used by
367 Nagios plugins. This provides compatibility with most Nagios plugins,
368 as well as enabling simple active checks.")
369
370 set(CPACK_DEBIAN_PLUGIN-SCRIPTS_PACKAGE_NAME "netdata-plugin-scripts")
371 set(CPACK_DEBIAN_PLUGIN-SCRIPTS_PACKAGE_SECTION "net")
372 set(CPACK_DEBIAN_PLUGIN-SCRIPTS_PACKAGE_CONFLICTS "netdata (<< 2.8)")
373 set(CPACK_DEBIAN_PLUGIN-SCRIPTS_PACKAGE_PREDEPENDS "netdata-user")
374
375 set(CPACK_DEBIAN_PLUGIN-SCRIPTS_PACKAGE_CONTROL_EXTRA
376 "${PKG_FILES_PATH}/deb/plugin-scripts/postinst")
377
378 set(CPACK_DEBIAN_PLUGIN-SCRIPTS_DEBUGINFO_PACKAGE Off)
379
380 #
381 # ibm.plugin
382 #
383
384 set(CPACK_COMPONENT_PLUGIN-IBM_DEPENDS "netdata")
385 set(CPACK_COMPONENT_PLUGIN-IBM_DESCRIPTION
386 "The IBM ecosystem metrics collection plugin for the Netdata Agent
387 This plugin allows the Netdata Agent to collect metrics from IBM
388 systems including AS/400 (IBM i), DB2 databases, MQ queues, and WebSphere
389 application servers. Database collectors use unixODBC and require appropriate
390 ODBC drivers.")
391
392 set(CPACK_DEBIAN_PLUGIN-IBM_PACKAGE_NAME "netdata-plugin-ibm")
393 set(CPACK_DEBIAN_PLUGIN-IBM_PACKAGE_SECTION "net")
394 set(CPACK_DEBIAN_PLUGIN-IBM_PACKAGE_CONFLICTS "netdata (<< 1.40)")
395 set(CPACK_DEBIAN_PLUGIN-IBM_PACKAGE_PREDEPENDS "netdata-user")
396 set(CPACK_DEBIAN_PLUGIN-IBM_PACKAGE_DEPENDS "unixodbc, netdata-plugin-ibm-libs (= ${CPACK_PACKAGE_VERSION})")
397 set(CPACK_DEBIAN_PLUGIN-IBM_PACKAGE_SUGGESTS "libxml2")
398
399 set(CPACK_DEBIAN_PLUGIN-IBM_PACKAGE_CONTROL_EXTRA
400 "${PKG_FILES_PATH}/deb/plugin-ibm/postinst")
401
402 set(CPACK_DEBIAN_PLUGIN-IBM_DEBUGINFO_PACKAGE Off)
403
404 set(CPACK_DEBIAN_PLUGIN-IBM-LIBS_DESCRIPTION
405 "IBM MQ client libraries for the Netdata IBM ecosystem metrics collection plugin.
406 This package provides the IBM MQ client libraries needed by Netdata IBM
407 ecosystem metrics collection plugin.")
408
409 set(CPACK_DEBIAN_PLUGIN-IBM-LIBS_PACKAGE_NAME "netdata-plugin-ibm-libs")
410 set(CPACK_DEBIAN_PLUGIN-IBM-LIBS_PACKAGE_SECTION "net")
411 set(CPACK_DEBIAN_PLUGIN-IBM-LIBS_PACKAGE_CONFLICTS "netdata (<< 1.40)")
412 set(CPACK_DEBIAN_PLUGIN-IBM-LIBS_PACKAGE_PREDEPENDS "netdata-user")
413
414 set(CPACK_DEBIAN_PLUGIN-IBM-LIBS_DEBUGINFO_PACKAGE Off)
415 set(CPACK_DEBIAN_PLUGIN-IBM-LIBS_PACKAGE_SHLIBDEPS Off)
416
417 #
418 # network-viewer.plugin
419 #
420
421 set(CPACK_COMPONENT_PLUGIN-NETWORK-VIEWER_DEPENDS "netdata")
422 set(CPACK_COMPONENT_PLUGIN-NETWORK-VIEWER_DESCRIPTION
423 "The network viewer plugin for the Netdata Agent
424 This plugin allows the Netdata Agent to provide network connection
425 mapping functionality for use in Netdata Cloud.")
426
427 set(CPACK_DEBIAN_PLUGIN-NETWORK_VIEWER_PACKAGE_NAME "netdata-plugin-network-viewer")
428 set(CPACK_DEBIAN_PLUGIN-NETWORK-VIEWER_PACKAGE_SECTION "net")
429 set(CPACK_DEBIAN_PLUGIN-NETWORK-VIEWER_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
430 set(CPACK_DEBIAN_PLUGIN-NETWORK-VIEWER_PACKAGE_RECOMMENDS "netdata-plugin-ebpf (= ${CPACK_PACKAGE_VERSION})")
431
432 set(CPACK_DEBIAN_PLUGIN-NETWORK-VIEWER_PACKAGE_CONTROL_EXTRA
433 "${PKG_FILES_PATH}/deb/plugin-network-viewer/postinst")
434
435 set(CPACK_DEBIAN_PLUGIN-NETWORK-VIEWER_DEBUGINFO_PACKAGE On)
436
437 #
438 # otel.plugin
439 #
440
441 set(CPACK_COMPONENT_PLUGIN-OTEL_DEPENDS "netdata")
442 set(CPACK_COMPONENT_PLUGIN-OTEL_DESCRIPTION
443 "The OpenTelemetry collection plugin for the Netdata Agent
444 This plugin allows the Netdata Agent to collect metrics and logs via
445 OpenTelemetry gRPC protocol, providing integration with modern observability
446 stacks.")
447
448 set(CPACK_DEBIAN_PLUGIN-OTEL_PACKAGE_NAME "netdata-plugin-otel")
449 set(CPACK_DEBIAN_PLUGIN-OTEL_PACKAGE_SECTION "net")
450 set(CPACK_DEBIAN_PLUGIN-OTEL_PACKAGE_DEPENDS "netdata-plugin-otel-signal-viewer (= ${CPACK_PACKAGE_VERSION})")
451 set(CPACK_DEBIAN_PLUGIN-OTEL_PACKAGE_CONFLICTS "netdata (<< 1.40)")
452 set(CPACK_DEBIAN_PLUGIN-OTEL_PACKAGE_PREDEPENDS "netdata-user")
453
454 set(CPACK_DEBIAN_PLUGIN-OTEL_PACKAGE_CONTROL_EXTRA
455 "${PKG_FILES_PATH}/deb/plugin-otel/postinst")
456
457 set(CPACK_DEBIAN_PLUGIN-OTEL_DEBUGINFO_PACKAGE Off)
458
459 #
460 # otel-signal-viewer
461 #
462
463 set(CPACK_COMPONENT_PLUGIN-OTEL-SIGNAL-VIEWER_DEPENDS "netdata")
464 set(CPACK_COMPONENT_PLUGIN-OTEL-SIGNAL-VIEWER_DESCRIPTION
465 "The OTel signal viewer plugin for the Netdata Agent
466 This plugin provides OTel signal viewing and querying functionality
467 with histogram analysis and faceted search capabilities.")
468
469 set(CPACK_DEBIAN_PLUGIN-OTEL-SIGNAL-VIEWER_PACKAGE_NAME "netdata-plugin-otel-signal-viewer")
470 set(CPACK_DEBIAN_PLUGIN-OTEL-SIGNAL-VIEWER_PACKAGE_SECTION "net")
471 set(CPACK_DEBIAN_PLUGIN-OTEL-SIGNAL-VIEWER_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
472
473 set(CPACK_DEBIAN_PLUGIN-OTEL-SIGNAL-VIEWER_PACKAGE_CONTROL_EXTRA
474 "${PKG_FILES_PATH}/deb/plugin-otel-signal-viewer/postinst")
475
476 set(CPACK_DEBIAN_PLUGIN-OTEL-SIGNAL-VIEWER_DEBUGINFO_PACKAGE Off)
477
478 #
479 # netflow.plugin
480 #
481
482 set(CPACK_COMPONENT_PLUGIN-NETFLOW_DEPENDS "netdata")
483 set(CPACK_COMPONENT_PLUGIN-NETFLOW_DESCRIPTION
484 "The NetFlow/IPFIX/sFlow flow analysis plugin for the Netdata Agent
485 This plugin ingests, stores, and serves NetFlow/IPFIX/sFlow flow data for
486 traffic analysis functions.")
487
488 set(CPACK_DEBIAN_PLUGIN-NETFLOW_PACKAGE_NAME "netdata-plugin-netflow")
489 set(CPACK_DEBIAN_PLUGIN-NETFLOW_PACKAGE_SECTION "net")
490 set(CPACK_DEBIAN_PLUGIN-NETFLOW_PACKAGE_PREDEPENDS "netdata-user")
491
492 set(CPACK_DEBIAN_PLUGIN-NETFLOW_PACKAGE_CONTROL_EXTRA
493 "${PKG_FILES_PATH}/deb/plugin-netflow/postinst")
494
495 set(CPACK_DEBIAN_PLUGIN-NETFLOW_DEBUGINFO_PACKAGE Off)
496
497 #
498 # nfacct.plugin
499 #
500
501 set(CPACK_COMPONENT_PLUGIN-NFACCT_DEPENDS "netdata")
502 set(CPACK_COMPONENT_PLUGIN-NFACCT_DESCRIPTION
503 "The NFACCT metrics collection plugin for the Netdata Agent
504 This plugin allows the Netdata Agent to collect metrics from the firewall
505 using NFACCT objects.")
506
507 set(CPACK_DEBIAN_PLUGIN-NFACCT_PACKAGE_NAME "netdata-plugin-nfacct")
508 set(CPACK_DEBIAN_PLUGIN-NFACCT_PACKAGE_SECTION "net")
509 set(CPACK_DEBIAN_PLUGIN-NFACCT_PACKAGE_CONFLICTS "netdata (<< 1.40)")
510 set(CPACK_DEBIAN_PLUGIN-NFACCT_PACKAGE_PREDEPENDS "netdata-user")
511
512 set(CPACK_DEBIAN_PLUGIN-NFACCT_PACKAGE_CONTROL_EXTRA
513 "${PKG_FILES_PATH}/deb/plugin-nfacct/postinst")
514
515 set(CPACK_DEBIAN_PLUGIN-NFACCT_DEBUGINFO_PACKAGE On)
516
517 #
518 # perf.plugin
519 #
520
521 set(CPACK_COMPONENT_PLUGIN-PERF_DEPENDS "netdata")
522 set(CPACK_COMPONENT_PLUGIN-PERF_DESCRIPTION
523 "The perf metrics collector for the Netdata Agent
524 This plugin allows the Netdata to collect metrics from the Linux perf
525 subsystem.")
526
527 set(CPACK_DEBIAN_PLUGIN-PERF_PACKAGE_NAME "netdata-plugin-perf")
528 set(CPACK_DEBIAN_PLUGIN-PERF_PACKAGE_SECTION "net")
529 set(CPACK_DEBIAN_PLUGIN-PERF_PACKAGE_CONFLICTS "netdata (<< 1.40)")
530 set(CPACK_DEBIAN_PLUGIN-PERF_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
531
532 set(CPACK_DEBIAN_PLUGIN-PERF_PACKAGE_CONTROL_EXTRA
533 "${PKG_FILES_PATH}/deb/plugin-perf/postinst")
534
535 set(CPACK_DEBIAN_PLUGIN-PERF_DEBUGINFO_PACKAGE On)
536
537 #
538 # pythond.plugin
539 #
540
541 set(CPACK_COMPONENT_PLUGIN-PYTHOND_DEPENDS "netdata")
542 set(CPACK_COMPONENT_PLUGIN-PYTHOND_DESCRIPTION
543 "The python.d metrics collection plugin for the Netdata Agent
544 Many of the collectors provided by this package are also available
545 in netdata-plugin-god. In msot cases, you probably want to use those
546 versions instead of the Python versions.")
547
548 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACKAGE_NAME "netdata-plugin-pythond")
549 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACKAGE_SECTION "net")
550 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACKAGE_CONFLICTS "netdata (<< 1.40)")
551 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACKAGE_PREDEPENDS "netdata-user")
552 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACKAGE_SUGGESTS "sudo")
553 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACHAGE_DEPENDS "python3")
554 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACKAGE_ARCHITECTURE "all")
555
556 set(CPACK_DEBIAN_PLUGIN-PYTHOND_PACKAGE_CONTROL_EXTRA
557 "${PKG_FILES_PATH}/deb/plugin-pythond/postinst")
558
559 set(CPACK_DEBIAN_PLUGIN-PYTHOND_DEBUGINFO_PACKAGE Off)
560
561 #
562 # slabinfo.plugin
563 #
564
565 set(CPACK_COMPONENT_PLUGIN-SLABINFO_DEPENDS "netdata")
566 set(CPACK_COMPONENT_PLUGIN-SLABINFO_DESCRIPTION
567 "The slabinfo metrics collector for the Netdata Agent
568 This plugin allows the Netdata Agent to collect perfromance and
569 utilization metrics for the Linux kernel’s SLAB allocator.")
570
571 set(CPACK_DEBIAN_PLUGIN-SLABINFO_PACKAGE_NAME "netdata-plugin-slabinfo")
572 set(CPACK_DEBIAN_PLUGIN-SLABINFO_PACKAGE_SECTION "net")
573 set(CPACK_DEBIAN_PLUGIN-SLABINFO_PACKAGE_CONFLICTS "netdata (<< 1.40)")
574 set(CPACK_DEBIAN_PLUGIN-SLABINFO_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
575
576 set(CPACK_DEBIAN_PLUGIN-SLABINFO_PACKAGE_CONTROL_EXTRA
577 "${PKG_FILES_PATH}/deb/plugin-slabinfo/postinst")
578
579 set(CPACK_DEBIAN_PLUGIN-SLABINFO-DEBUGINFO_PACKAGE On)
580
581 #
582 # systemd-journal.plugin
583 #
584
585 set(CPACK_COMPONENT_PLUGIN-SYSTEMD-JOURNAL_DEPENDS "netdata")
586 set(CPACK_COMPONENT_PLUGIN-SYSTEMD-JOURNAL_DESCRIPTION
587 "The systemd-journal collector for the Netdata Agent
588 This plugin allows the Netdata Agent to present logs from the systemd
589 journal on Netdata Cloud or the local Agent dashboard.")
590
591 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-JOURNAL_PACKAGE_NAME "netdata-plugin-systemd-journal")
592 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-JOURNAL_PACKAGE_SECTION "net")
593 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-JOURNAL_PACKAGE_PREDEPENDS "libcap2-bin, adduser")
594
595 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-JOURNAL_PACKAGE_CONTROL_EXTRA
596 "${PKG_FILES_PATH}/deb/plugin-systemd-journal/postinst")
597
598 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-JOURNAL_DEBUGINFO_PACKAGE On)
599
600 set(CPACK_COMPONENT_PLUGIN-JOURNAL-VIEWER_DESCRIPTION
601 "Transitional dummy package.
602 This package simply ensures a clean upgrade to the renamed
603 netdata-plugin-systemd-journal package. Once that package is installed,
604 you can safely remove this one.")
605
606 set(CPACK_DEBIAN_PLUGIN-JOURNAL-VIEWER_PACKAGE_NAME "netdata-plugin-journal-viewer")
607 set(CPACK_DEBIAN_PLUGIN-JOURNAL-VIEWER_PACKAGE_SECTION "net")
608 set(CPACK_DEBIAN_PLUGIN-JOURNAL-VIEWER_DEPENDS "netdata-plugin-systemd-journal (= ${CPACK_PACKAGE_VERSION})")
609
610 #
611 # systemd-units.plugin
612 #
613
614 set(CPACK_COMPONENT_PLUGIN-SYSTEMD-UNITS_DEPENDS "netdata")
615 set(CPACK_COMPONENT_PLUGIN-SYSTEMD-UNITS_DESCRIPTION
616 "The systemd-units collector for the Netdata Agent
617 This plugin allows the Netdata Agent to collect metrics about systmed units.")
618
619 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-UNITS_PACKAGE_NAME "netdata-plugin-systemd-units")
620 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-UNITS_PACKAGE_SECTION "net")
621 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-UNITS_PACKAGE_PREDEPENDS "netdata-user")
622
623 set(CPACK_DEBIAN_PLUGIN-SYSTEMD-UNITS_PACKAGE_CONTROL_EXTRA
624 "${PKG_FILES_PATH}/deb/plugin-systemd-units/postinst")
625
626 set(CPACK_DEBIAN_PLUGIN-SYSTEMD_UNITS_DEBUGINFO_PACKAGE On)
627
628 #
629 # xenstat.plugin
630 #
631
632 set(CPACK_COMPONENT_PLUGIN-XENSTAT_DEPENDS "netdata")
633 set(CPACK_COMPONENT_PLUGIN-XENSTAT_DESCRIPTION
634 "The xenstat plugin for the Netdata Agent
635 This plugin allows the Netdata Agent to collect metrics from the Xen
636 Hypervisor.")
637
638 set(CPACK_DEBIAN_PLUGIN-XENSTAT_PACKAGE_NAME "netdata-plugin-xenstat")
639 set(CPACK_DEBIAN_PLUGIN-XENSTAT_PACKAGE_SECTION "net")
640 set(CPACK_DEBIAN_PLUGIN-XENSTAT_PACKAGE_CONFLICTS "netdata (<< 1.40)")
641 set(CPACK_DEBIAN_PLUGIN-XENSTAT_PACKAGE_PREDEPENDS "netdata-user")
642
643 set(CPACK_DEBIAN_PLUGIN-XENSTAT_PACKAGE_CONTROL_EXTRA
644 "${PKG_FILES_PATH}/deb/plugin-xenstat/postinst")
645
646 set(CPACK_DEBIAN_PLUGIN-XENSTAT_DEBUGINFO_PACKAGE On)
647
648 #
649 # CPack components
650 #
651
652 list(APPEND CPACK_COMPONENTS_ALL "netdata")
653 list(APPEND CPACK_COMPONENTS_ALL "user")
654 if(ENABLE_DASHBOARD)
655 list(APPEND CPACK_COMPONENTS_ALL "dashboard")
656 endif()
657 if(ENABLE_PLUGIN_APPS)
658 list(APPEND CPACK_COMPONENTS_ALL "plugin-apps")
659 endif()
660 if(ENABLE_PLUGIN_CHARTS)
661 list(APPEND CPACK_COMPONENTS_ALL "plugin-chartsd")
662 endif()
663 if(ENABLE_PLUGIN_CUPS)
664 list(APPEND CPACK_COMPONENTS_ALL "plugin-cups")
665 endif()
666 if(ENABLE_PLUGIN_DEBUGFS)
667 list(APPEND CPACK_COMPONENTS_ALL "plugin-debugfs")
668 endif()
669 if(ENABLE_PLUGIN_EBPF)
670 list(APPEND CPACK_COMPONENTS_ALL "plugin-ebpf")
671 endif()
672 if(ENABLE_EBPF_LEGACY_PROGRAMS)
673 list(APPEND CPACK_COMPONENTS_ALL "ebpf-code-legacy")
674 endif()
675 if(ENABLE_PLUGIN_FREEIPMI)
676 list(APPEND CPACK_COMPONENTS_ALL "plugin-freeipmi")
677 endif()
678 if(ENABLE_PLUGIN_GO)
679 list(APPEND CPACK_COMPONENTS_ALL "plugin-go")
680 endif()
681 if(ENABLE_PLUGIN_IBM)
682 list(APPEND CPACK_COMPONENTS_ALL "plugin-ibm")
683 list(APPEND CPACK_COMPONENTS_ALL "plugin-ibm-libs")
684 endif()
685 if(ENABLE_PLUGIN_SCRIPTS)
686 list(APPEND CPACK_COMPONENTS_ALL "plugin-scripts")
687 endif()
688 if(ENABLE_PLUGIN_NETWORK_VIEWER)
689 list(APPEND CPACK_COMPONENTS_ALL "plugin-network-viewer")
690 endif()
691 if(ENABLE_PLUGIN_NFACCT)
692 list(APPEND CPACK_COMPONENTS_ALL "plugin-nfacct")
693 endif()
694 if(ENABLE_PLUGIN_NETFLOW)
695 list(APPEND CPACK_COMPONENTS_ALL "plugin-netflow")
696 endif()
697 if(ENABLE_PLUGIN_PERF)
698 list(APPEND CPACK_COMPONENTS_ALL "plugin-perf")
699 endif()
700 if(ENABLE_PLUGIN_PYTHON)
701 list(APPEND CPACK_COMPONENTS_ALL "plugin-pythond")
702 endif()
703 if(ENABLE_PLUGIN_SLABINFO)
704 list(APPEND CPACK_COMPONENTS_ALL "plugin-slabinfo")
705 endif()
706 if(ENABLE_PLUGIN_SYSTEMD_JOURNAL)
707 list(APPEND CPACK_COMPONENTS_ALL "plugin-journal-viewer")
708 list(APPEND CPACK_COMPONENTS_ALL "plugin-systemd-journal")
709 endif()
710 if(ENABLE_PLUGIN_SYSTEMD_UNITS)
711 list(APPEND CPACK_COMPONENTS_ALL "plugin-systemd-units")
712 endif()
713 if(ENABLE_PLUGIN_XENSTAT)
714 list(APPEND CPACK_COMPONENTS_ALL "plugin-xenstat")
715 endif()
716 if(ENABLE_PLUGIN_OTEL)
717 list(APPEND CPACK_COMPONENTS_ALL "plugin-otel")
718 endif()
719 if(ENABLE_PLUGIN_OTEL_SIGNAL_VIEWER)
720 list(APPEND CPACK_COMPONENTS_ALL "plugin-otel-signal-viewer")
721 endif()
722
723 include(CPack)