Debian/Ubuntu packages for NetXMS
Find a file
Alex Kirhenshtein 11a6c7ec22
Relese 5.1.3
TAG: release-5.1.3
2025-01-09 23:21:24 +02:00
config XMPP disabled on Ubuntu 20 and older 2024-11-04 19:02:59 +02:00
patches Temporary patch removed 2021-05-10 14:53:47 +03:00
source Initial import 2016-09-27 16:43:45 +03:00
.gitignore .gitighore updated, minor visual tweak in control.m4 2018-12-23 00:31:02 +02:00
changelog Relese 5.1.3 2025-01-09 23:21:24 +02:00
compat Compatibility level changed to 10 2021-02-24 10:05:37 +02:00
control.m4 XMPP disabled on Ubuntu 20 and older 2024-11-04 19:02:59 +02:00
copyright Initial import 2016-09-27 16:43:45 +03:00
docs Initial import 2016-09-27 16:43:45 +03:00
Makefile Cosmetic changees 2023-12-05 17:31:58 +02:00
netxms-agent-asterisk.install New subagent: netxms-agent-asterisk 2018-12-22 00:41:24 +02:00
netxms-agent-java.install Bind9 subagent reimplemented in c++ 2021-07-26 19:07:35 +03:00
netxms-agent-mqtt.install netxms-agent-mqtt added 2018-12-23 00:06:05 +02:00
netxms-agent-mysql.install netxms-agent-mysql added 2018-03-05 15:36:22 +02:00
netxms-agent-oracle.install netxms-agent-pgsql and netxms-agent-oracle added 2020-07-31 17:44:27 +03:00
netxms-agent-pgsql.install netxms-agent-pgsql and netxms-agent-oracle added 2020-07-31 17:44:27 +03:00
netxms-agent-vmgr.install Missing files added 2016-10-27 18:20:21 +03:00
netxms-agent-xen.install netxms-agent-xen added 2018-12-23 00:03:01 +02:00
netxms-agent.install nxtftp added to netxms-agent 2023-01-24 11:54:41 +02:00
netxms-agent.manpages Initial version of man pages aded to packages 2019-01-21 19:56:50 +02:00
netxms-agent.postinst Initial import 2016-09-27 16:43:45 +03:00
netxms-agent.postrm Initial import 2016-09-27 16:43:45 +03:00
netxms-agent.service Restart in systemd units changed to "always" 2022-11-09 16:35:04 +02:00
netxms-base.dirs Initial import 2016-09-27 16:43:45 +03:00
netxms-base.install release 5.0.3 2024-05-15 18:29:57 +03:00
netxms-base.postrm Initial import 2016-09-27 16:43:45 +03:00
netxms-client.install Jar versions updated 2024-08-13 19:37:53 +03:00
netxms-dbdrv-mariadb.install netxms-dbdrv-mariadb added 2018-07-14 22:15:32 +03:00
netxms-dbdrv-mysql.install Initial import 2016-09-27 16:43:45 +03:00
netxms-dbdrv-odbc.install Initial import 2016-09-27 16:43:45 +03:00
netxms-dbdrv-oracle.install Initial import 2016-09-27 16:43:45 +03:00
netxms-dbdrv-pgsql.install Initial import 2016-09-27 16:43:45 +03:00
netxms-dbdrv-sqlite3.install Initial import 2016-09-27 16:43:45 +03:00
netxms-java-base.install Unused jars removed from netxms-reporting.install 2023-12-06 00:45:40 +02:00
netxms-reporting.install Version 5.0.7 released 2024-08-16 16:50:04 +03:00
netxms-reporting.service Restart in systemd units changed to "always" 2022-11-09 16:35:04 +02:00
netxms-server.install libstrophe switched to external libstrophe-dev 2024-11-04 12:53:43 +02:00
netxms-server.manpages Initial version of man pages aded to packages 2019-01-21 19:56:50 +02:00
netxms-server.postinst fixed MIB compiler call in postinstall hook 2024-05-03 15:30:09 +03:00
netxms-server.postrm Initial import 2016-09-27 16:43:45 +03:00
netxms-server.service Restart in systemd units changed to "always" 2022-11-09 16:35:04 +02:00
pyproject.toml pip changed to uv 2025-01-09 23:21:10 +02:00
README.md README updated 2023-12-05 17:19:06 +02:00
rules.m4 Makefile indent fixed 2024-12-08 22:51:42 +02:00
update_changelog.py change log for version 4.5.1; improved changelog update script 2024-01-30 10:18:19 +02:00
uv.lock pip changed to uv 2025-01-09 23:21:10 +02:00

