git: edf44a2d39d0 - main - filesystems/moosefs-*: Add new ports MooseFS 4.58.3

From: Vladimir Druzenko <vvd_at_FreeBSD.org>
Date: Thu, 12 Feb 2026 22:25:08 UTC
The branch main has been updated by vvd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=edf44a2d39d07f2122476f9ca5e4663367ed5cc6

commit edf44a2d39d07f2122476f9ca5e4663367ed5cc6
Author:     Piotr R. Konopelko (MooseFS) <piotr.konopelko@moosefs.com>
AuthorDate: 2026-02-12 21:56:22 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2026-02-12 22:24:06 +0000

    filesystems/moosefs-*: Add new ports MooseFS 4.58.3
    
    MooseFS Distributed Storage – Open Source, Petabyte, Fault-Tolerant,
    Highly Performing, Scalable Network Distributed File System /
    Software-Defined Storage.
    
    Official site: https://moosefs.com/
    Source repository: https://github.com/moosefs/moosefs/
    Documentation: https://docs.moosefs.com/
    
    PR:             289966
    Co-authored-by: Vladimir Druzenko <vvd@FreeBSD.org>
---
 filesystems/Makefile                               |   8 ++
 filesystems/moosefs-cgi/Makefile                   |  20 ++-
 filesystems/moosefs-cgi/pkg-descr                  |   2 +-
 filesystems/moosefs-cgi/pkg-plist                  |   8 --
 filesystems/moosefs-chunkserver/Makefile           |   4 +-
 filesystems/moosefs-chunkserver/pkg-plist          |   6 +-
 filesystems/moosefs-cli/Makefile                   |   4 +-
 filesystems/moosefs-client/Makefile                |   6 +-
 filesystems/moosefs-client/pkg-plist               | 154 +++++++++++++--------
 filesystems/moosefs-gui/Makefile                   |   8 +-
 filesystems/moosefs-gui/pkg-descr                  |   2 +-
 filesystems/moosefs-gui/pkg-plist                  |  60 +++++++-
 filesystems/moosefs-master/Makefile                |  47 +++----
 filesystems/moosefs-master/distinfo                |   6 +-
 filesystems/moosefs-master/files/mfscgiserv.in     |  29 ----
 filesystems/moosefs-master/files/mfsgui.in         |  30 ++++
 .../{pkg-message-cgiserv.in => pkg-message-gui.in} |   6 +-
 filesystems/moosefs-master/pkg-plist               |  16 ++-
 filesystems/moosefs-metalogger/Makefile            |   4 +-
 filesystems/moosefs-metalogger/pkg-plist           |   4 +-
 filesystems/moosefs-netdump/Makefile               |   4 +-
 21 files changed, 262 insertions(+), 166 deletions(-)

diff --git a/filesystems/Makefile b/filesystems/Makefile
index ac97631af284..d8ec60a6fc12 100644
--- a/filesystems/Makefile
+++ b/filesystems/Makefile
@@ -57,6 +57,14 @@
     SUBDIR += ltfs
     SUBDIR += mergerfs
     SUBDIR += mhddfs
+    SUBDIR += moosefs-cgi
+    SUBDIR += moosefs-chunkserver
+    SUBDIR += moosefs-cli
+    SUBDIR += moosefs-client
+    SUBDIR += moosefs-gui
+    SUBDIR += moosefs-master
+    SUBDIR += moosefs-metalogger
+    SUBDIR += moosefs-netdump
     SUBDIR += moosefs2-cgi
     SUBDIR += moosefs2-cgiserv
     SUBDIR += moosefs2-chunkserver
diff --git a/filesystems/moosefs-cgi/Makefile b/filesystems/moosefs-cgi/Makefile
index 7d037c1e09ae..cba93ca6c02f 100644
--- a/filesystems/moosefs-cgi/Makefile
+++ b/filesystems/moosefs-cgi/Makefile
@@ -1,9 +1,19 @@
-PKGNAMESUFFIX=	-cgi
+PORTNAME=	moosefs-cgi
+DISTVERSION=	4.58.3
+CATEGORIES=	filesystems sysutils
 
-COMMENT=	MooseFS CGI interface
+MAINTAINER=	freebsd@moosefs.com
+COMMENT=	Meta package to redirect old -cgi package to new -gui package
+WWW=		https://moosefs.com/
 
