summaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
authorAndre Puschmann <andre@softwareradiosystems.com>2019-01-21 13:29:37 +0100
committerAndre Puschmann <andre@softwareradiosystems.com>2019-01-22 12:09:52 +0100
commit4b2117615d800db2fc06178bca2f055da76fe3a3 (patch)
treeaa39e178f69f4d8db6d73acca61475baea89e26e /debian
parentf64230a209bd1ad173de08b7f33367a20f518012 (diff)
update Debian packaging scripts
This commit extends and reorganizes the Debian packaging script according to suggestions made by Ruben Undheim <ruben.undheim@gmail.com>.
Diffstat (limited to 'debian')
-rw-r--r--debian/control92
-rwxr-xr-xdebian/man/genmanpages.sh5
-rw-r--r--debian/man/srsenb.txt26
-rw-r--r--debian/man/srsepc.txt21
-rw-r--r--debian/man/srsue.txt26
-rwxr-xr-xdebian/rules11
-rw-r--r--debian/srsenb.install2
-rw-r--r--debian/srsenb.manpages1
-rw-r--r--debian/srsenb.service11
-rw-r--r--debian/srsepc.install4
-rw-r--r--debian/srsepc.manpages1
-rw-r--r--debian/srsepc.service11
-rwxr-xr-xdebian/srslte-core.config (renamed from debian/config)0
-rw-r--r--debian/srslte-core.install3
-rwxr-xr-xdebian/srslte-core.postinst (renamed from debian/postinst)2
-rw-r--r--debian/srslte-core.templates (renamed from debian/templates)2
-rw-r--r--debian/srslte-dev.install2
-rw-r--r--debian/srsue.install2
-rw-r--r--debian/srsue.manpages1
-rw-r--r--debian/srsue.service11
20 files changed, 220 insertions, 14 deletions
diff --git a/debian/control b/debian/control
index e69e54d61..1a49ebd4d 100644
--- a/debian/control
+++ b/debian/control
@@ -13,23 +13,91 @@ Build-Depends:
libconfig++-dev,
libsctp-dev,
libuhd-dev,
- uhd-host
-Standards-Version: 4.1.1
+ uhd-host,
+ txt2man
+Standards-Version: 4.2.1
Homepage: http://www.softwareradiosystems.com
Vcs-Git: https://github.com/srsLTE/srsLTE.git
Vcs-Browser: https://github.com/srsLTE/srsLTE/
+Package: srslte-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ srslte-core:any (= ${binary:Version})
+Breaks: srslte (<= 18.09-0ubuntu1)
+Replaces: srslte (<= 18.09-0ubuntu1)
+Description: Static libraries and headers for srslte
+ This software allows you to run a full end-to-end, open-source LTE system.
+ It contains a UE, eNB and EPC implementation.
+ .
+ This package contains the development files - static libraries and headers
+
Package: srslte
+Architecture: all
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ srsenb (>= ${source:Version}), srsenb (<< ${source:Upstream-Version}.0~),
+ srsue (>= ${source:Version}), srsue (<< ${source:Upstream-Version}.0~),
+ srsepc (>= ${source:Version}), srsepc (<< ${source:Upstream-Version}.0~)
+Description: LTE software suite for software defined radios (metapackage)
+ This software allows you to run a full end-to-end, open-source LTE system.
+ It contains a UE, eNB and EPC implementation.
+ .
+ This package installs all srsLTE components.
+
+Package: srsenb
Architecture: any
-Depends:
- libfftw3-3,
- libboost-program-options1.55.0 | libboost-program-options1.62.0,
- libmbedcrypto0 | libmbedcrypto1,
- libconfig++9v5,
- libsctp1,
- uhd-host,
- libuhd003 | libuhd003.010.003,
- ${misc:Depends}
-Description: This is srsLTE, a free and open-source LTE software suite.
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ srslte-core (= ${binary:Version})
+Breaks: srslte (<= 18.09-0ubuntu1)
+Replaces: srslte (<= 18.09-0ubuntu1)
+Description: Complete SDR LTE eNodeB application
This software allows you to run a full end-to-end, open-source LTE system.
It contains a UE, eNB and EPC implementation.
+ .
+ This package contains srsENB only. For running a full network, a core network
+ component, such as srsEPC, is needed.
+
+Package: srsepc
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ srslte-core (= ${binary:Version})
+Recommends: srsenb
+Breaks: srslte (<= 18.09-0ubuntu1)
+Replaces: srslte (<= 18.09-0ubuntu1)
+Description: Light-weight LTE core network implementation
+ This software allows you to run a full end-to-end, open-source LTE system.
+ It contains a UE, eNB and EPC implementation.
+ .
+ This package contains a light-weight LTE core network implementation with MME, HSS and S/P-GW.
+
+Package: srslte-core
+Architecture: any
+Multi-Arch: allowed
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Breaks: srslte (<= 18.09-0ubuntu1)
+Replaces: srslte (<= 18.09-0ubuntu1)
+Description: Common files for srsLTE
+ This software allows you to run a full end-to-end, open-source LTE system.
+ It contains a UE, eNB and EPC implementation.
+ .
+ This package contains the common files for srsenb, srsue and srsepc.
+
+Package: srsue
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends},
+ srslte-core (= ${binary:Version})
+Breaks: srslte (<= 18.09-0ubuntu1)
+Replaces: srslte (<= 18.09-0ubuntu1)
+Description: User Equipment implementation for LTE
+ This software enables using a software defined radio as the user equipment
+ connecting to an LTE network.
+ .
+ srsUE provides a complete SDR LTE UE application featuring all layers from PHY to IP. \ No newline at end of file
diff --git a/debian/man/genmanpages.sh b/debian/man/genmanpages.sh
new file mode 100755
index 000000000..5b60de604
--- /dev/null
+++ b/debian/man/genmanpages.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+txt2man -d "${CHANGELOG_DATE}" -t SRSENB -s 8 srsenb.txt > srsenb.8
+txt2man -d "${CHANGELOG_DATE}" -t SRSEPC -s 8 srsepc.txt > srsepc.8
+txt2man -d "${CHANGELOG_DATE}" -t SRSUE -s 8 srsue.txt > srsue.8
diff --git a/debian/man/srsenb.txt b/debian/man/srsenb.txt
new file mode 100644
index 000000000..7009bf594
--- /dev/null
+++ b/debian/man/srsenb.txt
@@ -0,0 +1,26 @@
+NAME
+ srsENB - A complete SDR LTE eNodeB application
+
+SYNOPSIS
+ srsenb [options] <config_file>
+
+DESCRIPTION
+
+ srsENB provides the Evolved Node B (eNodeB or eNB) part in the LTE network.
+
+ Features:
+
+ - Round Robin MAC scheduler with FAPI-like C++ API
+ - SR support
+ - Periodic and Aperiodic CQI feedback support
+ - Standard S1AP and GTP-U interfaces to the Core Network
+ - 150 Mbps DL in 20 MHz MIMO TM3/TM4 with commercial UEs
+ - 75 Mbps DL in SISO configuration with commercial UEs
+ - 50 Mbps UL in 20 MHz with commercial UEs
+
+ An example configuration file is available in /usr/share/srslte/enb.conf.example
+
+OPTIONS
+
+ -h/--help Produce help message
+ -v/--version Print version information and exit
diff --git a/debian/man/srsepc.txt b/debian/man/srsepc.txt
new file mode 100644
index 000000000..d9af06dd7
--- /dev/null
+++ b/debian/man/srsepc.txt
@@ -0,0 +1,21 @@
+NAME
+ srsEPC - A light-weight LTE core network implementation with MME, HSS and S/P-GW.
+
+SYNOPSIS
+ srsepc [options] <config_file>
+
+DESCRIPTION
+
+ srsEPC provides a light-weight LTE core network implementation.
+ It constist of a single binary, and provides the following features:
+
+ - MME (Mobility Management Entity) with standard S1AP and GTP-U interface to eNB
+ - S/P-GW with standard SGi exposed as virtual network interface (TUN device)
+ - HSS (Home Subscriber Server) with configurable user database in CSV format
+
+ An example configuration file is available in /usr/share/srslte/epc.conf.example
+
+OPTIONS
+
+ -h/--help Produce help message
+ -v/--version Print version information and exit
diff --git a/debian/man/srsue.txt b/debian/man/srsue.txt
new file mode 100644
index 000000000..1c7a813d3
--- /dev/null
+++ b/debian/man/srsue.txt
@@ -0,0 +1,26 @@
+NAME
+ srsUE - A SDR LTE UE application featuring all layers from PHY to IP
+
+SYNOPSIS
+ srsue [options] <config_file>
+
+DESCRIPTION
+
+ srsUE provides a complete SDR LTE UE application featuring all layers from PHY to IP.
+
+ Features:
+
+ - Cell search and synchronization procedure for the UE
+ - Soft USIM supporting Milenage and XOR authentication
+ - Hard USIM support using PCSC framework
+ - Virtual network interface tun_srsue created upon network attach
+ - 150 Mbps DL in 20 MHz MIMO TM3/TM4 configuration in i7 Quad-Core CPU.
+ - 75 Mbps DL in 20 MHz SISO configuration in i7 Quad-Core CPU.
+ - 36 Mbps DL in 10 MHz SISO configuration in i5 Dual-Core CPU.
+
+ An example configuration file is available in /usr/share/srslte/ue.conf.example
+
+OPTIONS
+
+ -h/--help Produce help message
+ -v/--version Print version information and exit
diff --git a/debian/rules b/debian/rules
index b1a2e7f2b..3c5479aa7 100755
--- a/debian/rules
+++ b/debian/rules
@@ -16,3 +16,14 @@ override_dh_auto_configure:
override_dh_auto_test:
# skip executing tests
+
+override_dh_installman:
+ cd debian/man ; CHANGELOG_DATE="$(CHANGELOG_DATE)" ./genmanpages.sh
+ dh_installman -a
+
+override_dh_auto_clean:
+ dh_auto_clean
+ $(RM) debian/man/*.1
+
+override_dh_installinit:
+ dh_installinit --no-start
diff --git a/debian/srsenb.install b/debian/srsenb.install
new file mode 100644
index 000000000..e37de249c
--- /dev/null
+++ b/debian/srsenb.install
@@ -0,0 +1,2 @@
+usr/bin/srsenb
+debian/srsenb.service lib/systemd/system/
diff --git a/debian/srsenb.manpages b/debian/srsenb.manpages
new file mode 100644
index 000000000..a130466e0
--- /dev/null
+++ b/debian/srsenb.manpages
@@ -0,0 +1 @@
+debian/man/srsenb.8
diff --git a/debian/srsenb.service b/debian/srsenb.service
new file mode 100644
index 000000000..e4d465258
--- /dev/null
+++ b/debian/srsenb.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Software Radio System's LTE eNB implementation
+
+[Service]
+Type=simple
+Restart=always
+ExecStart=/usr/bin/srsenb /etc/srslte/enb.conf
+RestartSec=2
+
+[Install]
+WantedBy=multi-user.target
diff --git a/debian/srsepc.install b/debian/srsepc.install
new file mode 100644
index 000000000..f61d996d8
--- /dev/null
+++ b/debian/srsepc.install
@@ -0,0 +1,4 @@
+usr/bin/srsepc
+usr/bin/srsepc_if_masq.sh
+debian/srsepc.service lib/systemd/system/
+usr/bin/srsmbms
diff --git a/debian/srsepc.manpages b/debian/srsepc.manpages
new file mode 100644
index 000000000..bf7cc6b71
--- /dev/null
+++ b/debian/srsepc.manpages
@@ -0,0 +1 @@
+debian/man/srsepc.8
diff --git a/debian/srsepc.service b/debian/srsepc.service
new file mode 100644
index 000000000..de5ec4b7f
--- /dev/null
+++ b/debian/srsepc.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Software Radio System's light-weight EPC implementation
+
+[Service]
+Type=simple
+Restart=always
+ExecStart=/usr/bin/srsepc /etc/srslte/epc.conf
+RestartSec=2
+
+[Install]
+WantedBy=multi-user.target
diff --git a/debian/config b/debian/srslte-core.config
index 83d7550e1..83d7550e1 100755
--- a/debian/config
+++ b/debian/srslte-core.config
diff --git a/debian/srslte-core.install b/debian/srslte-core.install
new file mode 100644
index 000000000..3c846533f
--- /dev/null
+++ b/debian/srslte-core.install
@@ -0,0 +1,3 @@
+usr/lib/*/libsrslte_rf.so
+usr/share/srslte
+usr/bin/srslte_install_configs.sh
diff --git a/debian/postinst b/debian/srslte-core.postinst
index 2009e6847..2ffbcfcbe 100755
--- a/debian/postinst
+++ b/debian/srslte-core.postinst
@@ -8,7 +8,7 @@ db_get srslte/install_configs_question
ANSWER1=$RET
if [ $ANSWER1 == "true" ]; then
- srslte_install_configs.sh
+ srslte_install_configs.sh user
fi
#DEBHELPER#
diff --git a/debian/templates b/debian/srslte-core.templates
index 97127f51a..847ac0da3 100644
--- a/debian/templates
+++ b/debian/srslte-core.templates
@@ -3,4 +3,4 @@ Type: boolean
Default: true
Description: Install configs?
This installs the default srsLTE configuration files to the user's
- home directory (~/.srs) but keeps any existing config files.
+ home directory (~/.config/srslte) but keeps any existing config files.
diff --git a/debian/srslte-dev.install b/debian/srslte-dev.install
new file mode 100644
index 000000000..d6ba448a9
--- /dev/null
+++ b/debian/srslte-dev.install
@@ -0,0 +1,2 @@
+usr/lib/*/*.a
+usr/include/srslte
diff --git a/debian/srsue.install b/debian/srsue.install
new file mode 100644
index 000000000..e03e7b144
--- /dev/null
+++ b/debian/srsue.install
@@ -0,0 +1,2 @@
+usr/bin/srsue
+debian/srsue.service lib/systemd/system/
diff --git a/debian/srsue.manpages b/debian/srsue.manpages
new file mode 100644
index 000000000..1732496ee
--- /dev/null
+++ b/debian/srsue.manpages
@@ -0,0 +1 @@
+debian/man/srsue.8
diff --git a/debian/srsue.service b/debian/srsue.service
new file mode 100644
index 000000000..6bfc19a06
--- /dev/null
+++ b/debian/srsue.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Software Radio Systems's LTE UE implementation
+
+[Service]
+Type=simple
+Restart=always
+ExecStart=/usr/bin/srsue /etc/srslte/ue.conf
+RestartSec=2
+
+[Install]
+WantedBy=multi-user.target