diff --git a/macbuild/ReadMe.md b/macbuild/ReadMe.md
index 4a8da914d..f3b727f97 100644
--- a/macbuild/ReadMe.md
+++ b/macbuild/ReadMe.md
@@ -1,6 +1,6 @@
-Relevant KLayout version: 0.29.0
+Relevant KLayout version: 0.29.1
Author: Kazzz-S
-Last modified: 2024-03-27
+Last modified: 2024-05-01
# 1. Introduction
This directory **`macbuild`** contains various files required for building KLayout (http://www.klayout.de/) version 0.29.0 or later for different 64-bit macOS, including:
@@ -188,8 +188,10 @@ $ ./build4mac.py -q qt5macports -r mp33 -p mp311 -Y
4. Copy/move the generated application bundle **`klayout.app`** to your **`/Applications`** directory for installation.
### 6C. Fully Homebrew-flavored build with Homebrew Ruby 3.3 and Homebrew Python 3.11
-> [!IMPORTANT]
-> To build KLayout >= 0.29.0, you need "Qt6" to address [the compilation issue](https://github.com/KLayout/klayout/issues/1599).
+> [!CAUTION]
+> To build KLayout >= 0.29.0, you need "Qt6" to address [the compilation issue](https://github.com/KLayout/klayout/issues/1599).
+> However, the current KLayout is not compliant with the latest Qt6.7.0, so you will get another compilation error.
+> Therefore, this section will be disabled for the time being.
0. Install Homebrew, then install Qt6, Ruby 3.3, Python 3.11, and libgit2 by
```
@@ -222,13 +224,10 @@ $ ./build4mac.py -q qt6brew -r hb33 -p hb311 -Y
4. Copy/move the generated application bundle **`klayout.app`** to your **`/Applications`** directory for installation.
### 6D. Partially Homebrew-flavored build with System Ruby and Homebrew Python 3.11
-> [!IMPORTANT]
-> To build KLayout >= 0.29.0, you need "Qt6" to address [the compilation issue](https://github.com/KLayout/klayout/issues/1599).
-
> [!CAUTION]
-> Homebrew Qt6.6.2 seems buggy. More precisely, it does not perfectly deploy the required Qt frameworks.
-> If you plan to distribute an HW*.dmg package, consider using Qt6.4.x from MacPorts.
-> That is, substitute `qt6brew` with `qt6macports` in the following command lines.
+> To build KLayout >= 0.29.0, you need "Qt6" to address [the compilation issue](https://github.com/KLayout/klayout/issues/1599).
+> However, the current KLayout is not compliant with the latest Qt6.7.0, so you will get another compilation error.
+> Therefore, this section will be disabled for the time being.
0. Install Homebrew, then install Qt6, Python 3.11, and libgit2 by
```
@@ -261,7 +260,46 @@ $ ./build4mac.py -q qt6brew -r sys -p hb311 -y
> So far, the deployment of Homebrew Ruby is not supported.
> Therefore, if you intend to use the "-y" option for deployment, you need to use the "-r sys" option for building.
-### 6E. Fully Anaconda3-flavored build with Anaconda3 Ruby 3.2 and Anaconda3 Python 3.11
+### 6E. Heterogeneous combination of MacPorts Qt5, System Ruby, and Homebrew Python 3.11
+> [!IMPORTANT]
+> This is a practical solution for building an HW*.dmg package.
+
+0. Install MacPorts, then install Qt5 and libgit2 by
+```
+$ sudo port install coreutils
+$ sudo port install findutils
+$ sudo port install qt5
+$ sudo port install libgit2
+```
+
+Then, install Homebrew, then install Python 3.11 by
+```
+$ brew install python@3.11
+$ cd /where/'build.sh'/exists
+$ cd macbuild
+$ ./python3HB.py -v 3.11
+```
+
+1. Invoke **`build4mac.py`** with the following options:
+```
+$ cd /where/'build.sh'/exists
+$ ./build4mac.py -q qt5macports -r sys -p hb311
+```
+2. Confirm successful build (it will take about one hour, depending on your machine spec).
+3. Rerun **`build4mac.py`** with the same options used in 1. PLUS "-y" to deploy executables and libraries under **`klayout.app`** bundle.
+ The buddy command-line tools (strm*) will also be deployed under **klayout.app/Contents/Buddy/** in this step.
+
+```
+$ ./build4mac.py -q qt5macports -r sys -p hb311 -y
+```
+ The application bundle **`klayout.app`** is located under:
+ **`HW-qt5MP.pkg.macos-Monterey-release-RsysPhb311`** directory, where
+* "HW-" means this is a heavyweight package because both Qt5 and Python Frameworks are deployed.
+* "qt5MP" means that Qt5 from MacPorts is used.
+* "RsysPhb311" means that Ruby is OS-bundled; Python is 3.11 from Homebrew.
+4. Copy/move the generated application bundle **`klayout.app`** to your **`/Applications`** directory for installation.
+
+### 6F. Fully Anaconda3-flavored build with Anaconda3 Ruby 3.2 and Anaconda3 Python 3.11
0. Install Anaconda3 (Anaconda3-2023.09-0-MacOSX-x86_64.pkg), then install Ruby 3.2 and libgit2 by
```
$ conda install ruby=3.2.2
@@ -292,11 +330,11 @@ $ ./build4mac.py -q qt5ana3 -r ana3 -p ana3 -Y
export PYTHONHOME=$HOME/opt/anaconda3
```
-### 6F. Other combinations
+### 6G. Other combinations
Logically, several module combinations other than 6B through 6E are possible, including `nil` choice.
The resultant package directory name will begin with **`EX-`** (exceptional) if you choose such a combination.
-### 6G. Using the git-based Salt Package Manager through a proxy server
+### 6H. Using the git-based Salt Package Manager through a proxy server
If you use the git-based Salt Package Manager through a proxy server, you need to set the `KLAYOUT_GIT_HTTP_PROXY` environment variable. For example,
```
$ export KLAYOUT_GIT_HTTP_PROXY="http://111.222.333.444:5678"
diff --git a/macbuild/Resources/script-bundle-H.zip b/macbuild/Resources/script-bundle-H.zip
index 4db6f545d..b645939dd 100644
Binary files a/macbuild/Resources/script-bundle-H.zip and b/macbuild/Resources/script-bundle-H.zip differ
diff --git a/macbuild/build4mac_env.py b/macbuild/build4mac_env.py
index c7d6f2e1f..a1f6ce69d 100755
--- a/macbuild/build4mac_env.py
+++ b/macbuild/build4mac_env.py
@@ -182,7 +182,7 @@ RubySonoma = { 'exe': '/System/Library/Frameworks/Ruby.framework/Versions/
# install with 'sudo port install ruby33'
# [Key Type Name] = 'MP33'
Ruby33MacPorts = { 'exe': '/opt/local/bin/ruby3.3',
- 'inc': '/opt/local/include/ruby-3.3.0',
+ 'inc': '/opt/local/include/ruby-3.3.1',
'lib': '/opt/local/lib/libruby.3.3.dylib'
}