-MFS_COMPONENT=	cgi
+LICENSE=	GPLv2
 
-MASTERDIR=	${.CURDIR}/../moosefs3-master
+DEPRECATED=		Renamed to moosefs-gui
+EXPIRATION_DATE=	2026-12-31
 
-.include "${MASTERDIR}/Makefile"
+RUN_DEPENDS=	moosefs-gui>0:filesystems/moosefs-gui
+USES=		metaport
+NO_ARCH=	yes
+NO_BUILD=	yes
+
+.include <bsd.port.mk>
diff --git a/filesystems/moosefs-cgi/pkg-descr b/filesystems/moosefs-cgi/pkg-descr
index 36025c132006..68d591850319 100644
--- a/filesystems/moosefs-cgi/pkg-descr
+++ b/filesystems/moosefs-cgi/pkg-descr
@@ -4,4 +4,4 @@ servers, which are visible to the user as one resource.
 
 For standard file operations MooseFS acts like any other Unix-like file system.
 
-This port provides: MooseFS CGI monitor.
+This port provides: MooseFS cgi package replacement.
diff --git a/filesystems/moosefs-cgi/pkg-plist b/filesystems/moosefs-cgi/pkg-plist
deleted file mode 100644
index d601df00caac..000000000000
--- a/filesystems/moosefs-cgi/pkg-plist
+++ /dev/null
@@ -1,8 +0,0 @@
-share/mfscgi/mfs.cgi
-share/mfscgi/mfs.css
-share/mfscgi/logomini.png
-share/mfscgi/index.html
-share/mfscgi/err.gif
-share/mfscgi/chart.cgi
-share/mfscgi/favicon.ico
-share/mfscgi/acidtab.js
diff --git a/filesystems/moosefs-chunkserver/Makefile b/filesystems/moosefs-chunkserver/Makefile
index ed032b71ec15..f02e028a2842 100644
--- a/filesystems/moosefs-chunkserver/Makefile
+++ b/filesystems/moosefs-chunkserver/Makefile
@@ -1,10 +1,10 @@
 PORTREVISION=	0
-PKGNAMESUFFIX=	-chunkserver
+PKGNAMESUFFIX=	-${MFS_COMPONENT}
 
 COMMENT=	MooseFS data storage and synchronization component
 
 MFS_COMPONENT=	chunkserver
 
-MASTERDIR=	${.CURDIR}/../moosefs3-master
+MASTERDIR=	${.CURDIR}/../moosefs-master
 
 .include "${MASTERDIR}/Makefile"
diff --git a/filesystems/moosefs-chunkserver/pkg-plist b/filesystems/moosefs-chunkserver/pkg-plist
index c255b94a42bd..0f80f0ebf9cc 100644
--- a/filesystems/moosefs-chunkserver/pkg-plist
+++ b/filesystems/moosefs-chunkserver/pkg-plist
@@ -1,13 +1,13 @@
 @sample etc/mfs/mfschunkserver.cfg.sample
 @sample etc/mfs/mfshdd.cfg.sample
+sbin/mfschunkdbdump
 sbin/mfschunkserver
 sbin/mfschunktool
 sbin/mfscsstatsdump
 share/man/man5/mfschunkserver.cfg.5.gz
 share/man/man5/mfshdd.cfg.5.gz
+share/man/man8/mfschunkdbdump.8.gz
 share/man/man8/mfschunkserver.8.gz
 share/man/man8/mfschunktool.8.gz
 share/man/man8/mfscsstatsdump.8.gz
-@owner mfs
-@group mfs
-@dir %%MFS_WORKDIR%%/mfs
+@dir(%%USER%%,%%GROUP%%,) %%MFS_WORKDIR%%/mfs
diff --git a/filesystems/moosefs-cli/Makefile b/filesystems/moosefs-cli/Makefile
index d8117e352456..8c81fabc302b 100644
--- a/filesystems/moosefs-cli/Makefile
+++ b/filesystems/moosefs-cli/Makefile
@@ -1,10 +1,10 @@
 PORTREVISION=	0
-PKGNAMESUFFIX=	-cli
+PKGNAMESUFFIX=	-${MFS_COMPONENT}
 
 COMMENT=	MooseFS command line interface
 
 MFS_COMPONENT=	cli
 
-MASTERDIR=	${.CURDIR}/../moosefs3-master
+MASTERDIR=	${.CURDIR}/../moosefs-master
 
 .include "${MASTERDIR}/Makefile"
