Hi Kirill,

----- Mail original -----
> Laurent,
> 
> rust in ports contains a patch to use getexecpath() for current_exe()
> that makes this workaround outdate.
> 
> Ok to drop it?

Thanks for your patch: build and tests OK on current/amd64 with Rust 1.98.1 
(including support for getexecpath()).

But without my previous patch, HELIX_DEFAULT_RUNTIME must be defined in 
Makefile (see comment in helix-loader/src/lib.rs).

Attached a new version of your patch, add HELIX_DEFAULT_RUNTIME variable for 
MAKE_ENV.

regards, Laurent

Index: Makefile
===================================================================
RCS file: /cvs/ports/editors/helix/Makefile,v
diff -u -p -r1.14 Makefile
--- Makefile	20 Jul 2025 14:09:22 -0000	1.14
+++ Makefile	6 Sep 2026 09:01:35 -0000
@@ -1,6 +1,7 @@
 COMMENT =	modal text editor
 
 VER =		25.07.1
+REVISION =        0
 DISTNAME =	helix-${VER}
 
 CATEGORIES =	editors
@@ -30,12 +31,10 @@ MODULES =	devel/cargo
 CONFIGURE_STYLE =	cargo
 SEPARATE_BUILD =	Yes
 
+MAKE_ENV += 	HELIX_DEFAULT_RUNTIME=${PREFIX}/share/helix/runtime
+
 pre-extract:
 	@mkdir -p ${WRKDIST}
-
-pre-configure:
-	grep -F -Rls '%%DATADIR%%' ${WRKSRC} | xargs sed -i \
-		's,%%DATADIR%%,${PREFIX}/share/helix,'
 
 do-install:
 	${INSTALL_PROGRAM} ${MODCARGO_TARGET_DIR}/release/hx ${PREFIX}/bin/
Index: patches/patch-helix-loader_src_lib_rs
===================================================================
RCS file: /cvs/ports/editors/helix/patches/patch-helix-loader_src_lib_rs,v
diff -u -p -r1.5 patch-helix-loader_src_lib_rs
--- patches/patch-helix-loader_src_lib_rs	13 Apr 2024 13:03:29 -0000	1.5
+++ patches/patch-helix-loader_src_lib_rs	6 Sep 2026 09:01:35 -0000
@@ -1,19 +0,0 @@
-Index: helix-loader/src/lib.rs
---- helix-loader/src/lib.rs.orig
-+++ helix-loader/src/lib.rs
-@@ -67,11 +67,15 @@ fn prioritize_runtime_dirs() -> Vec<PathBuf> {
- 
-     // fallback to location of the executable being run
-     // canonicalize the path in case the executable is symlinked
-+    #[cfg(not(target_os = "openbsd"))]
-     let exe_rt_dir = std::env::current_exe()
-         .ok()
-         .and_then(|path| std::fs::canonicalize(path).ok())
-         .and_then(|path| path.parent().map(|path| path.to_path_buf().join(RT_DIR)))
-         .unwrap();
-+    #[cfg(target_os = "openbsd")]
-+    let exe_rt_dir = std::path::PathBuf::from("%%DATADIR%%").join(RT_DIR);
-+
-     rt_dirs.push(exe_rt_dir);
-     rt_dirs
- }

Reply via email to