Debian/Ubuntu packaging scripts for NetXMS

This repository contains scripts for creating deb packages (netxms-server/netxms-agent).

These scripts are used to build official packages which are available on http://packages.netxms.org/.

Publicly available packages are built for all LTS releases. Currently it's:

  • Debian 10 "buster" (i386 / amd64)
  • Debian 11 "bullseye" (i386 / amd64 / aarch64)
  • Debian 12 "bookworm" (i386 / amd64 / aarch64)
  • Ubuntu 20.04 LTS "Focal Fossa" (i386 / amd64)
  • Ubuntu 22.04 LTS "Jammy Jellyfish" (i386 / amd64)
  • Raspbian 10 "Buster" (armv7l)

Branches

Branches follow branching layout in netxms/netxms.git:

  • stable-4.4 - 4.4.x release
  • stable-4.3 - 4.3.x release

How to use

Note: commit message for official releases contains both version (e.g. "Version 3.9.235") and git commit hash of the specific release in netxms/netxms ("TAG: 106072975a").

Prerequisites

  • Custom jemalloc package should be built from netxms/jemalloc-deb and installed into the system or added to pbuilder chroot.
  • NetXMS fork of libmodbus should be built from netxms/libmodbus and installed into the system or added to pbuilder chroot.
  • For Ubuntu 20+, libexosip2-dev deb should be built and installed into the system or added to pbuilder chroot.
  • Latest Oracle instant client should be unpacked to /opt/instantclient_12_2 (both instantclient-basiclite-linux.x64-.zip and instantclient-sdk-linux.x64-.zip). Correct symlinks for libclntsh.so should be created there, if missing (details in Oracle KB).

Build

mkdir -p netxms-build && cd netxms-build

# install tools and dependencies
sudo apt update && sudo apt install devscripts equivs autoconf libtool flex bison

git clone https://github.com/netxms/netxms.git
cd netxms
git checkout release-4.4.4 # change release-4.4.4 to target revision
./build/prepare_release_build.sh
./reconf
./configure --with-dist
make dist
VERSION=$(grep PACKAGE_VERSION config.h | cut -d\" -f2)
cd ..

ln -s netxms/netxms-$VERSION.tar.gz netxms_$VERSION.orig.tar.gz
tar zxf netxms/netxms-$VERSION.tar.gz
cd netxms-$VERSION

git clone https://github.com/netxms/packages-deb debian
cd debian

# disable Oracle driver, if not required:
# mkdir -p config/$(lsb_release -sc)/
# echo "define(\`CONFIGURE_ORACLE', \`')dnl" > config/$(lsb_release -sc)/oracle.m4

make DIST=$(lsb_release -sc) # make debian/rules and debian/control for particular Debian/Ubuntu release
cd ..
# install build dependencies
sudo mk-build-deps -i
rm netxms-build-deps_*_all.deb # clean build tree or dpkg-buildpackage will fail

dpkg-buildpackage --no-sign

sudo apt-get purge --auto-remove netxms-build-deps # optional step, will cleanup packages installed by mk-build-deps

Build options

Two options can be set as parameters for make when configuring package:

  • DIST - distro name
  • PROFILE - optional profile for selected distro

Default configurtion is stored in config/default/ (_all.m4 is an entry point).

Distro-specific configuration is in config/$DIST (e.g. config/stretch).

Profile-specific configuration is in config/$DIST-$PROFILE (e.g. config/stretch-raspbian).

Load order is (each file is included from _all.m4):

  1. config/$DIST-$PROFILE/file.m4 (if exist)
  2. config/$DIST/file.m4 (if exist)
  3. config/default/file.m4