diff --git a/filesystems/moosefs-client/Makefile b/filesystems/moosefs-client/Makefile
index a023f60580c4..df0e4ae4d7d8 100644
--- a/filesystems/moosefs-client/Makefile
+++ b/filesystems/moosefs-client/Makefile
@@ -1,10 +1,12 @@
 PORTREVISION=	0
-PKGNAMESUFFIX=	-client
+PKGNAMESUFFIX=	-${MFS_COMPONENT}
 
 COMMENT=	MooseFS client tools
 
+BROKEN_powerpc64=	fails to compile: mfs_fuse.c: internal compiler error: Segmentation fault
+
 MFS_COMPONENT=	client
 
-MASTERDIR=	${.CURDIR}/../moosefs3-master
+MASTERDIR=	${.CURDIR}/../moosefs-master
 
 .include "${MASTERDIR}/Makefile"
diff --git a/filesystems/moosefs-client/pkg-plist b/filesystems/moosefs-client/pkg-plist
index 2dc2199c4f06..c096bacd1167 100644
--- a/filesystems/moosefs-client/pkg-plist
+++ b/filesystems/moosefs-client/pkg-plist
@@ -1,88 +1,122 @@
-@sample etc/mfs/mfsmount.cfg.sample
-bin/mfsmount
 bin/mfsappendchunks
+bin/mfsarchive
 bin/mfscheckfile
+bin/mfschkarchive
+bin/mfsclonesclass
+bin/mfsclrarchive
+bin/mfscopyeattr
+bin/mfscopygoal
+bin/mfscopyquota
+bin/mfscopysclass
+bin/mfscopytrashretention
+bin/mfscopytrashtime
+bin/mfscreatepattern
+bin/mfscreatesclass
+bin/mfsdeleattr
+bin/mfsdeletepattern
+bin/mfsdeletesclass
+bin/mfsdelquota
+bin/mfsdiagtools
 bin/mfsdirinfo
+bin/mfseattr
+bin/mfsfacl
 bin/mfsfileinfo
+bin/mfsfilepaths
 bin/mfsfilerepair
-bin/mfsmakesnapshot
-bin/mfsrmsnapshot
+bin/mfsgeteattr
+bin/mfsgetfacl
 bin/mfsgetgoal
-bin/mfssetgoal
-bin/mfscopygoal
-bin/mfsrgetgoal
-bin/mfsrsetgoal
+bin/mfsgetquota
 bin/mfsgetsclass
-bin/mfssetsclass
-bin/mfscopysclass
-bin/mfsxchgsclass
-bin/mfslistsclass
+bin/mfsgettrashretention
 bin/mfsgettrashtime
-bin/mfssettrashtime
-bin/mfscopytrashtime
-bin/mfsrgettrashtime
-bin/mfsrsettrashtime
-bin/mfsgeteattr
+bin/mfsimportsclass
+bin/mfslistpattern
+bin/mfslistsclass
+bin/mfsmakesnapshot
+bin/mfsmodifysclass
+bin/mfsmount
+bin/mfspatadmin
+bin/mfsquota
+bin/mfsrenamesclass
+bin/mfsrmsnapshot
+bin/mfsscadmin
+bin/mfssclass
+bin/mfssetarchive
 bin/mfsseteattr
-bin/mfsdeleattr
-bin/mfscopyeattr
-bin/mfsgetquota
+bin/mfssetfacl
+bin/mfssetgoal
 bin/mfssetquota
-bin/mfsdelquota
-bin/mfscopyquota
-bin/mfschkarchive
-bin/mfsclrarchive
-bin/mfssetarchive
-bin/mfsfilepaths
-bin/mfsscadmin
-bin/mfstools
+bin/mfssetsclass
+bin/mfssettrashretention
+bin/mfssettrashtime
+bin/mfssnapshots
+bin/mfstrashretention
+bin/mfstrashtime
+bin/mfstrashtool
+bin/mfsxchgsclass
+@sample etc/mfs/mfsmount.cfg.sample
 include/mfsio.h
 lib/libmfsio.a
 lib/libmfsio.so
 lib/libmfsio.so.1
 lib/libmfsio.so.1.0.0
 share/man/man1/mfsappendchunks.1.gz
+share/man/man1/mfsarchive.1.gz
 share/man/man1/mfscheckfile.1.gz
