#!/bin/bash
usage()
{
	cat <<EOF
Usage: $0 [options]

Options:
    -s       Show package name and version number.
    -n       Show numerical version number only.
    -l       List installed packages details (Default option).
EOF
}
if [ "X$1" == "X-s" ]; then echo OFED-internal-26.04-0.8.5:; exit 0; fi
if [ "X$1" == "X-n" ]; then echo 26.04-0.8.5; exit 0; fi
if [ "X$1" != "X-l" ] && [ "X$1" != "X" ]; then usage; exit 1; fi

cat << EOF
OFED-internal-26.04-0.8.5:

dpcp:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/dpcp/1.1.61-3/dpcp-1.1.61-3.src.rpm
ibarr:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/ibarr/2604.0.0-1/ibarr-2604.0.0-1.src.rpm
ibdump:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/ibdump/6.0.0-3/ibdump-6.0.0-3.src.rpm
ibsim:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/ibsim/0.12.1-4/ibsim-0.12.1-4.src.rpm
ibutils2:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/ibutils2/2.1.1-0.22600.MLNX202605051000.g86b0a70a2/ibutils2-2.1.1-0.22600.MLNX202605051000.g86b0a70a2.src.rpm
iser:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_26_04
commit 1492b14fe0bd43fe6e802867b82919969e5800fa

isert:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_26_04
commit 1492b14fe0bd43fe6e802867b82919969e5800fa

kernel-mft:
mlnx_ofed_mft/kernel-mft-4.36.0-147.src.rpm

libvma:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/libvma/9.8.84-1/libvma-9.8.84-1.src.rpm
libxlio:
/sw/release/sw_acceleration/xlio/libxlio-3.70.3-1.src.rpm

mlnx-ethtool:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/mlnx-ethtool/2604.0.0-1/mlnx-ethtool-2604.0.0-1.src.rpm
mlnx-iproute2:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/mlnx-iproute2/2604.0.0-1/mlnx-iproute2-2604.0.0-1.src.rpm
mlnx-nfsrdma:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_26_04
commit 1492b14fe0bd43fe6e802867b82919969e5800fa

mlnx-nvme:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_26_04
commit 1492b14fe0bd43fe6e802867b82919969e5800fa

mlnx-ofa_kernel:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_26_04
commit 1492b14fe0bd43fe6e802867b82919969e5800fa

mlnx-tools:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/mlnx-tools/2604.0.13-1/mlnx-tools-2604.0.13-1.src.rpm
mlx-steering-dump:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/mlx-steering-dump/1.0.0-1/mlx-steering-dump-1.0.0-1.src.rpm
multiperf:
https://git-nbu.nvidia.com/r/a/Performance/multiperf rdma-core-support
commit d3fad92dc6984e43cc5377ba0a3126808432ce2d

openmpi:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/openmpi/5.0.10rc2.2605121430-1.b99be7132e/openmpi-5.0.10rc2.2605121430-1.b99be7132e.src.rpm
opensm:
mlnx_ofed_opensm/opensm-5.27.1-202605051000.ee5d4a31.tar.gz

openvswitch:
https://git-nbu.nvidia.com/r/a/sdn/ovs.git 3.4_head
commit b4dd4cf0a3479157764aae7c90e66b5200e6faf8

perftest:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/perftest/26.04.16-1/perftest-26.04.16-1.src.rpm
rdma-core:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/rdma-core/2604.0.7-1/rdma-core-2604.0.7-1.src.rpm
rshim:
/sw_mc_soc_release/packages//rshim-2.7.3-0.g17aaf11.src.rpm

sockperf:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/sockperf/3.1-1/sockperf-3.1-1.src.rpm
srp:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_26_04
commit 1492b14fe0bd43fe6e802867b82919969e5800fa

ucx:
mlnx_ofed_ucx/ucx-1.21.0.20260504-1.65a1a71af.src.rpm

virtiofs:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_26_04
commit 1492b14fe0bd43fe6e802867b82919969e5800fa

xpmem:
https://doca-repo-prod.nvidia.com/public-nsb/repo/doca/doca-3.4.0/generic-rpm/x86_64/xpmem/2604.0.2-1/dkms/xpmem-2604.0.2-1.src.rpm
EOF

echo
echo Installed Packages:
echo -------------------

pkglist1=
pkglist2=

if [ -x /usr/bin/dpkg ]; then
    pkglist1=$(dpkg --list | grep -E "doca-openvswitch-common|doca-openvswitch-ipsec|doca-openvswitch-pki|doca-openvswitch-source|doca-openvswitch-switch|doca-openvswitch-test|doca-openvswitch-testcontroller|doca-openvswitch-vtep|python3-doca-openvswitch|doca-openvswitch-dev|dpcp|ibarr|ibdump|ibsim|ibsim-doc|ibutils2|iser-dkms|isert-dkms|kernel-mft-dkms|libvma|libvma-dev|libvma-dbg|libvma-utils|libxlio|libxlio-dev|libxlio-dbg|libxlio-utils|mlnx-ethtool|mlnx-iproute2|mlnx-nfsrdma-dkms|mlnx-nvme-dkms|mlnx-ofed-kernel-utils|mlnx-ofed-kernel-dkms|mlnx-tools|mlx-steering-dump|openmpi|opensm|opensm-doc|libopensm|libopensm-devel|perftest|rdma-core|ibacm|ibverbs-providers|ibverbs-utils|libibverbs-dev|libibverbs1|libibumad-dev|libibumad3|librdmacm-dev|librdmacm1|rdmacm-utils|srptools|python3-pyverbs|infiniband-diags|libibmad5|libibmad-dev|libibnetdisc5|libibnetdisc-dev|rshim|sockperf|srp-dkms|ucx-dev|ucx|ucx-xpmem|ucx-cuda|ucx-gdrcopy|virtiofs-dkms|xpmem|libxpmem-dev|libxpmem0|xpmem-dkms|xpmem-modules")
fi

if (which rpm >/dev/null 2>&1); then
    pkglist2=$(rpm -qa --queryformat "[%{NAME}]
" | grep -E "kernel-ib|dpcp|ibarr|ibdump|ibsim|ibutils2|^iser|kmod-iser|iser.*kmp|^isert|kmod-isert|isert.*kmp|kernel-mft|libvma|libxlio|mlnx-ethtool|mlnx-iproute2|mlnx-nfsrdma|mlnx-nvme|mlnx-ofa_kernel|mlnx-tools|mlx-steering-dump|multiperf|openmpi|opensm|openvswitch|perftest|rdma-core|ibacm|libibcm|libibumad|libibverbs|librdmacm|srp_daemon|infiniband-diags|python3-pyverbs|rshim|sockperf|^srp$|kmod-srp|srp.*kmp|ucx|^virtiofs$|kmod-virtiofs|virtiofs.*kmp|xpmem|neohost-backend|neohost-sdk")
fi

echo -e "$pkglist1"
echo -e "$pkglist2"
