#!/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-25.04-0.6.1.0.100:; exit 0; fi
if [ "X$1" == "X-n" ]; then echo 25.04-0.6.1.0.100; exit 0; fi
if [ "X$1" != "X-l" ] && [ "X$1" != "X" ]; then usage; exit 1; fi

cat << EOF
OFED-internal-25.04-0.6.1.0.100:

clusterkit:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/clusterkit-1.15.470-1.2504061.20250428.80af081.src.rpm

dpcp:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/dpcp-1.1.52-1.2504061.src.rpm

fwctl:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

hcoll:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/hcoll-4.8.3230-1.20250428.1a4e38d7.src.rpm

ibarr:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/ibarr-0.1.3-1.2504061.src.rpm

ibdump:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/ibdump-6.0.0-1.2504061.src.rpm

ibsim:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/ibsim-0.12-1.2504061.src.rpm

ibutils2:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/ibutils2-2.1.1-0.22200.MLNX20250423.g91730569c.2504061.src.rpm

iser:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

isert:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

kernel-mft:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/kernel-mft-4.32.0-120.src.rpm

knem:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/knem-1.1.4.90mlnx3-OFED.23.10.0.2.1.1.src.rpm

libvma:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/libvma-9.8.71-1.src.rpm

libxlio:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/libxlio-3.50.3-1.src.rpm

mlnx-dpdk:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/mlnx-dpdk-22.11.0-2504.1.0.2504061.src.rpm

mlnx-ethtool:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/mlnx-ethtool-6.11-1.2504061.src.rpm

mlnx-iproute2:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/mlnx-iproute2-6.12.0-1.2504061.src.rpm

mlnx-nfsrdma:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

mlnx-nvme:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

mlnx-ofa_kernel:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

mlnx-tools:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/mlnx-tools-25.01-0.2504061.src.rpm

mlx-steering-dump:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/mlx-steering-dump-1.0.0-0.2504061.src.rpm

mpitests:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/mpitests-3.2.24-2ffc2d6.2504061.src.rpm

multiperf:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/multiperf-3.0-3.0.2504061.src.rpm

ofed-docs:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/ofed-docs.git mlnx_ofed-4.0
commit 3d1b0afb7bc190ae5f362223043f76b2b45971cc

openmpi:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/openmpi-4.1.7rc1-1.2504061.20250428.6d9519e4c3.src.rpm

opensm:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/opensm-5.23.00.MLNX20250423.ac516692-0.1.2504061.src.rpm

openvswitch:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/openvswitch-2.17.8-1.2504061.src.rpm

perftest:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/perftest-25.04.0-0.84.g97da83e.2504061.src.rpm

rdma-core:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/rdma-core-2501mlnx56-1.2504061.src.rpm

rshim:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/rshim-2.3.8-0.geaa5c03.src.rpm

sharp:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/sharp-3.11.0.MLNX20250423.66d243a0-1.2504061.src.rpm

sockperf:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/sockperf-3.10-0.git5ebd327da983.2504061.src.rpm

srp:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

ucx:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/ucx-1.19.0-1.2504061.20250428.6ecd4e5ae.src.rpm

virtiofs:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/mlnx-ofa_kernel-4.0.git mlnx_ofed_25_04_vgt
commit b1cea09157a71837f76f8f6fe5b9816d3506d412

xpmem-lib:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/xpmem-lib-2.7-0.2310055.src.rpm

xpmem:
/sw/release/mlnx_ofed/IBHPC/OFED-internal-25.04-0.6.1/SRPMS/xpmem-2.7.4-1.2504061.src.rpm

EOF

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

pkglist1=
pkglist2=

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

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

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