-share/man/man1/mfsdirinfo.1.gz
-share/man/man1/mfsfileinfo.1.gz
-share/man/man1/mfsfilerepair.1.gz
-share/man/man1/mfsmakesnapshot.1.gz
-share/man/man1/mfsrmsnapshot.1.gz
-share/man/man1/mfsgetgoal.1.gz
-share/man/man1/mfssetgoal.1.gz
+share/man/man1/mfschkarchive.1.gz
+share/man/man1/mfsclonesclass.1.gz
+share/man/man1/mfsclrarchive.1.gz
+share/man/man1/mfscopyeattr.1.gz
 share/man/man1/mfscopygoal.1.gz
-share/man/man1/mfsrgetgoal.1.gz
-share/man/man1/mfsrsetgoal.1.gz
-share/man/man1/mfsgetsclass.1.gz
-share/man/man1/mfssetsclass.1.gz
+share/man/man1/mfscopyquota.1.gz
 share/man/man1/mfscopysclass.1.gz
-share/man/man1/mfsxchgsclass.1.gz
-share/man/man1/mfslistsclass.1.gz
-share/man/man1/mfsgettrashtime.1.gz
-share/man/man1/mfssettrashtime.1.gz
+share/man/man1/mfscopytrashretention.1.gz
 share/man/man1/mfscopytrashtime.1.gz
-share/man/man1/mfsrgettrashtime.1.gz
-share/man/man1/mfsrsettrashtime.1.gz
-share/man/man1/mfsgeteattr.1.gz
-share/man/man1/mfsseteattr.1.gz
+share/man/man1/mfscreatepattern.1.gz
+share/man/man1/mfscreatesclass.1.gz
 share/man/man1/mfsdeleattr.1.gz
-share/man/man1/mfscopyeattr.1.gz
-share/man/man1/mfsgetquota.1.gz
-share/man/man1/mfssetquota.1.gz
+share/man/man1/mfsdeletepattern.1.gz
+share/man/man1/mfsdeletesclass.1.gz
 share/man/man1/mfsdelquota.1.gz
-share/man/man1/mfscopyquota.1.gz
-share/man/man1/mfschkarchive.1.gz
-share/man/man1/mfsclrarchive.1.gz
-share/man/man1/mfssetarchive.1.gz
+share/man/man1/mfsdiagtools.1.gz
+share/man/man1/mfsdirinfo.1.gz
+share/man/man1/mfseattr.1.gz
+share/man/man1/mfsfacl.1.gz
+share/man/man1/mfsfileinfo.1.gz
 share/man/man1/mfsfilepaths.1.gz
+share/man/man1/mfsfilerepair.1.gz
+share/man/man1/mfsgeteattr.1.gz
+share/man/man1/mfsgetfacl.1.gz
+share/man/man1/mfsgetgoal.1.gz
+share/man/man1/mfsgetquota.1.gz
+share/man/man1/mfsgetsclass.1.gz
+share/man/man1/mfsgettrashretention.1.gz
+share/man/man1/mfsgettrashtime.1.gz
 share/man/man1/mfsgoal.1.gz
-share/man/man1/mfstrashtime.1.gz
-share/man/man1/mfseattr.1.gz
+share/man/man1/mfsimportsclass.1.gz
+share/man/man1/mfslistpattern.1.gz
+share/man/man1/mfslistsclass.1.gz
+share/man/man1/mfsmakesnapshot.1.gz
+share/man/man1/mfsmodifysclass.1.gz
+share/man/man1/mfspatadmin.1.gz
 share/man/man1/mfsquota.1.gz
-share/man/man1/mfsarchive.1.gz
-share/man/man1/mfssnapshots.1.gz
-share/man/man1/mfsdiagtools.1.gz
-share/man/man1/mfssclass.1.gz
+share/man/man1/mfsrenamesclass.1.gz
+share/man/man1/mfsrmsnapshot.1.gz
 share/man/man1/mfsscadmin.1.gz
+share/man/man1/mfssclass.1.gz
+share/man/man1/mfssetarchive.1.gz
+share/man/man1/mfsseteattr.1.gz
+share/man/man1/mfssetfacl.1.gz
+share/man/man1/mfssetgoal.1.gz
+share/man/man1/mfssetquota.1.gz
+share/man/man1/mfssetsclass.1.gz
+share/man/man1/mfssettrashretention.1.gz
+share/man/man1/mfssettrashtime.1.gz
+share/man/man1/mfssnapshots.1.gz
 share/man/man1/mfstools.1.gz
