summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/PULL_REQUEST_TEMPLATE.md2
-rw-r--r--CONTRIBUTING.md8
-rw-r--r--data/architectures/amd64.toml3
-rw-r--r--data/architectures/arm64.toml8
-rw-r--r--data/defaults.toml6
-rw-r--r--data/live-build-config/archives/pdns.key.chroot30
-rw-r--r--data/live-build-config/archives/pdns.pref.chroot3
-rwxr-xr-xdata/live-build-config/hooks/live/18-enable-disable_services.chroot2
-rwxr-xr-xdata/live-build-config/hooks/live/30-frr-configs.chroot2
-rw-r--r--data/live-build-config/includes.chroot/usr/share/vyos/default_motd2
-rw-r--r--docker/Dockerfile178
-rwxr-xr-xdocker/entrypoint.sh7
-rw-r--r--packages/ethtool/.gitignore1
-rw-r--r--packages/ethtool/Jenkinsfile30
-rw-r--r--packages/fastnetmon/.gitignore2
-rw-r--r--packages/fastnetmon/Jenkinsfile34
-rwxr-xr-xpackages/fastnetmon/build.sh16
-rw-r--r--packages/frr/Jenkinsfile2
-rw-r--r--packages/frr/patches/0001-tools-Add-missing-daemons.patch37
-rw-r--r--packages/frr/patches/0002-babeld-Add-missing-no-commands.patch526
-rw-r--r--packages/hostap/Jenkinsfile4
-rwxr-xr-xpackages/hostap/build.sh5
-rw-r--r--packages/iproute2/.gitignore1
-rw-r--r--packages/iproute2/Jenkinsfile32
-rwxr-xr-xpackages/iproute2/build.sh20
-rw-r--r--packages/linux-kernel/.gitignore1
-rwxr-xr-xpackages/linux-kernel/build-accel-ppp.sh2
-rwxr-xr-xpackages/linux-kernel/build-intel-qat.sh193
-rw-r--r--packages/netfilter/.gitignore4
-rw-r--r--packages/netfilter/Jenkinsfile52
-rw-r--r--packages/ocserv/.gitignore1
-rw-r--r--packages/ocserv/Jenkinsfile31
-rw-r--r--packages/podman/.gitignore1
-rw-r--r--packages/podman/Jenkinsfile30
-rwxr-xr-xpackages/podman/build.sh32
-rw-r--r--packages/sstp-client/.gitignore1
-rw-r--r--packages/sstp-client/Jenkinsfile30
-rw-r--r--packages/strongswan/Jenkinsfile2
-rwxr-xr-xscripts/check-qemu-install8
-rwxr-xr-xscripts/make-version-file4
40 files changed, 734 insertions, 619 deletions
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 17d457ce..87eee2e7 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -19,7 +19,7 @@ the box, please use [x]
## Related Task(s)
<!-- All submitted PRs must be linked to a Task on Phabricator. -->
-* https://phabricator.vyos.net/Txxxx
+* https://vyos.dev/Txxxx
## Component(s) name
<!-- A rather incomplete list of components: ethernet, wireguard, bgp, mpls, ldp, l2tp, dhcp ... -->
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 8458d320..3ff00df8 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -32,7 +32,7 @@ The information is used in three ways:
* Help future maintainers of VyOS (it could be you!) to find out why certain
things have been changed in the codebase or why certain features have been
added
-
+
To make this approach work, every change must be associated with a task number
(prefixed with **T**) and a component. If there is no bug report/feature
request for the changes you are going to make, you have to create a Phabricator
@@ -42,7 +42,7 @@ in your commit message, as shown below:
* `ddclient: T1030: auto create runtime directories`
* `Jenkins: add current Git commit ID to build description`
-If there is no [Phabricator](https://phabricator.vyos.net) reference in the
+If there is no [Phabricator](https://vyos.dev) reference in the
commits of your pull request, we have to ask you to amend the commit message.
Otherwise we will have to reject it.
@@ -126,7 +126,7 @@ also contain information that is helpful for the development team.
### Reporting
In order to open up a bug-report/feature request you need to create yourself
-an account on [Phabricator](https://phabricator.vyos.net). On the left
+an account on [Phabricator](https://vyos.dev). On the left
side of the specific project (VyOS 1.2 or VyOS 1.3) you will find quick-links
for opening a bug-report/feature request.
@@ -141,7 +141,7 @@ for opening a bug-report/feature request.
You have an idea of how to make VyOS better or you are in need of a specific
feature which all users of VyOS would benefit from? To send a feature request
-please search [Phabricator](https://phabricator.vyos.net) if there is already a
+please search [Phabricator](https://vyos.dev) if there is already a
request pending. You can enhance it or if you don't find one, create a new one
by use the quick link in the left side under the specific project.
diff --git a/data/architectures/amd64.toml b/data/architectures/amd64.toml
index abfec53a..c479ea9c 100644
--- a/data/architectures/amd64.toml
+++ b/data/architectures/amd64.toml
@@ -1,6 +1,5 @@
additional_repositories = [
- "deb [arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/3004 bullseye main",
- "deb [arch=amd64] http://repo.powerdns.com/debian bullseye-rec-48 main"
+ "deb [arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/3004 bullseye main"
]
kernel_flavor = "amd64-vyos"
diff --git a/data/architectures/arm64.toml b/data/architectures/arm64.toml
index 8ba3805a..e48d9f49 100644
--- a/data/architectures/arm64.toml
+++ b/data/architectures/arm64.toml
@@ -1,3 +1,9 @@
+additional_repositories = [
+ "deb [arch=arm64] https://repo.saltproject.io/py3/debian/11/arm64/3004 bullseye main"
+]
+
+kernel_flavor = "v8-arm64-vyos"
+
# Packages included in ARM64 images by default
-packages = ["grub-efi-arm"]
+packages = ["grub-efi-arm64"]
bootloaders = "grub-efi" \ No newline at end of file
diff --git a/data/defaults.toml b/data/defaults.toml
index 3bbf0fe4..05092757 100644
--- a/data/defaults.toml
+++ b/data/defaults.toml
@@ -2,7 +2,7 @@ build_type = "development"
architecture = "amd64"
-debian_distribution = "bullseye"
+debian_distribution = "bookworm"
debian_mirror = "http://deb.debian.org/debian"
debian_security_mirror = "http://deb.debian.org/debian-security"
@@ -12,9 +12,9 @@ vyos_mirror = "http://dev.packages.vyos.net/repositories/current"
vyos_branch = "current"
release_train = "current"
-kernel_version = "6.1.8"
+kernel_version = "6.1.15"
bootloaders = "syslinux,grub-efi"
website_url = "https://vyos.io"
support_url = "https://support.vyos.io"
-bugtracker_url = "https://phabricator.vyos.net"
+bugtracker_url = "https://vyos.dev"
diff --git a/data/live-build-config/archives/pdns.key.chroot b/data/live-build-config/archives/pdns.key.chroot
deleted file mode 100644
index 9f59d9c9..00000000
--- a/data/live-build-config/archives/pdns.key.chroot
+++ /dev/null
@@ -1,30 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GnuPG v1
-
-mQINBFV2/GwBEADD4oJuwcLkYZD6R+PM0zKdZ04owicJ9e1nTbBb8OA+92TI0cJY
-8XGpjEJBRECOMJi9Gr6p3QxgZX1IQbiB/RJgRN0BYTZJ6BKobJAlSNsZBVH4wt/F
-Xg8IFXi8O8XNwrhhTHVLyhZxB5WIqd8Xgdb39t7qcKLLuhdzH+hTWtGNaC3UJ1xz
-3KMx79U/U71XRtvloiZF1ef0XUNvDZ/2DdTNWavdJzVeDq+whD0/ThvP0LsJzzCQ
-cgfRUljfxtWHOYVqHspfFg03ofDODodzq+yT5ElIQNWL71fRQ5lX8cPAVrX6v3Rs
-h2tBsWV3xjMscG36E7nKbgSXWxDInr4Xw056Mx/JO6If8vnCOYOhXcv3fdZ5Lqpr
-qr6uniBTcRi1q97JI1+KDoHU6MfJ7I17wU/bTPFgy6Yck4Ropmwd5dvbwRVTdQHx
-n08XYEZyNdq8zskbj8MI83jvDdvdd7b95SiBO6X3qIYKebk8rg1CfYFxBIyRd2ll
-yt1K0ow4M54woB/68cMy0UB6cA8uOHscRObau3T3UB0ohsEPF7KYAqOKfKP0irV+
-Ys6tR0KI/TeHqrqKhCA9PGOpOmqJaibt5GqFTc3Dp4U19njMmh4eboki8EwS6DNy
-4HD76dFz2jkSQ74uB/X+nxuFEVRKS54q4aeg83NL5lnsD8TWdhTui4mURQARAQAB
-tDxQb3dlckROUyBSZWxlYXNlIFNpZ25pbmcgS2V5IDxwb3dlcmRucy5zdXBwb3J0
-QHBvd2VyZG5zLmNvbT6JAj4EEwECACgFAlV2/GwCGwMFCQ8JnAAGCwkIBwMCBhUI
-AgkKCwQWAgMBAh4BAheAAAoJEBsMYgX9OA+75QYQAJ7a3rZiTmBJkYfDYbZGOcJj
-tIgWj5ieyIHjaG1kR3setK1GbYrd7dkeHuWIT8FCO/mQwrKTlxEd+Vj5a79Bpu0D
-de1MRi7jTIb/Qrge532Pnk5T7qFjJWfvTWhpSV9XDwHR216aByuHZ9gAJt92hgo5
-eSXHPpwbi+qAdymndUswFBHY0kLNpIYAa2mZcSNbaI/RFNYPOM/aqDMcpQ2s1Rf1
-c8iTPewf04jlNd75M59AAbnpdoFiCKbV+Q8oeUNxRGhHCQgcTaWhT5vdF2pXP1jb
-rVykPxN7U5zTu03m/qbUCKg9Pqkhr79a2XNIpcGHhsp58B6dJdBPhXT/tFXnVpY0
-wZHGGlBVhZzC1Qdq58ilyQ2qfIci2sjMoS62lAffemb88CyoQ2UadhNKZTn93Ogo
-lmW1txqN7UU7hUBxwdztw+Pgf7V+ADwkPHnSsNLupkZ7QUOl2i1kPwgcnwHLPFoD
-bYDteCtqcVVCY5v3OC95jGJ4bqwgIIeQ5kloKY2pRLeNedbCHbGc6rVjX5X0K2zt
-F7/dWOklI1Ox4Y+Vv0Ln7u3BvSyl5jWXWzH2V6q3ff7NKVro3keZmgTzcBwJEv/z
-p40ds9f2LTKJX4DajyAF2Z+j79obMYwKo0w+Vy36QrO8TlKk+ZU/6vcFfVdEoCtv
-d5a03QgyYgMX0WW8Smam
-=BY4B
------END PGP PUBLIC KEY BLOCK-----
diff --git a/data/live-build-config/archives/pdns.pref.chroot b/data/live-build-config/archives/pdns.pref.chroot
deleted file mode 100644
index 24d2beae..00000000
--- a/data/live-build-config/archives/pdns.pref.chroot
+++ /dev/null
@@ -1,3 +0,0 @@
-Package: pdns-*
-Pin: origin repo.powerdns.com
-Pin-Priority: 600
diff --git a/data/live-build-config/hooks/live/18-enable-disable_services.chroot b/data/live-build-config/hooks/live/18-enable-disable_services.chroot
index f69a76bb..f116262c 100755
--- a/data/live-build-config/hooks/live/18-enable-disable_services.chroot
+++ b/data/live-build-config/hooks/live/18-enable-disable_services.chroot
@@ -50,7 +50,9 @@ systemctl disable ipvsadm.service
systemctl disable telegraf.service
systemctl disable ndppd.service
systemctl disable ipsec.service
+systemctl disable strongswan.service
systemctl disable strongswan-starter.service
+systemctl disable strongswan.service
systemctl disable avahi-daemon.service
systemctl disable atop-rotate.timer
systemctl disable ModemManager.service
diff --git a/data/live-build-config/hooks/live/30-frr-configs.chroot b/data/live-build-config/hooks/live/30-frr-configs.chroot
index a516cc12..47b72300 100755
--- a/data/live-build-config/hooks/live/30-frr-configs.chroot
+++ b/data/live-build-config/hooks/live/30-frr-configs.chroot
@@ -23,7 +23,7 @@ pimd=no
ldpd=yes
nhrpd=no
eigrpd=yes
-babeld=no
+babeld=yes
sharpd=no
pbrd=no
bfdd=yes
diff --git a/data/live-build-config/includes.chroot/usr/share/vyos/default_motd b/data/live-build-config/includes.chroot/usr/share/vyos/default_motd
index 8f45acf5..d0c59992 100644
--- a/data/live-build-config/includes.chroot/usr/share/vyos/default_motd
+++ b/data/live-build-config/includes.chroot/usr/share/vyos/default_motd
@@ -1,7 +1,7 @@
Welcome to VyOS!
Check out project news at https://blog.vyos.io
-and feel free to report bugs at https://phabricator.vyos.net
+and feel free to report bugs at https://vyos.dev
You can change this banner using "set system login banner post-login" command.
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 8a7720ae..69b7c20a 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -18,7 +18,9 @@
# This Dockerfile is installable on both x86, x86-64, armhf and arm64 systems
ARG ARCH=
-FROM ${ARCH}debian:bullseye
+FROM ${ARCH}debian:bookworm
+
+RUN grep "VERSION_ID" /etc/os-release || (echo 'VERSION_ID="12"' >> /etc/os-release)
# It is also possible to emulate an arm system inside docker,
# execution of this emulated system needs to be executed on an x86 or x86-64 host.
@@ -41,11 +43,7 @@ FROM ${ARCH}debian:bullseye
LABEL authors="VyOS Maintainers <maintainers@vyos.io>"
ENV DEBIAN_FRONTEND noninteractive
-# Standard shell should be bash not dash
-RUN echo "dash dash/sh boolean false" | debconf-set-selections && \
- dpkg-reconfigure dash
-
-RUN echo -e 'APT::Install-Recommends "0";\nAPT::Install-Suggests "0";' > /etc/apt/apt.conf.d/01norecommends
+RUN /bin/echo -e 'APT::Install-Recommends "0";\nAPT::Install-Suggests "0";' > /etc/apt/apt.conf.d/01norecommends
RUN apt-get update && apt-get install -y \
dialog \
@@ -87,16 +85,15 @@ RUN apt-get update && apt-get install -y \
squashfs-tools \
genisoimage \
fakechroot \
+ pipx \
python3-git \
python3-pip \
python3-flake8 \
python3-autopep8 \
+ yq \
debootstrap \
live-build
-# vyos-build now also makes use of TOML - install yq which has toml support
-RUN pip install yq==3.1.0
-
# Syslinux and Grub2 is only supported on x86 and x64 systems
RUN if dpkg-architecture -ii386 || dpkg-architecture -iamd64; then \
apt-get update && apt-get install -y \
@@ -127,8 +124,11 @@ RUN curl https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh \
sed -i 's/read BINDIR/BINDIR=""/' /tmp/opam_install.sh && sh /tmp/opam_install.sh && \
opam init --root=/opt/opam --comp=${OCAML_VERSION} --disable-sandboxing --no-setup
+RUN eval $(opam env --root=/opt/opam --set-root) && \
+ opam pin add pcre https://github.com/mmottl/pcre-ocaml.git#0c4ca03a -y
+
RUN eval $(opam env --root=/opt/opam --set-root) && opam install -y \
- pcre re
+ re
RUN eval $(opam env --root=/opt/opam --set-root) && opam install -y \
num \
@@ -140,7 +140,7 @@ RUN eval $(opam env --root=/opt/opam --set-root) && opam install -y \
# Build VyConf which is required to build libvyosconfig
RUN eval $(opam env --root=/opt/opam --set-root) && \
- opam pin add vyos1x-config https://github.com/vyos/vyos1x-config.git#ae4b8eec -y
+ opam pin add vyos1x-config https://github.com/vyos/vyos1x-config.git#fd8bdc52 -y
# Packages needed for libvyosconfig
RUN apt-get update && apt-get install -y \
@@ -151,10 +151,14 @@ RUN apt-get update && apt-get install -y \
# Build libvyosconfig
RUN eval $(opam env --root=/opt/opam --set-root) && \
git clone https://github.com/vyos/libvyosconfig.git /tmp/libvyosconfig && \
- cd /tmp/libvyosconfig && git checkout d24dcc68 && \
+ cd /tmp/libvyosconfig && git checkout 020716d9 && \
dpkg-buildpackage -uc -us -tc -b && \
dpkg -i /tmp/libvyosconfig0_*_$(dpkg-architecture -qDEB_HOST_ARCH).deb
+# Packages needed for open-vmdk
+RUN apt-get update && apt-get install -y \
+ zlib1g-dev
+
# Install open-vmdk
RUN wget -O /tmp/open-vmdk-master.zip https://github.com/vmware/open-vmdk/archive/master.zip && \
unzip -d /tmp/ /tmp/open-vmdk-master.zip && \
@@ -225,24 +229,6 @@ RUN apt-get update && apt-get install -y \
pkg-config \
systemd
-# Packages needed for iproute2
-RUN apt-get update && apt-get install -y \
- bison \
- debhelper \
- flex \
- libxtables-dev \
- libatm1-dev \
- libcap-dev \
- libdb-dev \
- libbsd-dev \
- libelf-dev \
- libmnl-dev \
- libselinux1-dev \
- linux-libc-dev \
- pkg-config \
- po-debconf \
- zlib1g-dev
-
# Prerequisites for building rtrlib
# see http://docs.frrouting.org/projects/dev-guide/en/latest/building-frr-for-debian8.html
RUN apt-get update && apt-get install -y \
@@ -259,23 +245,18 @@ RUN export RTRLIB_VERSION="0.8.0" export ARCH=$(dpkg-architecture -qDEB_HOST_ARC
dpkg -i ../librtr0*_${ARCH}.deb ../librtr-dev*_${ARCH}.deb ../rtr-tools*_${ARCH}.deb
# Packages needed to build libyang2
-RUN pip install apkg
RUN apt-get update && apt-get install -y \
graphviz \
cmake \
- libpcre3-dev \
- python3-pip
+ libpcre3-dev
# Prerequisites for building FRR from source
# see http://docs.frrouting.org/projects/dev-guide/en/latest/building-frr-for-debian8.html
#
RUN export LIBYANG_COMMIT="v2.0.164" && \
git clone https://github.com/CESNET/libyang.git && \
- cd libyang && git checkout $LIBYANG_COMMIT && apkg build -i && \
- cd pkg/pkgs/debian-11/libyang2_* && dpkg -i *.deb
-
-# FRR documentation also has a dependency on an up to date spinx version
-RUN pip install sphinx==4.0.2
+ cd libyang && git checkout $LIBYANG_COMMIT && pipx run apkg build -i && \
+ cd pkg/pkgs/debian-*/libyang2_* && dpkg -i *.deb
# Packages needed to build FRR itself
# https://github.com/FRRouting/frr/blob/master/doc/developer/building-libyang.rst
@@ -289,6 +270,7 @@ RUN apt-get update && apt-get install -y \
install-info \
libc-ares-dev \
libcap-dev \
+ libelf-dev \
libjson-c-dev \
libpam0g-dev \
libpcre3-dev \
@@ -303,6 +285,7 @@ RUN apt-get update && apt-get install -y \
python3 \
python3-dev \
python3-pytest \
+ python3-sphinx \
texinfo
# Packages needed for hvinfo
@@ -311,10 +294,11 @@ RUN apt-get update && apt-get install -y \
gprbuild
# Packages needed for vyos-1x
-RUN pip install git+https://github.com/aristanetworks/j2lint.git@341b5d5db86
+RUN pip install --break-system-packages git+https://github.com/aristanetworks/j2lint.git@341b5d5db86
RUN apt-get update && apt-get install -y \
dh-python \
fakeroot \
+ iproute2 \
libzmq3-dev \
python3 \
python3-setuptools \
@@ -402,7 +386,7 @@ RUN apt-get update && apt-get install -y \
po-debconf \
systemd \
tzdata \
- python-setuptools \
+ python3-setuptools \
python3-stdeb
# Packages needed for opennhrp
@@ -466,42 +450,6 @@ RUN if dpkg-architecture -iarm64; then \
grub-efi-arm; \
fi
-# Packages needed for libnftnl
-RUN apt-get update && apt-get install -y \
- debhelper-compat \
- libmnl-dev \
- libtool \
- pkg-config
-
-# Packages needed for nftables
-RUN apt-get update && apt-get install -y \
- asciidoc-base \
- automake \
- bison \
- debhelper-compat \
- dh-python \
- docbook-xsl \
- flex \
- libeditreadline-dev \
- libgmp-dev \
- libjansson-dev \
- libmnl-dev \
- libtool \
- libxtables-dev \
- python3-all \
- python3-setuptools \
- xsltproc
-
-# Packages needed for libnetfilter-conntrack
-RUN apt-get update && apt-get install -y \
- debhelper-compat \
- libmnl-dev \
- libnfnetlink-dev \
- libnetfilter-cthelper-dev \
- libnetfilter-cttimeout-dev \
- libnetfilter-queue-dev \
- libtool
-
# Packages needed for wide-dhcpv6
RUN apt-get update && apt-get install -y \
bison \
@@ -522,10 +470,13 @@ RUN apt-get update && apt-get install -y \
openvpn
# Packages needed for OWAMP/TWAMP (service sla)
+RUN git clone -b 4.4.6 https://github.com/perfsonar/i2util.git /tmp/i2util && \
+ cd /tmp/i2util && \
+ dpkg-buildpackage -uc -us -tc -b && \
+ dpkg -i /tmp/*i2util*_$(dpkg-architecture -qDEB_HOST_ARCH).deb
+
RUN apt-get update && apt-get install -y \
- dh-exec \
- libi2util-dev \
- i2util-tools
+ dh-exec
# Packages needed for keepalived
RUN apt-get update && apt-get install -y \
@@ -605,33 +556,13 @@ RUN apt-get update && apt-get install -y \
docbook-to-man \
docbook-utils
-# Packages needed for podman
-RUN apt-get update && sudo apt-get install -y \
- btrfs-progs \
- git \
- iptables \
- libassuan-dev \
- libbtrfs-dev \
- libc6-dev \
- libdevmapper-dev \
- libglib2.0-dev \
- libgpgme-dev \
- libgpg-error-dev \
- libprotobuf-dev \
- libprotobuf-c-dev \
- libseccomp-dev \
- libselinux1-dev \
- libsystemd-dev \
- pkg-config \
- runc \
- uidmap
-
# Packages needed for Accel-PPP
# XXX: please note that this must be installed after nftable dependencies - otherwise
# APT will remove liblua5.3-dev which breaks the Accel-PPP build
+# With bookworm, updated to libssl3 (Note: https://github.com/accel-ppp/accel-ppp/issues/68)
RUN apt-get update && apt-get install -y \
liblua5.3-dev \
- libssl1.1 \
+ libssl3 \
libssl-dev \
libpcre3-dev
@@ -648,47 +579,6 @@ RUN apt-get update && apt-get install -y \
gnulib \
libtool
-# Packages required for ocserv
-RUN apt-get update && apt-get install -y \
- autogen \
- debhelper \
- freeradius \
- gawk \
- gnutls-bin \
- gperf \
- gss-ntlmssp \
- haproxy \
- iproute2 \
- iputils-ping \
- libcjose-dev \
- libcurl4-gnutls-dev \
- libev-dev \
- libgnutls28-dev \
- libhttp-parser-dev \
- libjansson-dev \
- libkrb5-dev \
- liblz4-dev \
- libmaxminddb-dev \
- libnl-route-3-dev \
- libnss-wrapper \
- liboath-dev \
- libpam-wrapper \
- libpam0g-dev \
- libprotobuf-c-dev \
- libradcli-dev \
- libreadline-dev \
- libseccomp-dev \
- libsocket-wrapper \
- libtalloc-dev \
- libuid-wrapper \
- nettle-dev \
- nuttcp \
- pkg-config \
- protobuf-c-compiler \
- ronn \
- tcpdump \
- yajl-tools
-
#
# fpm: a command-line program designed to help you build packages (e.g. deb)
#
@@ -701,7 +591,8 @@ RUN gem install --no-document fpm
# Allow password-less 'sudo' for all users in group 'sudo'
RUN sed "s/^%sudo.*/%sudo\tALL=(ALL) NOPASSWD:ALL/g" -i /etc/sudoers && \
- chmod a+s /usr/sbin/useradd /usr/sbin/groupadd /usr/sbin/gosu /usr/sbin/usermod
+ echo "vyos_bld\tALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers && \
+ chmod a+s /usr/sbin/useradd /usr/sbin/groupadd
# Ensure sure all users have access to our OCAM and Go installation
RUN echo "$(opam env --root=/opt/opam --set-root)" >> /etc/skel/.bashrc && \
@@ -714,4 +605,5 @@ RUN rm -rf /tmp/*
RUN echo -e "set mouse=\nset ttymouse=" > /etc/vim/vimrc.local
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
+
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh
index 8db41103..19c9423e 100755
--- a/docker/entrypoint.sh
+++ b/docker/entrypoint.sh
@@ -24,9 +24,12 @@ if ! grep -q $NEW_GID /etc/group; then
fi
useradd --shell /bin/bash --uid $NEW_UID --gid $NEW_GID --non-unique --create-home $USER_NAME
-usermod --append --groups sudo $USER_NAME
sudo chown $NEW_UID:$NEW_GID /home/$USER_NAME
export HOME=/home/$USER_NAME
+if [ "$(id -u)" == "0" ]; then
+ exec gosu $USER_NAME "$@"
+fi
+
# Execute process
-exec /usr/sbin/gosu $USER_NAME "$@"
+exec "$@"
diff --git a/packages/ethtool/.gitignore b/packages/ethtool/.gitignore
deleted file mode 100644
index 5967d5de..00000000
--- a/packages/ethtool/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-ethtool/
diff --git a/packages/ethtool/Jenkinsfile b/packages/ethtool/Jenkinsfile
deleted file mode 100644
index fd503780..00000000
--- a/packages/ethtool/Jenkinsfile
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright (C) 2023 VyOS maintainers and contributors
-//
-// This program is free software; you can redistribute it and/or modify
-// in order to easy exprort images built to "external" world
-// it under the terms of the GNU General Public License version 2 or later as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-@NonCPS
-
-// Using a version specifier library, use 'current' branch. The underscore (_)
-// is not a typo! You need this underscore if the line immediately after the
-// @Library annotation is not an import statement!
-@Library('vyos-build@current')_
-
-def pkgList = [
- ['name': 'ethtool',
- 'scmCommit': 'debian/1%6.1-1',
- 'scmUrl': 'https://salsa.debian.org/kernel-team/ethtool.git',
- 'buildCmd': 'dpkg-buildpackage -uc -us -tc -b'],
-]
-
-// Start package build using library function from https://github.com/vyos/vyos-build
-buildPackage('dropbear', pkgList, null, true, "**/packages/dropbear/*")
diff --git a/packages/fastnetmon/.gitignore b/packages/fastnetmon/.gitignore
deleted file mode 100644
index 6831db67..00000000
--- a/packages/fastnetmon/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-fastnetmon/
-fastnetmon-debian-salsa/
diff --git a/packages/fastnetmon/Jenkinsfile b/packages/fastnetmon/Jenkinsfile
deleted file mode 100644
index 710b58ff..00000000
--- a/packages/fastnetmon/Jenkinsfile
+++ /dev/null
@@ -1,34 +0,0 @@
-// Copyright (C) 2022 VyOS maintainers and contributors
-//
-// This program is free software; you can redistribute it and/or modify
-// in order to easy exprort images built to "external" world
-// it under the terms of the GNU General Public License version 2 or later as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-@NonCPS
-
-// Using a version specifier library, use 'current' branch. The underscore (_)
-// is not a typo! You need this underscore if the line immediately after the
-// @Library annotation is not an import statement!
-@Library('vyos-build@current')_
-
-def pkgList = [
- ['name': 'fastnetmon-debian-salsa',
- 'scmCommit': 'debian/1.2.2-1',
- 'scmUrl': 'https://salsa.debian.org/debian/fastnetmon.git',
- 'buildCmd': '/bin/true'],
- ['name': 'fastnetmon',
- 'scmCommit': 'v1.2.2',
- 'scmUrl': 'https://github.com/pavel-odintsov/fastnetmon.git',
- 'buildCmd': 'cd ..; ./build.sh'],
-]
-
-// Start package build using library function from https://github.com/vyos/vyos-build
-buildPackage('fastnetmon', pkgList, null, false, "**/packages/fastnetmon/*")
diff --git a/packages/fastnetmon/build.sh b/packages/fastnetmon/build.sh
deleted file mode 100755
index 1230e650..00000000
--- a/packages/fastnetmon/build.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-CWD=$(pwd)
-set -e
-
-SRC=fastnetmon
-if [ ! -d ${SRC} ]; then
- echo "Source directory does not exists, please 'git clone'"
- exit 1
-fi
-
-tar -czf fastnetmon_$(head -n 1 fastnetmon-debian-salsa/debian/changelog|awk '{print $2}'|sed 's/[()]//g' | sed -E 's/(\-[0-9]+)?$//').orig.tar.gz fastnetmon
-
-cd ${SRC}
-rm -rf debian && cp -a ../fastnetmon-debian-salsa/debian/ .
-
-dpkg-buildpackage -uc -us -tc -b -d
diff --git a/packages/frr/Jenkinsfile b/packages/frr/Jenkinsfile
index d74244d6..4dd3eb20 100644
--- a/packages/frr/Jenkinsfile
+++ b/packages/frr/Jenkinsfile
@@ -24,7 +24,7 @@ def pkgList = [
['name': 'libyang',
'scmCommit': 'v2.0.164',
'scmUrl': 'https://github.com/CESNET/libyang.git',
- 'buildCmd': 'apkg build -i && find pkg/pkgs -type f -name *.deb -exec mv -t .. {} +'],
+ 'buildCmd': 'pipx run apkg build -i && find pkg/pkgs -type f -name *.deb -exec mv -t .. {} +'],
['name': 'rtrlib',
'scmCommit': 'v0.8.0',
'scmUrl': 'https://github.com/rtrlib/rtrlib.git',
diff --git a/packages/frr/patches/0001-tools-Add-missing-daemons.patch b/packages/frr/patches/0001-tools-Add-missing-daemons.patch
new file mode 100644
index 00000000..0dd7d1c6
--- /dev/null
+++ b/packages/frr/patches/0001-tools-Add-missing-daemons.patch
@@ -0,0 +1,37 @@
+From bad924dd359670b92cfb44e4657ba047a0ffec10 Mon Sep 17 00:00:00 2001
+From: Yuxiang Zhu <vfreex@gmail.com>
+Date: Tue, 10 Jan 2023 03:18:05 +0800
+Subject: [PATCH 1/2] tools: Add missing daemons
+
+Got `ERROR: Daemon babeld is not a valid option for 'show running-config'` when using `frr-reload.py --reload --daemon babeld`.
+
+Adds `babeld` and `nhrpd` as valid daemons.
+
+Signed-off-by: Yuxiang Zhu <vfreex@gmail.com>
+---
+ tools/frr-reload.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/tools/frr-reload.py b/tools/frr-reload.py
+index bf402e1be..dfbc9b800 100755
+--- a/tools/frr-reload.py
++++ b/tools/frr-reload.py
+@@ -1914,6 +1914,7 @@ if __name__ == "__main__":
+ "bgpd",
+ "fabricd",
+ "isisd",
++ "babeld",
+ "ospf6d",
+ "ospfd",
+ "pbrd",
+@@ -1925,6 +1926,7 @@ if __name__ == "__main__":
+ "staticd",
+ "vrrpd",
+ "ldpd",
++ "nhrpd",
+ "pathd",
+ "bfdd",
+ "eigrpd",
+--
+2.37.1 (Apple Git-137.1)
+
diff --git a/packages/frr/patches/0002-babeld-Add-missing-no-commands.patch b/packages/frr/patches/0002-babeld-Add-missing-no-commands.patch
new file mode 100644
index 00000000..af7226ed
--- /dev/null
+++ b/packages/frr/patches/0002-babeld-Add-missing-no-commands.patch
@@ -0,0 +1,526 @@
+From 7d3ab29ab035996038c1cbee1f26627a8313e220 Mon Sep 17 00:00:00 2001
+From: Yuxiang Zhu <vfreex@gmail.com>
+Date: Sat, 14 Jan 2023 20:02:41 +0800
+Subject: [PATCH 2/2] babeld: Add missing `no` commands
+
+Some babeld commands doesn't have the corresponding negative commands
+defined, so those commands doesn't work with frr-reload.py.
+
+This PR adds those missing commands.
+
+Signed-off-by: Yuxiang Zhu <vfreex@gmail.com>
+---
+ babeld/.gitignore | 1 +
+ babeld/babel_interface.c | 209 ++++++++++++++-------------------------
+ babeld/babeld.c | 38 ++++---
+ babeld/subdir.am | 4 +
+ 4 files changed, 98 insertions(+), 154 deletions(-)
+
+diff --git a/babeld/.gitignore b/babeld/.gitignore
+index 71ef6786c..abb4d9321 100644
+--- a/babeld/.gitignore
++++ b/babeld/.gitignore
+@@ -5,3 +5,4 @@
+ !Makefile
+ !subdir.am
+ !.gitignore
++*_clippy.c
+diff --git a/babeld/babel_interface.c b/babeld/babel_interface.c
+index 00fb58e57..cc5089801 100644
+--- a/babeld/babel_interface.c
++++ b/babeld/babel_interface.c
+@@ -42,6 +42,10 @@ THE SOFTWARE.
+ #include "xroute.h"
+ #include "babel_errors.h"
+
++#ifndef VTYSH_EXTRACT_PL
++#include "babeld/babel_interface_clippy.c"
++#endif
++
+ DEFINE_MTYPE_STATIC(BABELD, BABEL_IF, "Babel Interface");
+
+ #define IS_ENABLE(ifp) (babel_enable_if_lookup(ifp->name) >= 0)
+@@ -307,9 +311,10 @@ babel_set_wired_internal(babel_interface_nfo *babel_ifp, int wired)
+ }
+
+ /* [Interface Command] Tell the interface is wire. */
+-DEFUN (babel_set_wired,
++DEFPY (babel_set_wired,
+ babel_set_wired_cmd,
+- "babel wired",
++ "[no] babel wired",
++ NO_STR
+ "Babel interface commands\n"
+ "Enable wired optimizations\n")
+ {
+@@ -319,14 +324,15 @@ DEFUN (babel_set_wired,
+ babel_ifp = babel_get_if_nfo(ifp);
+
+ assert (babel_ifp != NULL);
+- babel_set_wired_internal(babel_ifp, 1);
++ babel_set_wired_internal(babel_ifp, no ? 0 : 1);
+ return CMD_SUCCESS;
+ }
+
+ /* [Interface Command] Tell the interface is wireless (default). */
+-DEFUN (babel_set_wireless,
++DEFPY (babel_set_wireless,
+ babel_set_wireless_cmd,
+- "babel wireless",
++ "[no] babel wireless",
++ NO_STR
+ "Babel interface commands\n"
+ "Disable wired optimizations (assume wireless)\n")
+ {
+@@ -336,34 +342,17 @@ DEFUN (babel_set_wireless,
+ babel_ifp = babel_get_if_nfo(ifp);
+
+ assert (babel_ifp != NULL);
+- babel_set_wired_internal(babel_ifp, 0);
++ babel_set_wired_internal(babel_ifp, no ? 1 : 0);
+ return CMD_SUCCESS;
+ }
+
+ /* [Interface Command] Enable split horizon. */
+-DEFUN (babel_split_horizon,
++DEFPY (babel_split_horizon,
+ babel_split_horizon_cmd,
+- "babel split-horizon",
+- "Babel interface commands\n"
+- "Enable split horizon processing\n")
+-{
+- VTY_DECLVAR_CONTEXT(interface, ifp);
+- babel_interface_nfo *babel_ifp;
+-
+- babel_ifp = babel_get_if_nfo(ifp);
+-
+- assert (babel_ifp != NULL);
+- babel_ifp->flags |= BABEL_IF_SPLIT_HORIZON;
+- return CMD_SUCCESS;
+-}
+-
+-/* [Interface Command] Disable split horizon (default). */
+-DEFUN (no_babel_split_horizon,
+- no_babel_split_horizon_cmd,
+- "no babel split-horizon",
++ "[no] babel split-horizon",
+ NO_STR
+ "Babel interface commands\n"
+- "Disable split horizon processing\n")
++ "Enable split horizon processing\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+@@ -371,213 +360,180 @@ DEFUN (no_babel_split_horizon,
+ babel_ifp = babel_get_if_nfo(ifp);
+
+ assert (babel_ifp != NULL);
+- babel_ifp->flags &= ~BABEL_IF_SPLIT_HORIZON;
++ if (!no)
++ SET_FLAG(babel_ifp->flags, BABEL_IF_SPLIT_HORIZON);
++ else
++ UNSET_FLAG(babel_ifp->flags, BABEL_IF_SPLIT_HORIZON);
+ return CMD_SUCCESS;
+ }
+
+ /* [Interface Command]. */
+-DEFUN (babel_set_hello_interval,
++DEFPY (babel_set_hello_interval,
+ babel_set_hello_interval_cmd,
+- "babel hello-interval (20-655340)",
++ "[no] babel hello-interval (20-655340)",
++ NO_STR
+ "Babel interface commands\n"
+ "Time between scheduled hellos\n"
+ "Milliseconds\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+- int interval;
+-
+- interval = strtoul(argv[2]->arg, NULL, 10);
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
+- babel_ifp->hello_interval = interval;
++ babel_ifp->hello_interval = no ?
++ BABEL_DEFAULT_HELLO_INTERVAL : hello_interval;
+ return CMD_SUCCESS;
+ }
+
+ /* [Interface Command]. */
+-DEFUN (babel_set_update_interval,
++DEFPY (babel_set_update_interval,
+ babel_set_update_interval_cmd,
+- "babel update-interval (20-655340)",
++ "[no] babel update-interval (20-655340)",
++ NO_STR
+ "Babel interface commands\n"
+ "Time between scheduled updates\n"
+ "Milliseconds\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+- int interval;
+-
+- interval = strtoul(argv[2]->arg, NULL, 10);
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
+- babel_ifp->update_interval = interval;
++ babel_ifp->update_interval = no ?
++ BABEL_DEFAULT_UPDATE_INTERVAL : update_interval;
+ return CMD_SUCCESS;
+ }
+
+-DEFUN (babel_set_rxcost,
++DEFPY (babel_set_rxcost,
+ babel_set_rxcost_cmd,
+- "babel rxcost (1-65534)",
++ "[no] babel rxcost (1-65534)",
++ NO_STR
+ "Babel interface commands\n"
+ "Rxcost multiplier\n"
+ "Units\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+- int rxcost;
+-
+- rxcost = strtoul(argv[2]->arg, NULL, 10);
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
++ if (no)
++ rxcost = CHECK_FLAG(babel_ifp->flags, BABEL_IF_WIRED) ?
++ BABEL_DEFAULT_RXCOST_WIRED : BABEL_DEFAULT_RXCOST_WIRELESS;
++
+ babel_ifp->cost = rxcost;
+ return CMD_SUCCESS;
+ }
+
+-DEFUN (babel_set_rtt_decay,
++DEFPY (babel_set_rtt_decay,
+ babel_set_rtt_decay_cmd,
+- "babel rtt-decay (1-256)",
++ "[no] babel rtt-decay (1-256)",
++ NO_STR
+ "Babel interface commands\n"
+ "Decay factor for exponential moving average of RTT samples\n"
+ "Units of 1/256\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+- int decay;
+-
+- decay = strtoul(argv[2]->arg, NULL, 10);
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
+- babel_ifp->rtt_decay = decay;
++ babel_ifp->rtt_decay = no ? BABEL_DEFAULT_RTT_DECAY : rtt_decay;
+ return CMD_SUCCESS;
+ }
+
+-DEFUN (babel_set_rtt_min,
++DEFPY (babel_set_rtt_min,
+ babel_set_rtt_min_cmd,
+- "babel rtt-min (1-65535)",
++ "[no] babel rtt-min (1-65535)",
++ NO_STR
+ "Babel interface commands\n"
+ "Minimum RTT starting for increasing cost\n"
+ "Milliseconds\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+- int rtt;
+-
+- rtt = strtoul(argv[2]->arg, NULL, 10);
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
+ /* The value is entered in milliseconds but stored as microseconds. */
+- babel_ifp->rtt_min = rtt * 1000;
++ babel_ifp->rtt_min = no ? BABEL_DEFAULT_RTT_MIN : rtt_min * 1000;
+ return CMD_SUCCESS;
+ }
+
+-DEFUN (babel_set_rtt_max,
++DEFPY (babel_set_rtt_max,
+ babel_set_rtt_max_cmd,
+- "babel rtt-max (1-65535)",
++ "[no] babel rtt-max (1-65535)",
++ NO_STR
+ "Babel interface commands\n"
+ "Maximum RTT\n"
+ "Milliseconds\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+- int rtt;
+-
+- rtt = strtoul(argv[2]->arg, NULL, 10);
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
+ /* The value is entered in milliseconds but stored as microseconds. */
+- babel_ifp->rtt_max = rtt * 1000;
++ babel_ifp->rtt_max = no ? BABEL_DEFAULT_RTT_MAX : rtt_max * 1000;
+ return CMD_SUCCESS;
+ }
+
+-DEFUN (babel_set_max_rtt_penalty,
++DEFPY (babel_set_max_rtt_penalty,
+ babel_set_max_rtt_penalty_cmd,
+- "babel max-rtt-penalty (0-65535)",
++ "[no] babel max-rtt-penalty (0-65535)",
++ NO_STR
+ "Babel interface commands\n"
+ "Maximum additional cost due to RTT\n"
+ "Milliseconds\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+- int penalty;
+-
+- penalty = strtoul(argv[2]->arg, NULL, 10);
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
+- babel_ifp->max_rtt_penalty = penalty;
++ babel_ifp->max_rtt_penalty = no ?
++ BABEL_DEFAULT_MAX_RTT_PENALTY : max_rtt_penalty;
+ return CMD_SUCCESS;
+ }
+
+-DEFUN (babel_set_enable_timestamps,
++DEFPY (babel_set_enable_timestamps,
+ babel_set_enable_timestamps_cmd,
+- "babel enable-timestamps",
+- "Babel interface commands\n"
+- "Enable timestamps\n")
+-{
+- VTY_DECLVAR_CONTEXT(interface, ifp);
+- babel_interface_nfo *babel_ifp;
+-
+- babel_ifp = babel_get_if_nfo(ifp);
+- assert (babel_ifp != NULL);
+-
+- babel_ifp->flags |= BABEL_IF_TIMESTAMPS;
+- return CMD_SUCCESS;
+-}
+-
+-DEFUN (no_babel_set_enable_timestamps,
+- no_babel_set_enable_timestamps_cmd,
+- "no babel enable-timestamps",
++ "[no] babel enable-timestamps",
+ NO_STR
+ "Babel interface commands\n"
+- "Disable timestamps\n")
++ "Enable timestamps\n")
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+-
+- babel_ifp->flags &= ~BABEL_IF_TIMESTAMPS;
++ if (!no)
++ SET_FLAG(babel_ifp->flags, BABEL_IF_TIMESTAMPS);
++ else
++ UNSET_FLAG(babel_ifp->flags, BABEL_IF_TIMESTAMPS);
+ return CMD_SUCCESS;
+ }
+
+-DEFUN (babel_set_channel,
++DEFPY (babel_set_channel,
+ babel_set_channel_cmd,
+- "babel channel (1-254)",
+- "Babel interface commands\n"
+- "Channel number for diversity routing\n"
+- "Number\n")
+-{
+- VTY_DECLVAR_CONTEXT(interface, ifp);
+- babel_interface_nfo *babel_ifp;
+- int channel;
+-
+- channel = strtoul(argv[2]->arg, NULL, 10);
+-
+- babel_ifp = babel_get_if_nfo(ifp);
+- assert (babel_ifp != NULL);
+-
+- babel_ifp->channel = channel;
+- return CMD_SUCCESS;
+-}
+-
+-DEFUN (babel_set_channel_interfering,
+- babel_set_channel_interfering_cmd,
+- "babel channel interfering",
++ "[no] babel channel <(1-254)$ch|interfering$interfering|"
++ "noninterfering$noninterfering>",
++ NO_STR
+ "Babel interface commands\n"
+ "Channel number for diversity routing\n"
+- "Mark channel as interfering\n")
++ "Number\n"
++ "Mark channel as interfering\n"
++ "Mark channel as noninterfering\n"
++ )
+ {
+ VTY_DECLVAR_CONTEXT(interface, ifp);
+ babel_interface_nfo *babel_ifp;
+@@ -585,24 +541,15 @@ DEFUN (babel_set_channel_interfering,
+ babel_ifp = babel_get_if_nfo(ifp);
+ assert (babel_ifp != NULL);
+
+- babel_ifp->channel = BABEL_IF_CHANNEL_INTERFERING;
+- return CMD_SUCCESS;
+-}
+-
+-DEFUN (babel_set_channel_noninterfering,
+- babel_set_channel_noninterfering_cmd,
+- "babel channel noninterfering",
+- "Babel interface commands\n"
+- "Channel number for diversity routing\n"
+- "Mark channel as noninterfering\n")
+-{
+- VTY_DECLVAR_CONTEXT(interface, ifp);
+- babel_interface_nfo *babel_ifp;
+-
+- babel_ifp = babel_get_if_nfo(ifp);
+- assert (babel_ifp != NULL);
++ if (no)
++ ch = CHECK_FLAG(babel_ifp->flags, BABEL_IF_WIRED) ?
++ BABEL_IF_CHANNEL_NONINTERFERING : BABEL_IF_CHANNEL_INTERFERING;
++ else if (interfering)
++ ch = BABEL_IF_CHANNEL_INTERFERING;
++ else if (noninterfering)
++ ch = BABEL_IF_CHANNEL_NONINTERFERING;
+
+- babel_ifp->channel = BABEL_IF_CHANNEL_NONINTERFERING;
++ babel_ifp->channel = ch;
+ return CMD_SUCCESS;
+ }
+
+@@ -1239,7 +1186,6 @@ babel_if_init(void)
+ install_element(BABEL_NODE, &babel_network_cmd);
+ install_element(BABEL_NODE, &no_babel_network_cmd);
+ install_element(INTERFACE_NODE, &babel_split_horizon_cmd);
+- install_element(INTERFACE_NODE, &no_babel_split_horizon_cmd);
+ install_element(INTERFACE_NODE, &babel_set_wired_cmd);
+ install_element(INTERFACE_NODE, &babel_set_wireless_cmd);
+ install_element(INTERFACE_NODE, &babel_set_hello_interval_cmd);
+@@ -1251,9 +1197,6 @@ babel_if_init(void)
+ install_element(INTERFACE_NODE, &babel_set_rtt_max_cmd);
+ install_element(INTERFACE_NODE, &babel_set_max_rtt_penalty_cmd);
+ install_element(INTERFACE_NODE, &babel_set_enable_timestamps_cmd);
+- install_element(INTERFACE_NODE, &no_babel_set_enable_timestamps_cmd);
+- install_element(INTERFACE_NODE, &babel_set_channel_interfering_cmd);
+- install_element(INTERFACE_NODE, &babel_set_channel_noninterfering_cmd);
+
+ /* "show babel ..." commands */
+ install_element(VIEW_NODE, &show_babel_interface_cmd);
+diff --git a/babeld/babeld.c b/babeld/babeld.c
+index dfdc924cb..34e1a4318 100644
+--- a/babeld/babeld.c
++++ b/babeld/babeld.c
+@@ -47,6 +47,10 @@ THE SOFTWARE.
+ #include "babel_zebra.h"
+ #include "babel_errors.h"
+
++#ifndef VTYSH_EXTRACT_PL
++#include "babeld/babeld_clippy.c"
++#endif
++
+ DEFINE_MGROUP(BABELD, "babeld");
+ DEFINE_MTYPE_STATIC(BABELD, BABEL, "Babel Structure");
+
+@@ -662,50 +666,42 @@ DEFUN (no_babel_diversity,
+ }
+
+ /* [Babel Command] */
+-DEFUN (babel_diversity_factor,
++DEFPY (babel_diversity_factor,
+ babel_diversity_factor_cmd,
+- "babel diversity-factor (1-256)",
++ "[no] babel diversity-factor (1-256)$factor",
++ NO_STR
+ "Babel commands\n"
+ "Set the diversity factor.\n"
+ "Factor in units of 1/256.\n")
+ {
+- int factor;
+-
+- factor = strtoul(argv[2]->arg, NULL, 10);
+-
+- diversity_factor = factor;
++ diversity_factor = no ? BABEL_DEFAULT_DIVERSITY_FACTOR : factor;
+ return CMD_SUCCESS;
+ }
+
+ /* [Babel Command] */
+-DEFUN (babel_set_resend_delay,
++DEFPY (babel_set_resend_delay,
+ babel_set_resend_delay_cmd,
+- "babel resend-delay (20-655340)",
++ "[no] babel resend-delay (20-655340)$delay",
++ NO_STR
+ "Babel commands\n"
+ "Time before resending a message\n"
+ "Milliseconds\n")
+ {
+- int interval;
+-
+- interval = strtoul(argv[2]->arg, NULL, 10);
+-
+- resend_delay = interval;
++ resend_delay = no ? BABEL_DEFAULT_RESEND_DELAY : delay;
+ return CMD_SUCCESS;
+ }
+
+ /* [Babel Command] */
+-DEFUN (babel_set_smoothing_half_life,
++DEFPY (babel_set_smoothing_half_life,
+ babel_set_smoothing_half_life_cmd,
+- "babel smoothing-half-life (0-65534)",
++ "[no] babel smoothing-half-life (0-65534)$seconds",
++ NO_STR
+ "Babel commands\n"
+ "Smoothing half-life\n"
+ "Seconds (0 to disable)\n")
+ {
+- int seconds;
+-
+- seconds = strtoul(argv[2]->arg, NULL, 10);
+-
+- change_smoothing_half_life(seconds);
++ change_smoothing_half_life(no ? BABEL_DEFAULT_SMOOTHING_HALF_LIFE
++ : seconds);
+ return CMD_SUCCESS;
+ }
+
+diff --git a/babeld/subdir.am b/babeld/subdir.am
+index 856cbd13e..6183c8c83 100644
+--- a/babeld/subdir.am
++++ b/babeld/subdir.am
+@@ -48,4 +48,8 @@ noinst_HEADERS += \
+ babeld/xroute.h \
+ # end
+
++clippy_scan += \
++ babeld/babel_interface.c \
++ babeld/babeld.c
++
+ babeld_babeld_LDADD = lib/libfrr.la $(LIBCAP)
+--
+2.37.1 (Apple Git-137.1)
+
diff --git a/packages/hostap/Jenkinsfile b/packages/hostap/Jenkinsfile
index 9fd8e9e3..d7dd063e 100644
--- a/packages/hostap/Jenkinsfile
+++ b/packages/hostap/Jenkinsfile
@@ -21,11 +21,11 @@
def pkgList = [
['name': 'wpa',
- 'scmCommit': 'debian/2%2.10-7',
+ 'scmCommit': 'debian/2%2.10-10',
'scmUrl': 'https://salsa.debian.org/debian/wpa',
'buildCmd': '/bin/true'],
['name': 'hostap',
- 'scmCommit': 'b704dc72ef824dfdd96674b90179b274d1d38105',
+ 'scmCommit': '6b9c86466',
'scmUrl': 'git://w1.fi/srv/git/hostap.git',
'buildCmd': 'cd ..; ./build.sh'],
]
diff --git a/packages/hostap/build.sh b/packages/hostap/build.sh
index 4e140d80..98b77d38 100755
--- a/packages/hostap/build.sh
+++ b/packages/hostap/build.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
CWD=$(pwd)
set -e
@@ -27,4 +27,5 @@ version="$(git describe --tags | tr _ .)"
dch -v ${version:7} "New version to support AES-GCM-256 for MACsec" -b
echo "I: Build Debian hostap Package"
-dpkg-buildpackage -us -uc -tc -b -Ppkg.wpa.nogui
+DEB_CPPFLAGS_SET="-Wno-use-after-free -Wno-deprecated-declarations" \
+ dpkg-buildpackage -us -uc -tc -b -Ppkg.wpa.nogui,noudeb
diff --git a/packages/iproute2/.gitignore b/packages/iproute2/.gitignore
deleted file mode 100644
index 02be8f3d..00000000
--- a/packages/iproute2/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-iproute2/
diff --git a/packages/iproute2/Jenkinsfile b/packages/iproute2/Jenkinsfile
deleted file mode 100644
index b6bf9d1c..00000000
--- a/packages/iproute2/Jenkinsfile
+++ /dev/null
@@ -1,32 +0,0 @@
-// Copyright (C) 2020-2021 VyOS maintainers and contributors
-//
-// This program is free software; you can redistribute it and/or modify
-// in order to easy exprort images built to "external" world
-// it under the terms of the GNU General Public License version 2 or later as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-@NonCPS
-
-// Using a version specifier library, use 'current' branch. The underscore (_)
-// is not a typo! You need this underscore if the line immediately after the
-// @Library annotation is not an import statement!
-@Library('vyos-build@current')_
-
-// NOTE: we can build with -d as the libbpf dependency is installed manually
-// and not via a DEB package
-def pkgList = [
- ['name': 'iproute2',
- 'scmCommit': 'debian/6.1.0-1',
- 'scmUrl': 'https://salsa.debian.org/debian/iproute2',
- 'buildCmd': 'cd ..; ./build.sh'],
-]
-
-// Start package build using library function from https://github.com/vyos/vyos-build
-buildPackage('iproute2', pkgList, null, true, "**/packages/iproute2/*")
diff --git a/packages/iproute2/build.sh b/packages/iproute2/build.sh
deleted file mode 100755
index 09babb95..00000000
--- a/packages/iproute2/build.sh
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-CWD=$(pwd)
-set -e
-
-SRC=iproute2
-if [ ! -d ${SRC} ]; then
- echo "Source directory does not exists, please 'git clone'"
- exit 1
-fi
-
-cd ${SRC}
-PATCH_DIR=${CWD}/patches
-for patch in $(ls ${PATCH_DIR})
-do
- echo "I: Apply patch: ${PATCH_DIR}/${patch}"
- patch -p1 < ${PATCH_DIR}/${patch}
-done
-
-echo "I: Build Debian Package"
-dpkg-buildpackage -uc -us -tc -b -d
diff --git a/packages/linux-kernel/.gitignore b/packages/linux-kernel/.gitignore
index 6373bd11..b3c05f66 100644
--- a/packages/linux-kernel/.gitignore
+++ b/packages/linux-kernel/.gitignore
@@ -5,6 +5,7 @@
/intel-qat
/linux-firmware
/qat*
+/QAT*
*.tar.xz
/*.postinst
diff --git a/packages/linux-kernel/build-accel-ppp.sh b/packages/linux-kernel/build-accel-ppp.sh
index 45c3494e..01fd7bd8 100755
--- a/packages/linux-kernel/build-accel-ppp.sh
+++ b/packages/linux-kernel/build-accel-ppp.sh
@@ -24,7 +24,7 @@ cmake -DBUILD_IPOE_DRIVER=TRUE \
-DKDIR=${KERNEL_DIR} \
-DLUA=5.3 \
-DMODULES_KDIR=${KERNEL_VERSION}${KERNEL_SUFFIX} \
- -DCPACK_TYPE=Debian11 ..
+ -DCPACK_TYPE=Debian12 ..
make
cpack -G DEB
diff --git a/packages/linux-kernel/build-intel-qat.sh b/packages/linux-kernel/build-intel-qat.sh
index a6627c50..e1c61c92 100755
--- a/packages/linux-kernel/build-intel-qat.sh
+++ b/packages/linux-kernel/build-intel-qat.sh
@@ -14,102 +14,97 @@ fi
. ${KERNEL_VAR_FILE}
-declare -a intel=(
- "https://dev.packages.vyos.net/source-mirror/QAT1.7.L.4.20.0-00001.tar.gz"
-)
-
-for url in "${intel[@]}"
-do
- cd ${CWD}
-
- DRIVER_FILE=$(basename ${url} | sed -e s/tar_0/tar/)
- DRIVER_DIR="${DRIVER_FILE%.tar.gz}"
- DRIVER_NAME="QAT"
- DRIVER_VERSION=$(echo ${DRIVER_DIR} | awk -F${DRIVER_NAME} '{print $2}')
- DRIVER_VERSION_EXTRA="-0"
-
- # Build up Debian related variables required for packaging
- DEBIAN_ARCH=$(dpkg --print-architecture)
- DEBIAN_DIR="${CWD}/vyos-intel-${DRIVER_NAME}_${DRIVER_VERSION}${DRIVER_VERSION_EXTRA}_${DEBIAN_ARCH}"
- DEBIAN_CONTROL="${DEBIAN_DIR}/DEBIAN/control"
- DEBIAN_POSTINST="${CWD}/vyos-intel-qat.postinst"
-
- # Fetch Intel driver source from SourceForge
- if [ -e ${DRIVER_FILE} ]; then
- rm -f ${DRIVER_FILE}
- fi
- curl -L -o ${DRIVER_FILE} ${url}
- if [ "$?" -ne "0" ]; then
- exit 1
- fi
-
- # Unpack archive
- if [ -d ${DRIVER_DIR} ]; then
- rm -rf ${DRIVER_DIR}
- fi
- mkdir -p ${DRIVER_DIR}
- tar -C ${DRIVER_DIR} -xf ${DRIVER_FILE}
-
- cd ${DRIVER_DIR}
- if [ -z $KERNEL_DIR ]; then
- echo "KERNEL_DIR not defined"
- exit 1
- fi
-
- echo "I: Compile Kernel module for Intel ${DRIVER_NAME} driver"
- mkdir -p \
- ${DEBIAN_DIR}/lib/firmware \
- ${DEBIAN_DIR}/usr/sbin \
- ${DEBIAN_DIR}/usr/lib/x86_64-linux-gnu \
- ${DEBIAN_DIR}/etc/init.d
- KERNEL_SOURCE_ROOT=${KERNEL_DIR} ./configure --enable-kapi --enable-qat-lkcf
- make -j $(getconf _NPROCESSORS_ONLN) all
- make INSTALL_MOD_PATH=${DEBIAN_DIR} INSTALL_FW_PATH=${DEBIAN_DIR} \
- qat-driver-install adf-ctl-all
-
- if [ "x$?" != "x0" ]; then
- exit 1
- fi
-
- cp quickassist/qat/fw/*.bin ${DEBIAN_DIR}/lib/firmware
- cp build/*.so ${DEBIAN_DIR}/usr/lib/x86_64-linux-gnu
- cp build/adf_ctl ${DEBIAN_DIR}/usr/sbin
- cp quickassist/build_system/build_files/qat_service ${DEBIAN_DIR}/etc/init.d
- cp build/usdm_drv.ko ${DEBIAN_DIR}/lib/modules/${KERNEL_VERSION}${KERNEL_SUFFIX}/updates/drivers
- chmod 644 ${DEBIAN_DIR}/lib/firmware/*
- chmod 755 ${DEBIAN_DIR}/etc/init.d/* ${DEBIAN_DIR}/usr/local/bin/*
-
- if [ -f ${DEBIAN_DIR}.deb ]; then
- rm ${DEBIAN_DIR}.deb
- fi
-
- # build Debian package
- echo "I: Building Debian package vyos-intel-${DRIVER_NAME}"
- cd ${CWD}
-
- # delete non required files which are also present in the kernel package
- # und thus lead to duplicated files
- find ${DEBIAN_DIR} -name "modules.*" | xargs rm -f
-
- echo "#!/bin/sh" > ${DEBIAN_POSTINST}
- echo "/sbin/depmod -a ${KERNEL_VERSION}${KERNEL_SUFFIX}" >> ${DEBIAN_POSTINST}
-
- fpm --input-type dir --output-type deb --name vyos-intel-${DRIVER_NAME} \
- --version ${DRIVER_VERSION}${DRIVER_VERSION_EXTRA} --deb-compression gz \
- --maintainer "VyOS Package Maintainers <maintainers@vyos.net>" \
- --description "Vendor based driver for Intel ${DRIVER_NAME}" \
- --depends linux-image-${KERNEL_VERSION}${KERNEL_SUFFIX} \
- --license "GPL2" -C ${DEBIAN_DIR} --after-install ${DEBIAN_POSTINST}
-
- echo "I: Cleanup ${DRIVER_NAME} source"
- cd ${CWD}
- if [ -e ${DRIVER_FILE} ]; then
- rm -f ${DRIVER_FILE}
- fi
- if [ -d ${DRIVER_DIR} ]; then
- rm -rf ${DRIVER_DIR}
- fi
- if [ -d ${DEBIAN_DIR} ]; then
- rm -rf ${DEBIAN_DIR}
- fi
-done
+url="https://dev.packages.vyos.net/source-mirror/QAT1.7.L.4.20.0-00001.tar.gz"
+
+cd ${CWD}
+
+DRIVER_FILE=$(basename ${url} | sed -e s/tar_0/tar/)
+DRIVER_DIR="${DRIVER_FILE%.tar.gz}"
+DRIVER_NAME="QAT"
+DRIVER_VERSION=$(echo ${DRIVER_DIR} | awk -F${DRIVER_NAME} '{print $2}')
+DRIVER_VERSION_EXTRA="-0"
+
+# Build up Debian related variables required for packaging
+DEBIAN_ARCH=$(dpkg --print-architecture)
+DEBIAN_DIR="${CWD}/vyos-intel-${DRIVER_NAME}_${DRIVER_VERSION}${DRIVER_VERSION_EXTRA}_${DEBIAN_ARCH}"
+DEBIAN_CONTROL="${DEBIAN_DIR}/DEBIAN/control"
+DEBIAN_POSTINST="${CWD}/vyos-intel-qat.postinst"
+
+# Fetch Intel driver source from SourceForge
+if [ -e ${DRIVER_FILE} ]; then
+ rm -f ${DRIVER_FILE}
+fi
+curl -L -o ${DRIVER_FILE} ${url}
+if [ "$?" -ne "0" ]; then
+ exit 1
+fi
+
+# Unpack archive
+if [ -d ${DRIVER_DIR} ]; then
+ rm -rf ${DRIVER_DIR}
+fi
+mkdir -p ${DRIVER_DIR}
+tar -C ${DRIVER_DIR} -xf ${DRIVER_FILE}
+
+cd ${DRIVER_DIR}
+if [ -z $KERNEL_DIR ]; then
+ echo "KERNEL_DIR not defined"
+ exit 1
+fi
+
+echo "I: Compile Kernel module for Intel ${DRIVER_NAME} driver"
+mkdir -p \
+ ${DEBIAN_DIR}/lib/firmware \
+ ${DEBIAN_DIR}/usr/sbin \
+ ${DEBIAN_DIR}/usr/lib/x86_64-linux-gnu \
+ ${DEBIAN_DIR}/etc/init.d
+KERNEL_SOURCE_ROOT=${KERNEL_DIR} ./configure --enable-kapi --enable-qat-lkcf
+make -j $(getconf _NPROCESSORS_ONLN) all
+make INSTALL_MOD_PATH=${DEBIAN_DIR} INSTALL_FW_PATH=${DEBIAN_DIR} \
+ qat-driver-install adf-ctl-all
+
+if [ "x$?" != "x0" ]; then
+ exit 1
+fi
+
+cp quickassist/qat/fw/*.bin ${DEBIAN_DIR}/lib/firmware
+cp build/*.so ${DEBIAN_DIR}/usr/lib/x86_64-linux-gnu
+cp build/adf_ctl ${DEBIAN_DIR}/usr/sbin
+cp quickassist/build_system/build_files/qat_service ${DEBIAN_DIR}/etc/init.d
+cp build/usdm_drv.ko ${DEBIAN_DIR}/lib/modules/${KERNEL_VERSION}${KERNEL_SUFFIX}/updates/drivers
+chmod 644 ${DEBIAN_DIR}/lib/firmware/*
+chmod 755 ${DEBIAN_DIR}/etc/init.d/* ${DEBIAN_DIR}/usr/local/bin/*
+
+if [ -f ${DEBIAN_DIR}.deb ]; then
+ rm ${DEBIAN_DIR}.deb
+fi
+
+# build Debian package
+echo "I: Building Debian package vyos-intel-${DRIVER_NAME}"
+cd ${CWD}
+
+# delete non required files which are also present in the kernel package
+# und thus lead to duplicated files
+find ${DEBIAN_DIR} -name "modules.*" | xargs rm -f
+
+echo "#!/bin/sh" > ${DEBIAN_POSTINST}
+echo "/sbin/depmod -a ${KERNEL_VERSION}${KERNEL_SUFFIX}" >> ${DEBIAN_POSTINST}
+
+fpm --input-type dir --output-type deb --name vyos-intel-${DRIVER_NAME} \
+ --version ${DRIVER_VERSION}${DRIVER_VERSION_EXTRA} --deb-compression gz \
+ --maintainer "VyOS Package Maintainers <maintainers@vyos.net>" \
+ --description "Vendor based driver for Intel ${DRIVER_NAME}" \
+ --depends linux-image-${KERNEL_VERSION}${KERNEL_SUFFIX} \
+ --license "GPL2" -C ${DEBIAN_DIR} --after-install ${DEBIAN_POSTINST}
+
+echo "I: Cleanup ${DRIVER_NAME} source"
+cd ${CWD}
+if [ -e ${DRIVER_FILE} ]; then
+ rm -f ${DRIVER_FILE}
+fi
+if [ -d ${DRIVER_DIR} ]; then
+ rm -rf ${DRIVER_DIR}
+fi
+if [ -d ${DEBIAN_DIR} ]; then
+ rm -rf ${DEBIAN_DIR}
+fi \ No newline at end of file
diff --git a/packages/netfilter/.gitignore b/packages/netfilter/.gitignore
deleted file mode 100644
index 5f482452..00000000
--- a/packages/netfilter/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-pkg-conntrack-tools/
-pkg-libnetfilter-conntrack/
-pkg-libnftnl/
-pkg-nftables/
diff --git a/packages/netfilter/Jenkinsfile b/packages/netfilter/Jenkinsfile
deleted file mode 100644
index d79076f0..00000000
--- a/packages/netfilter/Jenkinsfile
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright (C) 2020-2021 VyOS maintainers and contributors
-//
-// This program is free software; you can redistribute it and/or modify
-// in order to easy exprort images built to "external" world
-// it under the terms of the GNU General Public License version 2 or later as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-@NonCPS
-
-// Using a version specifier library, use 'current' branch. The underscore (_)
-// is not a typo! You need this underscore if the line immediately after the
-// @Library annotation is not an import statement!
-@Library('vyos-build@current')_
-
-def pkgList = [
- // libnftnl
- ['name': 'pkg-libnftnl',
- 'scmCommit': 'debian/1.2.3-1',
- 'scmUrl': 'https://salsa.debian.org/pkg-netfilter-team/pkg-libnftnl.git',
- 'buildCmd': 'dpkg-buildpackage -uc -us -tc -b'],
-
- // nftables
- ['name': 'pkg-nftables',
- 'scmCommit': 'debian/1.0.5-1',
- 'scmUrl': 'https://salsa.debian.org/pkg-netfilter-team/pkg-nftables.git',
- 'buildCmd': '''sudo dpkg -i ../libnftnl*.deb;
- sed -i "s/debhelper-compat.*/debhelper-compat (= 12),/" debian/control;
- sudo apt-get update; sudo apt-get install -y libeditreadline-dev;
- dpkg-buildpackage -uc -us -tc -b'''],
-
- // libnetfilter-conntrack
- ['name': 'pkg-libnetfilter-conntrack',
- 'scmCommit': 'debian/1.0.9-1',
- 'scmUrl': 'https://salsa.debian.org/pkg-netfilter-team/pkg-libnetfilter-conntrack.git',
- 'buildCmd': 'dpkg-buildpackage -uc -us -tc -b'],
-
- // conntrack-tools
- ['name': 'pkg-conntrack-tools',
- 'scmCommit': 'debian/1%1.4.6-2',
- 'scmUrl': 'https://salsa.debian.org/pkg-netfilter-team/pkg-conntrack-tools.git',
- 'buildCmd': '''sudo dpkg -i ../libnetfilter*.deb && dpkg-buildpackage -uc -us -tc -b'''],
-]
-
-// Start package build using library function from https://github.com/vyos/vyos-build
-buildPackage('Netfilter', pkgList, null, true)
diff --git a/packages/ocserv/.gitignore b/packages/ocserv/.gitignore
deleted file mode 100644
index 88e6b112..00000000
--- a/packages/ocserv/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-ocserv/
diff --git a/packages/ocserv/Jenkinsfile b/packages/ocserv/Jenkinsfile
deleted file mode 100644
index f0b3e9cf..00000000
--- a/packages/ocserv/Jenkinsfile
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright (C) 2020 VyOS maintainers and contributors
-//
-// This program is free software; you can redistribute it and/or modify
-// in order to easy exprort images built to "external" world
-// it under the terms of the GNU General Public License version 2 or later as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-@NonCPS
-
-// Using a version specifier library, use 'equuleus' branch. The underscore (_)
-// is not a typo! You need this underscore if the line immediately after the
-// @Library annotation is not an import statement!
-@Library('vyos-build@current')_
-
-def pkgList = [
- ['name': 'ocserv',
- 'scmCommit': 'debian/1.1.6-2',
- 'scmUrl': 'https://salsa.debian.org/debian/ocserv.git',
- 'buildCmd': 'dpkg-buildpackage -uc -us -tc -b'],
-]
-
-// Start package build using library function from https://github.com/vyos/vyos-build
-buildPackage('ocserv', pkgList, null, true, "**/packages/ocserv/*")
diff --git a/packages/podman/.gitignore b/packages/podman/.gitignore
deleted file mode 100644
index 1055abad..00000000
--- a/packages/podman/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-podman/
diff --git a/packages/podman/Jenkinsfile b/packages/podman/Jenkinsfile
deleted file mode 100644
index 6c4dd59d..00000000
--- a/packages/podman/Jenkinsfile
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright (C) 2022 VyOS maintainers and contributors
-//
-// This program is free software; you can redistribute it and/or modify
-// in order to easy exprort images built to "external" world
-// it under the terms of the GNU General Public License version 2 or later as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-@NonCPS
-
-// Using a version specifier library, use 'current' branch. The underscore (_)
-// is not a typo! You need this underscore if the line immediately after the
-// @Library annotation is not an import statement!
-@Library('vyos-build@current')_
-
-def pkgList = [
- ['name': 'podman',
- 'scmCommit': 'v4.3.1',
- 'scmUrl': 'https://github.com/containers/podman',
- 'buildCmd': 'cd ..; ./build.sh'],
-]
-
-// Start package build using library function from https://github.com/vyos/vyos-build
-buildPackage('podman', pkgList, null, true, "**/packages/podman/*")
diff --git a/packages/podman/build.sh b/packages/podman/build.sh
deleted file mode 100755
index 08aa319a..00000000
--- a/packages/podman/build.sh
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-CWD=$(pwd)
-set -e
-
-SRC=podman
-
-if [ ! -d ${SRC} ]; then
- echo "${SRC} directory does not exists, please 'git clone'"
- exit 1
-fi
-
-# Setup Go
-export PATH=/opt/go/bin:$PATH
-
-# Build Debian package
-cd ${SRC}
-version="$(git describe --tags | tr _ .)"
-echo "I: Build Debian $SRC Package"
-
-PREFIX=/usr DESTDIR=tmp make all install.systemd install
-
-rm -f *.deb
-fpm --input-type dir --output-type deb --name podman \
- --maintainer "VyOS Package Maintainers <maintainers@vyos.net>" \
- --description "engine to run OCI-based containers in Pods" \
- --depends "libgpgme11,conmon (>= 2.0.18~), containernetworking-plugins (>= 0.8.7), golang-github-containers-common, crun, iptables" \
- --architecture $(dpkg-architecture -qDEB_HOST_ARCH) \
- --version $(git describe --tags | cut -c 2-) \
- --url "https://github.com/containers/podman" \
- --deb-compression gz -C tmp
-
-mv *.deb ..
diff --git a/packages/sstp-client/.gitignore b/packages/sstp-client/.gitignore
deleted file mode 100644
index 5a3cee2b..00000000
--- a/packages/sstp-client/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-sstp-client/
diff --git a/packages/sstp-client/Jenkinsfile b/packages/sstp-client/Jenkinsfile
deleted file mode 100644
index 9ee4f2c7..00000000
--- a/packages/sstp-client/Jenkinsfile
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright (C) 2022 VyOS maintainers and contributors
-//
-// This program is free software; you can redistribute it and/or modify
-// in order to easy exprort images built to "external" world
-// it under the terms of the GNU General Public License version 2 or later as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-@NonCPS
-
-// Using a version specifier library, use 'current' branch. The underscore (_)
-// is not a typo! You need this underscore if the line immediately after the
-// @Library annotation is not an import statement!
-@Library('vyos-build@current')_
-
-def pkgList = [
- ['name': 'sstp-client',
- 'scmCommit': 'debian/1.0.18-1',
- 'scmUrl': 'https://salsa.debian.org/debian/sstp-client',
- 'buildCmd': 'dpkg-buildpackage -uc -us -tc -b'],
-]
-
-// Start package build using library function from https://github.com/vyos/vyos-build
-buildPackage('sstp-client', pkgList, null, true, "**/packages/sstp-client/*")
diff --git a/packages/strongswan/Jenkinsfile b/packages/strongswan/Jenkinsfile
index 6f8862d5..019761dd 100644
--- a/packages/strongswan/Jenkinsfile
+++ b/packages/strongswan/Jenkinsfile
@@ -21,7 +21,7 @@
def pkgList = [
['name': 'strongswan',
- 'scmCommit': 'debian/5.9.8-3',
+ 'scmCommit': 'debian/5.9.8-5',
'scmUrl': 'https://salsa.debian.org/debian/strongswan.git',
'buildCmd': 'sudo apt-get install -y libcurl4-openssl-dev; cd ..; ./build.sh'],
]
diff --git a/scripts/check-qemu-install b/scripts/check-qemu-install
index 246f90b8..7aedd1a1 100755
--- a/scripts/check-qemu-install
+++ b/scripts/check-qemu-install
@@ -1,6 +1,6 @@
#!/usr/bin/env python3
#
-# Copyright (C) 2019-2022, VyOS maintainers and contributors
+# Copyright (C) 2019-2023, VyOS maintainers and contributors
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 or later as
@@ -146,7 +146,7 @@ def get_qemu_cmd(name, enable_kvm, enable_uefi, disk_img, raid=None, iso_img=Non
-smp sockets=1,cpus={cpucount},cores=1 \
-cpu host \
{uefi} \
- -m 2G \
+ -m 3G \
-vga none \
-nographic \
-machine accel=kvm \
@@ -185,6 +185,10 @@ def shutdownVM(c, log, message=''):
log.info('Shutting down virtual machine')
for i in range(30):
log.info('Waiting for shutdown...')
+ # Shutdown in qemu doesnt work first time
+ # Use this workaround
+ # https://vyos.dev/T5024
+ c.sendline('poweroff now')
if not c.isalive():
log.info('VM is shut down!')
break
diff --git a/scripts/make-version-file b/scripts/make-version-file
index e6d327ab..a5d94a65 100755
--- a/scripts/make-version-file
+++ b/scripts/make-version-file
@@ -108,11 +108,11 @@ PRETTY_NAME="VyOS {version} ({build_config['release_train']})"
NAME="VyOS"
VERSION_ID="{version}"
VERSION="{version} ({build_config['release_train']})"
-VERSION_CODENAME=bullseye
+VERSION_CODENAME=bookworm
ID=vyos
HOME_URL="https://vyos.io"
SUPPORT_URL="https://support.vyos.io"
-BUG_REPORT_URL="https://phabricator.vyos.net"
+BUG_REPORT_URL="https://vyos.dev"
"""
os.makedirs(os.path.join(defaults.CHROOT_INCLUDES_DIR, 'usr/share/vyos'), exist_ok=True)