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

cat << EOF
OFED-internal-25.07-0.9.7:

clusterkit:
mlnx_ofed_clusterkit/clusterkit-1.15.472-1.20250722.023d2d0.src.rpm

dpcp:
/sw/release/sw_acceleration/dpcp/dpcp-1.1.53-1.src.rpm

hcoll:
mlnx_ofed_hcol/hcoll-4.8.3232-1.20250722.eb38d647.src.rpm

ibarr:
https://github.com/Mellanox/ip2gid master
commit 44ac1948d0d604c723bc36ade0af02c54e7fc7d2

ibdump:
https://github.com/Mellanox/ibdump master
commit af4ab87f4e00e692d642644600800e7e6afff4e2

ibsim:
mlnx_ofed_ibsim/ibsim-0.12.1.tar.gz

ibutils2:
ibutils2/ibutils2-2.1.1-0.22300.MLNX20250720.g13bb9fedb.tar.gz

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

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

kernel-mft:
mlnx_ofed_mft/kernel-mft-4.33.0-169.src.rpm

knem:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/knem.git mellanox-master
commit 9a2e7b118f5687409ce557aa2f5fc68d1f9197b2

libvma:
vma/source_rpms//libvma-9.8.72-1.src.rpm

libxlio:
/sw/release/sw_acceleration/xlio/libxlio-3.51.1-1.src.rpm

mlnx-dpdk:
https://github.com/Mellanox/dpdk.org mlnx_dpdk_22.11_last_stable
commit 647647c050bac3955beb43e453ea8109d308ab3f

mlnx-ethtool:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/ethtool.git mlnx_ofed_25_07
commit c0747dd036ca2a1c611fd685922fb45d1347c7bd

mlnx-iproute2:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/iproute2.git mlnx_ofed_25_07
commit 87fb002b0ebf0fbbb2cafd1ee47e9b2797c68cb6

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

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

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

mlnx-tools:
https://github.com/Mellanox/mlnx-tools mlnx_ofed
commit abe53e442e0735e06c8b714872da0dc090c93df4

mlx-steering-dump:
https://github.com/Mellanox/mlx_steering_dump mlnx_ofed_23_04
commit fc616d9a8f62113b0da6fc5a8948b11177d8461e

mpitests:
mlnx_ofed_mpitest/mpitests-3.2.24-20250722.2ffc2d6.src.rpm

multiperf:
https://git-nbu.nvidia.com/r/a/Performance/multiperf rdma-core-support
commit d3fad92dc6984e43cc5377ba0a3126808432ce2d

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

openmpi:
mlnx_ofed_ompi_1.8/openmpi-4.1.9a1-1.20250722.92f9fca4eb.src.rpm

opensm:
mlnx_ofed_opensm/opensm-5.24.0.MLNX20250722.185f9e32.tar.gz

openvswitch:
https://git-nbu.nvidia.com/r/a/sdn/ovs.git doca_2_6
commit 1a6f66e13713ff5c6861a540c6e014f8cd76c139

perftest:
mlnx_ofed_perftest/perftest-25.07.0-0.104.g0c03534.tar.gz

rdma-core:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/rdma-core.git mlnx_ofed_25_07
commit e37a19de0977e89de031319d82bb9dbd1f608d2d

rshim:
/sw_mc_soc_release/packages//rshim-2.4.4-0.g4a0b69d.src.rpm

sharp:
mlnx_ofed_sharp/sharp-3.12.0.MLNX20250720.6f9a216b.tar.gz

sockperf:
sockperf/sockperf-3.10-0.git5ebd327da983.src.rpm

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

ucx:
mlnx_ofed_ucx/ucx-1.19.0-1.20250722.13ae265cb.src.rpm

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

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

xpmem:
https://git-nbu.nvidia.com/r/a/mlnx_ofed/xpmem.git mellanox-master
commit 653777339226f6459873f0e566d547db7fcf7061

EOF

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

pkglist1=
pkglist2=

if [ -x /usr/bin/dpkg ]; then
    pkglist1=$(dpkg --list | grep -E "clusterkit|dpcp|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|libibumad-dev|libibumad3|librdmacm-dev|librdmacm1|rdmacm-utils|srptools|python3-pyverbs|infiniband-diags|libibmad5|libibmad-dev|libibnetdisc5|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|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"