+share/man/man1/mfstrashretention.1.gz
+share/man/man1/mfstrashtime.1.gz
+share/man/man1/mfsxchgsclass.1.gz
+share/man/man5/mfsmount.cfg.5.gz
 share/man/man8/mfsmount.8.gz
diff --git a/filesystems/moosefs-gui/Makefile b/filesystems/moosefs-gui/Makefile
index 896ed1d6ea79..ae687a4c82b9 100644
--- a/filesystems/moosefs-gui/Makefile
+++ b/filesystems/moosefs-gui/Makefile
@@ -1,10 +1,10 @@
 PORTREVISION=	0
-PKGNAMESUFFIX=	-cgiserv
+PKGNAMESUFFIX=	-${MFS_COMPONENT}
 
-COMMENT=	MooseFS CGI web server
+COMMENT=	MooseFS web-based GUI
 
-MFS_COMPONENT=	cgiserv
+MFS_COMPONENT=	gui
 
-MASTERDIR=	${.CURDIR}/../moosefs3-master
+MASTERDIR=	${.CURDIR}/../moosefs-master
 
 .include "${MASTERDIR}/Makefile"
diff --git a/filesystems/moosefs-gui/pkg-descr b/filesystems/moosefs-gui/pkg-descr
index 521dda4d677c..a0f02a3a628b 100644
--- a/filesystems/moosefs-gui/pkg-descr
+++ b/filesystems/moosefs-gui/pkg-descr
@@ -4,4 +4,4 @@ servers, which are visible to the user as one resource.
 
 For standard file operations MooseFS acts like any other Unix-like file system.
 
-This port provides: Simple CGI-capable HTTP server to run MooseFS CGI monitor.
+This port provides: MooseFS web-based GUI.
diff --git a/filesystems/moosefs-gui/pkg-plist b/filesystems/moosefs-gui/pkg-plist
index 3f3ea8249528..abca4fed313f 100644
--- a/filesystems/moosefs-gui/pkg-plist
+++ b/filesystems/moosefs-gui/pkg-plist
@@ -1,5 +1,57 @@
+@sample etc/mfs/mfsgui.cfg.sample
 sbin/mfscgiserv
-share/man/man8/mfscgiserv.8.gz
-@owner mfs
-@group mfs
-@dir %%MFS_WORKDIR%%/mfs
+sbin/mfsgui
+share/man/man5/mfsgui.cfg.5.gz
+share/man/man8/mfsgui.8.gz
+share/mfscgi/assets/acidchart.js
+share/mfscgi/assets/acidtab.js
+share/mfscgi/assets/err.gif
+share/mfscgi/assets/favicon.ico
+share/mfscgi/assets/guiscripts.js
+share/mfscgi/assets/help.json
+share/mfscgi/assets/logo.svg
+share/mfscgi/assets/logomini.svg
+share/mfscgi/assets/logopro.svg
+share/mfscgi/assets/mfs.css
+share/mfscgi/chart.cgi
+share/mfscgi/chartdata.cgi
+share/mfscgi/common/cluster.py
+share/mfscgi/common/conn.py
+share/mfscgi/common/constants_ac.py
+share/mfscgi/common/constants.py
+share/mfscgi/common/dataprovider.py
+share/mfscgi/common/errors.py
+share/mfscgi/common/models.py
+share/mfscgi/common/organization.py
+share/mfscgi/common/utils.py
+share/mfscgi/common/utilsgui.py
+share/mfscgi/common/validator.py
+share/mfscgi/mfs.cgi
+share/mfscgi/requests.cfg
+share/mfscgi/views/chartscc.py
+share/mfscgi/views/chartsmc.py
+share/mfscgi/views/chunkservers.py
+share/mfscgi/views/chunksloop.py
+share/mfscgi/views/clusterinfo.py
+share/mfscgi/views/commands.py
+share/mfscgi/views/disks.py
+share/mfscgi/views/exports.py
+share/mfscgi/views/footer.py
+share/mfscgi/views/graph.py
+share/mfscgi/views/header.py
+share/mfscgi/views/healthselfcheck.py
+share/mfscgi/views/licence.py
+share/mfscgi/views/matrix.py
+share/mfscgi/views/memory.py
+share/mfscgi/views/metaloggers.py
+share/mfscgi/views/metaservers.py
+share/mfscgi/views/metrics.py
+share/mfscgi/views/missingfiles.py
+share/mfscgi/views/missingleader.py
+share/mfscgi/views/mountsoperations.py
+share/mfscgi/views/mountsparameters.py
+share/mfscgi/views/opatterns.py
+share/mfscgi/views/openfiles.py
+share/mfscgi/views/quotas.py
+share/mfscgi/views/sclasses.py
+@dir(%%USER%%,%%GROUP%%,) %%MFS_WORKDIR%%/mfs
diff --git a/filesystems/moosefs-master/Makefile b/filesystems/moosefs-master/Makefile
index 3ed5bad6a40c..6a94e7002e21 100644
--- a/filesystems/moosefs-master/Makefile
+++ b/filesystems/moosefs-master/Makefile
@@ -1,11 +1,10 @@
-PORTNAME=		moosefs3
-DISTVERSION=		3.0.118
-DISTVERSIONSUFFIX=	1
+PORTNAME=		moosefs
+DISTVERSION=		4.58.3
+DISTVERSIONSUFFIX=	-1
 PORTREVISION?=		0
 CATEGORIES=		filesystems sysutils
