diff options
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) |