summaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/rules')
-rw-r--r--debian/rules143
1 files changed, 143 insertions, 0 deletions
diff --git a/debian/rules b/debian/rules
new file mode 100644
index 0000000..df1d9e7
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,143 @@
+#!/usr/bin/make -f
+
+DIR := debian/tmp
+VYOS_SBIN_DIR := usr/sbin
+VYOS_BIN_DIR := usr/bin
+VYOS_LIBEXEC_DIR := usr/libexec/vyos
+VYOS_DATA_DIR := usr/share/vyos
+VYOS_CFG_TMPL_DIR := opt/vyatta/share/vyatta-cfg/templates
+VYOS_OP_TMPL_DIR := opt/vyatta/share/vyatta-op/templates
+VYOS_MIBS_DIR := usr/share/snmp/mibs
+VYOS_LOCALUI_DIR := srv/localui
+
+MIGRATION_SCRIPTS_DIR := opt/vyatta/etc/config-migrate/migrate
+ACTIVATION_SCRIPTS_DIR := usr/libexec/vyos/activate
+SYSTEM_SCRIPTS_DIR := usr/libexec/vyos/system
+SERVICES_DIR := usr/libexec/vyos/services
+
+DEB_TARGET_ARCH := $(shell dpkg-architecture -qDEB_TARGET_ARCH)
+
+%:
+ dh $@ --with python3, --with quilt
+
+# Skip dh_strip_nondeterminism - this is very time consuming
+# and we have no non deterministic output (yet)
+override_dh_strip_nondeterminism:
+
+override_dh_gencontrol:
+ dh_gencontrol -- -v$(shell (git describe --tags --long --match 'vyos/*' --match '1.4.*' --dirty 2>/dev/null || echo 0.0-no.git.tag) | sed -E 's%vyos/%%' | sed -E 's%-dirty%+dirty%')
+
+override_dh_auto_build:
+ make all
+
+override_dh_auto_install:
+ dh_auto_install
+
+ cd python; python3 setup.py install --install-layout=deb --root ../$(DIR); cd ..
+
+ # Install scripts
+ mkdir -p $(DIR)/$(VYOS_SBIN_DIR)
+ mkdir -p $(DIR)/$(VYOS_BIN_DIR)
+ cp -r src/utils/* $(DIR)/$(VYOS_BIN_DIR)
+ cp src/shim/vyshim $(DIR)/$(VYOS_SBIN_DIR)
+
+ # Install conf mode scripts
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/conf_mode
+ cp -r src/conf_mode/* $(DIR)/$(VYOS_LIBEXEC_DIR)/conf_mode
+
+ # Install op mode scripts
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/op_mode
+ cp -r src/op_mode/* $(DIR)/$(VYOS_LIBEXEC_DIR)/op_mode
+
+ # Install op mode scripts
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/init
+ cp -r src/init/* $(DIR)/$(VYOS_LIBEXEC_DIR)/init
+
+ # Install validators
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/validators
+ cp -r src/validators/* $(DIR)/$(VYOS_LIBEXEC_DIR)/validators
+
+ # Install completion helpers
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/completion
+ cp -r src/completion/* $(DIR)/$(VYOS_LIBEXEC_DIR)/completion
+
+ # Install helper scripts
+ cp -r src/helpers/* $(DIR)/$(VYOS_LIBEXEC_DIR)/
+
+ # Install migration scripts
+ mkdir -p $(DIR)/$(MIGRATION_SCRIPTS_DIR)
+ cp -r src/migration-scripts/* $(DIR)/$(MIGRATION_SCRIPTS_DIR)
+
+ # Install activation scripts
+ mkdir -p $(DIR)/$(ACTIVATION_SCRIPTS_DIR)
+ cp -r src/activation-scripts/* $(DIR)/$(ACTIVATION_SCRIPTS_DIR)
+
+ # Install system scripts
+ mkdir -p $(DIR)/$(SYSTEM_SCRIPTS_DIR)
+ cp -r src/system/* $(DIR)/$(SYSTEM_SCRIPTS_DIR)
+
+ # Install system services
+ mkdir -p $(DIR)/$(SERVICES_DIR)
+ cp -r src/services/* $(DIR)/$(SERVICES_DIR)
+
+ # Install configuration command definitions
+ mkdir -p $(DIR)/$(VYOS_CFG_TMPL_DIR)
+ cp -r templates-cfg/* $(DIR)/$(VYOS_CFG_TMPL_DIR)
+
+ # Install operational command definitions
+ mkdir -p $(DIR)/$(VYOS_OP_TMPL_DIR)
+ cp -r templates-op/* $(DIR)/$(VYOS_OP_TMPL_DIR)
+
+ # Install data files
+ mkdir -p $(DIR)/$(VYOS_DATA_DIR)
+ cp -r data/* $(DIR)/$(VYOS_DATA_DIR)
+
+ # Create localui dir
+ mkdir -p $(DIR)/$(VYOS_LOCALUI_DIR)
+
+ # Install SNMP MIBs
+ mkdir -p $(DIR)/$(VYOS_MIBS_DIR)
+ cp -d mibs/* $(DIR)/$(VYOS_MIBS_DIR)
+
+ # Install etc configuration files
+ mkdir -p $(DIR)/etc
+ cp -r src/etc/* $(DIR)/etc
+
+ # Install legacy Vyatta files
+ mkdir -p $(DIR)/opt
+ cp -r src/opt/* $(DIR)/opt
+
+ # Install PAM configuration snippets
+ mkdir -p $(DIR)/usr/share/pam-configs
+ cp -r src/pam-configs/* $(DIR)/usr/share/pam-configs
+
+ # Install systemd service units
+ mkdir -p $(DIR)/lib/systemd/system
+ cp -r src/systemd/* $(DIR)/lib/systemd/system
+
+ # Make directory for generated configuration file
+ mkdir -p $(DIR)/etc/vyos
+
+ # Install smoke test scripts
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/tests/smoke/
+ cp -r smoketest/scripts/* $(DIR)/$(VYOS_LIBEXEC_DIR)/tests/smoke
+
+ # Install smoke test configs
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/tests/config/
+ cp -r smoketest/configs/* $(DIR)/$(VYOS_LIBEXEC_DIR)/tests/config
+
+ # Install smoke test config tests
+ mkdir -p $(DIR)/$(VYOS_LIBEXEC_DIR)/tests/config-tests/
+ cp -r smoketest/config-tests/* $(DIR)/$(VYOS_LIBEXEC_DIR)/tests/config-tests
+
+ # Install system programs
+ mkdir -p $(DIR)/$(VYOS_BIN_DIR)
+ cp -r smoketest/bin/* $(DIR)/$(VYOS_BIN_DIR)
+
+ # Install udev script
+ mkdir -p $(DIR)/usr/lib/udev
+ cp src/helpers/vyos_net_name $(DIR)/usr/lib/udev
+
+override_dh_installsystemd:
+ dh_installsystemd -pvyos-1x --name vyos-router vyos-router.service
+ dh_installsystemd -pvyos-1x --name vyos vyos.target