-MASTER_SITES=		http://ppa.moosefs.com/src/
+MASTER_SITES=		http://repository.moosefs.com/src/
 PKGNAMESUFFIX?=		-master
-DISTNAME=		moosefs-${DISTVERSION}-${DISTVERSIONSUFFIX}
 
 MAINTAINER=		freebsd@moosefs.com
 COMMENT?=		Fault-tolerant distributed filesystem
@@ -13,14 +12,12 @@ WWW=			https://moosefs.com/
 
 LICENSE=		GPLv2
 
-DEPRECATED=		3.x reached EoL 2025-03-31, use filesystems/moosefs-* 4.x instead
-EXPIRATION_DATE=	2026-06-30
-
 USES=			python:build
 GNU_CONFIGURE=		yes
-WRKSRC=			${WRKDIR}/moosefs-${DISTVERSION}
+WRKSRC=			${WRKDIR}/${PORTNAME}-${DISTVERSION}
 PLIST=			${.CURDIR}/pkg-plist
 DESCR=			${.CURDIR}/pkg-descr
+STRIP=
 
 MFS_COMPONENT?=		master
 MFS_USER=		mfs
@@ -35,29 +32,24 @@ CONFIGURE_ARGS+=	--localstatedir=${MFS_WORKDIR} \
 			--with-default-group=${MFS_GROUP}
 
 CONFLICTS=		moosefs2-* \
-			moosefs-*
+			moosefs3-*
 
-.if ${MFS_COMPONENT} == cgi
-MFS_CGIDIR=		${PREFIX}/share/mfscgi
-USES=			python
-CONFIGURE_ARGS+=	--enable-mfscgi \
-			--with-mfscgi-dir=${MFS_CGIDIR}
-.else
-CONFIGURE_ARGS+=	--disable-mfscgi
-.endif
+PLIST_SUB=		USER=${MFS_USER} \
+			GROUP=${MFS_GROUP}
 
-.if ${MFS_COMPONENT} == cgiserv
-MFS_CGISERVDIR=		${PREFIX}/sbin
+.if ${MFS_COMPONENT} == gui
+MFS_CGIDIR=		${PREFIX}/share/mfscgi
 USES=			python
-USE_RC_SUBR=		mfscgiserv
-SUB_FILES+=		pkg-message-cgiserv
-PKGMESSAGE=		${WRKDIR}/pkg-message-cgiserv
+USE_RC_SUBR=		mfsgui
+SUB_FILES+=		pkg-message-gui
+PKGMESSAGE=		${WRKDIR}/pkg-message-gui
 PLIST_SUB+=		MFS_WORKDIR="${MFS_WORKDIR}"
-CONFIGURE_ARGS+=	--enable-mfscgiserv \
-			--with-mfscgiserv-dir=${MFS_CGISERVDIR}
-RUN_DEPENDS=		moosefs3-cgi>0:filesystems/moosefs3-cgi
+CONFIGURE_ARGS+=	--enable-mfscgi --enable-mfsgui \
+			--with-mfscgi-dir=${MFS_CGIDIR}
+RUN_DEPENDS=		moosefs-cli>0:filesystems/moosefs-cli
+CONFLICTS+=		moosefs-cgiserv
 .else
