diff options
-rw-r--r-- | .github/PULL_REQUEST_TEMPLATE.md | 2 | ||||
-rw-r--r-- | CONTRIBUTING.md | 8 | ||||
-rw-r--r-- | data/defaults.toml | 2 | ||||
-rwxr-xr-x | data/live-build-config/hooks/live/18-enable-disable_services.chroot | 1 | ||||
-rw-r--r-- | data/live-build-config/includes.chroot/usr/share/vyos/default_motd | 2 | ||||
-rw-r--r-- | docker/Dockerfile | 22 | ||||
-rwxr-xr-x | docker/entrypoint.sh | 7 | ||||
-rwxr-xr-x | packages/hostap/build.sh | 2 | ||||
-rw-r--r-- | packages/linux-kernel/.gitignore | 1 | ||||
-rwxr-xr-x | packages/linux-kernel/build-intel-qat.sh | 193 | ||||
-rwxr-xr-x | scripts/check-qemu-install | 6 |
11 files changed, 125 insertions, 121 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/defaults.toml b/data/defaults.toml index 975f89bb..018ee387 100644 --- a/data/defaults.toml +++ b/data/defaults.toml @@ -12,7 +12,7 @@ vyos_mirror = "http://dev.packages.vyos.net/repositories/current" vyos_branch = "current" release_train = "current" -kernel_version = "6.1.11" +kernel_version = "6.1.13" bootloaders = "syslinux,grub-efi" website_url = "https://vyos.io" 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 a4d7bb13..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 @@ -52,6 +52,7 @@ 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/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 27a374ba..c9f0566b 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -43,10 +43,6 @@ RUN grep "VERSION_ID" /etc/os-release || (echo 'VERSION_ID="12"' >> /etc/os-rele 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 /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 \ @@ -261,9 +257,6 @@ RUN export LIBYANG_COMMIT="v2.0.164" && \ cd libyang && git checkout $LIBYANG_COMMIT && apkg build -i && \ cd pkg/pkgs/debian-*/libyang2_* && dpkg -i *.deb -# FRR documentation also has a dependency on an up to date spinx version -RUN pip install sphinx==4.0.2 - # Packages needed to build FRR itself # https://github.com/FRRouting/frr/blob/master/doc/developer/building-libyang.rst # for more info @@ -276,6 +269,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 \ @@ -290,6 +284,7 @@ RUN apt-get update && apt-get install -y \ python3 \ python3-dev \ python3-pytest \ + python3-sphinx \ texinfo # Packages needed for hvinfo @@ -474,10 +469,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 \ @@ -592,7 +590,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/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 && \ @@ -605,4 +604,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/hostap/build.sh b/packages/hostap/build.sh index 4e140d80..5e9767e7 100755 --- a/packages/hostap/build.sh +++ b/packages/hostap/build.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash CWD=$(pwd) set -e 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-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/scripts/check-qemu-install b/scripts/check-qemu-install index ff818a10..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 @@ -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 |