diff --git a/net/cloud-init/Makefile b/net/cloud-init/Makefile
index a1cd023dc2ee..b8df0dff41b3 100644
--- a/net/cloud-init/Makefile
+++ b/net/cloud-init/Makefile
@@ -1,48 +1,57 @@
 PORTNAME=	cloud-init
-DISTVERSION=	22.4.2
+DISTVERSION=	23.1.1
 CATEGORIES=	net python
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
 
 MAINTAINER=	andrey@bsdnir.info
 COMMENT=	Init scripts for use on cloud images
 WWW=		https://cloud-init.io/
 
 LICENSE=	APACHE20 GPLv3
 LICENSE_COMB=	dual
 LICENSE_FILE_APACHE20=	${WRKSRC}/LICENSE-Apache2.0
 LICENSE_FILE_GPLv3=	${WRKSRC}/LICENSE-GPLv3
 
-RUN_DEPENDS=	sudo>0:security/sudo \
-		${PYTHON_PKGNAMEPREFIX}boto>0:devel/py-boto@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}boto>0:devel/py-boto@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}configobj>0:devel/py-configobj@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}yaml>0:devel/py-yaml@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pyserial>0:comms/py-pyserial@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}oauthlib>0:security/py-oauthlib@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}jsonpatch>0:devel/py-jsonpatch@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}jsonschema>0:devel/py-jsonschema@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}jsonpointer>0:devel/py-jsonpointer@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}netifaces>0:net/py-netifaces@${PY_FLAVOR}
+		${PYTHON_PKGNAMEPREFIX}jsonschema>0:devel/py-jsonschema@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}netifaces>0:net/py-netifaces@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}oauthlib>0:security/py-oauthlib@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pyserial>0:comms/py-pyserial@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}yaml>0:devel/py-yaml@${PY_FLAVOR} \
+		sudo>0:security/sudo
 
 USES=		python:3.6+ shebangfix
 USE_GITHUB=	yes
 GH_ACCOUNT=	canonical
 USE_PYTHON=	autoplist distutils
 PYDISTUTILS_INSTALLARGS+=	"--init-system=sysvinit_freebsd"
 
-SHEBANG_FILES=	tools/validate-yaml.py tools/read-dependencies \
-		tools/read-version tools/hook-hotplug
+SHEBANG_FILES=	tools/hook-hotplug tools/read-dependencies tools/read-version \
+		tools/validate-yaml.py
+
+# Conflicts
+CONFLICTS_INSTALL=	cloud-init-devel
+
+# Standard bsd.port.mk variables
 ETCDIR=		${PREFIX}/etc/cloud
 
 NO_ARCH=	yes
 
 post-patch:
 	${REINPLACE_CMD} -e 's|%%PREFIX%%|${STAGEDIR}${PREFIX}|g' ${WRKSRC}/setup.py
 	${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/cloudinit/settings.py
-	@cd ${WRKSRC} && ${RM} config/cloud.cfg.d/99_freebsd.cfg.orig
-
-post-build:
-	@cd ${WRKSRC} && ${MV} config/cloud.cfg.d/05_logging.cfg config/cloud.cfg.d/05_logging.cfg.sample
+	${REINPLACE_CMD} -e 's|@@PACKAGED_VERSION@@|${DISTVERSION}${DISTVERSIONSUFFIX}|g' ${WRKSRC}/cloudinit/version.py
+	${RM} ${WRKSRC}/config/cloud.cfg.d/99_freebsd.cfg.orig
+
+post-install:
+	${MV} ${STAGEDIR}${ETCDIR}/cloud.cfg ${STAGEDIR}${ETCDIR}/cloud.cfg.sample
+	${MV} ${STAGEDIR}${ETCDIR}/cloud.cfg.d/05_logging.cfg ${STAGEDIR}${ETCDIR}/cloud.cfg.d/05_logging.cfg.sample
+	${MV} ${STAGEDIR}${ETCDIR}/cloud.cfg.d/99_freebsd.cfg ${STAGEDIR}${ETCDIR}/cloud.cfg.d/99_freebsd.cfg.sample
+	${REINPLACE_CMD} 's|^.*\.cfg$$|@sample &.sample|' ${_PYTHONPKGLIST}
 
 .include <bsd.port.mk>
diff --git a/net/cloud-init/distinfo b/net/cloud-init/distinfo
index 338c72431a08..1fc9cf2f3b9c 100644
--- a/net/cloud-init/distinfo
+++ b/net/cloud-init/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1670787766
-SHA256 (canonical-cloud-init-22.4.2_GH0.tar.gz) = 9542bc57138f50bcbbb47283c8fc57762d0dfb4bdd0829a02c2104c26ca5e1ac
-SIZE (canonical-cloud-init-22.4.2_GH0.tar.gz) = 1511043
+TIMESTAMP = 1679196468
+SHA256 (canonical-cloud-init-23.1.1_GH0.tar.gz) = c72f7678ba047a57f852b09eb03125bfd6a5ca221a3ba29c46946ede5da1b332
+SIZE (canonical-cloud-init-23.1.1_GH0.tar.gz) = 1539667
diff --git a/net/cloud-init/files/patch-cloudinit_distros_networking.py b/net/cloud-init/files/patch-cloudinit_distros_networking.py
deleted file mode 100644
index 811534c5f298..000000000000
--- a/net/cloud-init/files/patch-cloudinit_distros_networking.py
+++ /dev/null
@@ -1,10 +0,0 @@
---- cloudinit/distros/networking.py.orig	2022-12-11 19:43:15 UTC
-+++ cloudinit/distros/networking.py
-@@ -190,6 +190,7 @@ class BSDNetworking(Networking):
-         self.ifc = ifconfig.Ifconfig()
-         self.ifs = {}
-         self._update_ifs()
-+        super().__init__()
- 
-     def _update_ifs(self):
-         ifconf = subp.subp(["ifconfig", "-a"])