-CONFIGURE_ARGS+=	--disable-mfscgiserv
+CONFIGURE_ARGS+=	--disable-mfscgi --disable-mfsgui
 .endif
 
 .if ${MFS_COMPONENT} == chunkserver
@@ -73,6 +65,7 @@ CONFIGURE_ARGS+=	--disable-mfschunkserver
 .if ${MFS_COMPONENT} == cli
 USES=			python
 CONFIGURE_ARGS+=	--enable-mfscli
+NO_ARCH=		yes
 .else
 CONFIGURE_ARGS+=	--disable-mfscli
 .endif
diff --git a/filesystems/moosefs-master/distinfo b/filesystems/moosefs-master/distinfo
index 13bed0e547e3..ef515c66653e 100644
--- a/filesystems/moosefs-master/distinfo
+++ b/filesystems/moosefs-master/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1770444444
-SHA256 (moosefs-3.0.118-1.tar.gz) = d730c82602b303004dbee2e30c0b013a6ee0ee88e427cee930f4a40bc9241df8
-SIZE (moosefs-3.0.118-1.tar.gz) = 1256430
+TIMESTAMP = 1770916355
+SHA256 (moosefs-4.58.3-1.tar.gz) = 883932d1bbe28d31258380b6053664c8a700e28ce8c6f85d017eb7d369ce1aaf
+SIZE (moosefs-4.58.3-1.tar.gz) = 1700352
diff --git a/filesystems/moosefs-master/files/mfscgiserv.in b/filesystems/moosefs-master/files/mfscgiserv.in
deleted file mode 100644
index 39f9f59ddb6d..000000000000
--- a/filesystems/moosefs-master/files/mfscgiserv.in
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/sh
-
-# PROVIDE: mfscgiserv
-# REQUIRE: DAEMON
-# KEYWORD: shutdown
-#
-# Add the following lines to /etc/rc.conf to enable mfscgiserv:
-#
-# mfscgiserv_enable="YES"
-#
-
-. /etc/rc.subr
-
-name=mfscgiserv
-rcvar=mfscgiserv_enable
-
-command=%%PREFIX%%/sbin/${name}
-pid_file=%%MFS_WORKDIR%%/mfs/.${name}.lock
-procname="python"
-
-stop_cmd="$command stop"
-status_cmd="$command test"
-
-load_rc_config $name
-
-# set defaults
-: ${mfscgiserv_enable="NO"}
-
-run_rc_command "$1"
diff --git a/filesystems/moosefs-master/files/mfsgui.in b/filesystems/moosefs-master/files/mfsgui.in
new file mode 100644
index 000000000000..e49abab14262
--- /dev/null
+++ b/filesystems/moosefs-master/files/mfsgui.in
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# PROVIDE: mfsgui
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf to enable mfsgui:
+#
+# mfsgui="YES"
+#
+
+. /etc/rc.subr
+
+name=mfsgui
+rcvar=mfsgui_enable
+
+config_file=%%PREFIX%%/etc/mfs/${name}.cfg
+
+required_files=${config_file}
+
+command=%%PREFIX%%/sbin/${name}
+pid_file=%%MFS_WORKDIR%%/mfs/.${name}.lock
+command_args="-c $config_file"
+
+load_rc_config $name
+
+# set defaults
+: ${mfsgui_enable="NO"}
+
+run_rc_command "$1"
diff --git a/filesystems/moosefs-master/files/pkg-message-cgiserv.in b/filesystems/moosefs-master/files/pkg-message-gui.in
similarity index 51%
rename from filesystems/moosefs-master/files/pkg-message-cgiserv.in
rename to filesystems/moosefs-master/files/pkg-message-gui.in
index b93e90eb8847..66f5f20dee43 100644
--- a/filesystems/moosefs-master/files/pkg-message-cgiserv.in
+++ b/filesystems/moosefs-master/files/pkg-message-gui.in
@@ -3,12 +3,12 @@
   message: <<EOM
 A startup script has been installed as:
 
-%%PREFIX%%/etc/rc.d/mfscgiserv
+%%PREFIX%%/etc/rc.d/mfsgui
 
-Use it to start/stop the mfscgiserv service after you have added
+Use it to start/stop the mfsgui service after you have added
 the following line to your rc.conf file:
 
-mfscgiserv_enable="YES"
+mfsgui_enable="YES"
 EOM
 }
 ]
diff --git a/filesystems/moosefs-master/pkg-plist b/filesystems/moosefs-master/pkg-plist
index 1ec5b1382860..f91be03db605 100644
--- a/filesystems/moosefs-master/pkg-plist
+++ b/filesystems/moosefs-master/pkg-plist
@@ -1,21 +1,27 @@
 @sample etc/mfs/mfsmaster.cfg.sample
 @sample etc/mfs/mfsexports.cfg.sample
+@sample etc/mfs/mfsipmap.cfg.sample
 @sample etc/mfs/mfstopology.cfg.sample
 sbin/mfsmaster
-sbin/mfsmetadump
 sbin/mfsmetadirinfo
+sbin/mfsmetadump
 sbin/mfsmetarestore
+sbin/mfsmetasearch
 sbin/mfsstatsdump
+sbin/mfssupervisor
 share/man/man5/mfsexports.cfg.5.gz
+share/man/man5/mfsipmap.cfg.5.gz
 share/man/man5/mfsmaster.cfg.5.gz
 share/man/man5/mfstopology.cfg.5.gz
 share/man/man7/moosefs.7.gz
 share/man/man8/mfsmaster.8.gz
-share/man/man8/mfsmetarestore.8.gz
-share/man/man8/mfsmetadump.8.gz
 share/man/man8/mfsmetadirinfo.8.gz
+share/man/man8/mfsmetadump.8.gz
+share/man/man8/mfsmetarestore.8.gz
+share/man/man8/mfsmetasearch.8.gz
 share/man/man8/mfsstatsdump.8.gz
-@owner mfs
-@group mfs
+share/man/man8/mfssupervisor.8.gz
+@owner %%USER%%
+@group %%GROUP%%
 @dir %%MFS_WORKDIR%%/mfs
 %%MFS_WORKDIR%%/mfs/metadata.mfs.empty
diff --git a/filesystems/moosefs-metalogger/Makefile b/filesystems/moosefs-metalogger/Makefile
index 070e5f70f2e9..9f4251c66e7d 100644
--- a/filesystems/moosefs-metalogger/Makefile
+++ b/filesystems/moosefs-metalogger/Makefile
@@ -1,10 +1,10 @@
 PORTREVISION=	0
-PKGNAMESUFFIX=	-metalogger
+PKGNAMESUFFIX=	-${MFS_COMPONENT}
 
 COMMENT=	MooseFS metadata backup server
 
 MFS_COMPONENT=	metalogger
 
-MASTERDIR=	${.CURDIR}/../moosefs3-master
+MASTERDIR=	${.CURDIR}/../moosefs-master
 
 .include "${MASTERDIR}/Makefile"
diff --git a/filesystems/moosefs-metalogger/pkg-plist b/filesystems/moosefs-metalogger/pkg-plist
index c27833ff6e37..841d063adb6b 100644
--- a/filesystems/moosefs-metalogger/pkg-plist
+++ b/filesystems/moosefs-metalogger/pkg-plist
@@ -2,6 +2,4 @@
 sbin/mfsmetalogger
 share/man/man5/mfsmetalogger.cfg.5.gz
 share/man/man8/mfsmetalogger.8.gz
-@owner mfs
-@group mfs
-@dir %%MFS_WORKDIR%%/mfs
+@dir(%%USER%%,%%GROUP%%,) %%MFS_WORKDIR%%/mfs
diff --git a/filesystems/moosefs-netdump/Makefile b/filesystems/moosefs-netdump/Makefile
index 9a5dee7432a0..b7dcfcbad6ab 100644
--- a/filesystems/moosefs-netdump/Makefile
+++ b/filesystems/moosefs-netdump/Makefile
@@ -1,10 +1,10 @@
 PORTREVISION=	0
-PKGNAMESUFFIX=	-netdump
+PKGNAMESUFFIX=	-${MFS_COMPONENT}
 
 COMMENT=	MooseFS network packet dump utility
 
 MFS_COMPONENT=	netdump
 
-MASTERDIR=	${.CURDIR}/../moosefs3-master
+MASTERDIR=	${.CURDIR}/../moosefs-master
 
 .include "${MASTERDIR}/Makefile"