Error when I fresh install GDK on external disk on macOS

Overview

I can't get gdk fully installed on my macOS, and I'm trying to install GDK on an external disk as the main home user Volumes/external/Users/onasser is currently the default new home path.

When I try to install GDK through the curl command I get the following error:

INFO: Bootstrap successful!
Running 'gdk install' using mise..
Telemetry username has been anonymized.
A backup of 'gdk.yml' has been made at '.backups/gdk.yml.20251205171136'.
ruby 3.3.10 (2025-10-23 revision 343ea05002) [arm64-darwin24]
Bundle check passed.

--------------------------------------------------------------------------------
Cloning https://gitlab.com/gitlab-community/gitlab-org/gitlab.git
--------------------------------------------------------------------------------
...............+..+...+.+......+...+.....+....+.....+.......+..............+............+...+............+...+....+..+.+..+.+.........+..+................+..+.+..+............+............+......+....+...+.....+...+.........+.+++++++++++++++++++++++++++++++++++++++*............+......+...................+..+...+.+......+......+.....+....+......+.....+.......+..+++++++++++++++++++++++++++++++++++++++*..++++++
..+...+.........+...+...+.+...+......+.....+......+.+.....+...................+........+++++++++++++++++++++++++++++++++++++++*...+++++++++++++++++++++++++++++++++++++++*....+...............+......+..+...................+...........+.......+.....+...+....+......+...+...........+....+..+.......+..+...+..........+...........+......+......+....+.........+......+...+............+...+.....+.............+..+......+......+...+......+.+......+........+.......+..+..........+..+....+.....+....+.....+...+.............+.....+..........+..+.........+...+...+..........+.....+...+....+......+......+...+......+.........+........+...+.......+..+.+..............+...+...+.+......+........+....+..+.+.....+...+......+....+......+...+......+......+......+..+............+.++++++
-----
Note: switching to 'v14.45.3'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at f5da5793 Merge branch 'mk/release-14.45.3' into 'main'

--------------------------------------------------------------------------------
Installing mise tools from /Volumes/external/Users/onasser/src/gdk/gitlab-shell/.tool-versions
--------------------------------------------------------------------------------
mise all tools are installed

--------------------------------------------------------------------------------
Installing gitlab-org/gitlab-shell Ruby gems
--------------------------------------------------------------------------------
dyld[73739]: Library not loaded: /Users/omar/.local/share/mise/installs/ruby/3.3.9/lib/libruby.3.3.dylib
  Referenced from: <FE25B928-1307-34E4-B2D5-CA15204704CA> /Volumes/external/Users/onasser/.local/share/mise/installs/ruby/3.3.9/bin/ruby
  Reason: tried: '/Users/omar/.local/share/mise/installs/ruby/3.3.9/lib/libruby.3.3.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/omar/.local/share/mise/installs/ruby/3.3.9/lib/libruby.3.3.dylib' (no such file), '/Users/omar/.local/share/mise/installs/ruby/3.3.9/lib/libruby.3.3.dylib' (no such file)
/Volumes/external/Users/onasser/src/gdk/support/bundle-install: line 41: 73739 Abort trap: 6              mise exec -- ruby -v






make[1]: *** [support/makefiles/Makefile.gitlab-shell.mk:41: .gitlab-shell-bundle] Error 134
make: *** [support/makefiles/Makefile.gitlab-shell.mk:12: gitlab-shell-setup] Error 2
[sentry] `config.logger` is deprecated. Please use `config.sdk_logger` instead.
ERROR: Failed to install.
-------------------------------------------------------
You can try the following that may be of assistance:

- Run 'gdk doctor'.

- Visit the troubleshooting documentation:
  https://gitlab.com/gitlab-org/gitlab-development-kit/-/blob/main/doc/troubleshooting/index.md.
- Visit https://gitlab.com/gitlab-org/gitlab-development-kit/-/issues to
  see if there are known issues.

- Run 'gdk reset-data' if appropriate.
- Run 'gdk pristine' to reinstall dependencies, remove temporary files, and clear caches.

If I tried to execute gdk reset-data I get this:

/bin/sh: /Volumes/external/Users/onasser/.local/share/mise/installs/ruby/3.3.9/bin/bundle: /Users/omar/.local/share/mise/installs/ruby/3.3.9/bin/ruby: bad interpreter: No such file or directory






make[2]: *** [Makefile:15: deps] Error 126
make[1]: *** [support/makefiles/Makefile.gitlab-topology-service.mk:29: gitlab-topology-service-make-deps-install] Error 2
make: *** [support/makefiles/Makefile.timing.mk:3: gitlab-topology-service-setup-timed] Error 2
[sentry] `config.logger` is deprecated. Please use `config.sdk_logger` instead.
❌️ ERROR: Failed to reset data.
-------------------------------------------------------
You can try the following that may be of assistance:

- Run 'gdk doctor'.

- Visit the troubleshooting documentation:
  https://gitlab.com/gitlab-org/gitlab-development-kit/-/blob/main/doc/troubleshooting/index.md.
- Visit https://gitlab.com/gitlab-org/gitlab-development-kit/-/issues to
  see if there are known issues.

- Run 'gdk reset-data' if appropriate.
- Run 'gdk pristine' to reinstall dependencies, remove temporary files, and clear caches.

If I try to execute gdk pristine I get this too:

The files belonging to this database system will be owned by user "onasser".
This user must also own the server process.

The database cluster will be initialized with locale "C".
The default text search configuration will be set to "english".

Data page checksums are disabled.

creating directory /Volumes/external/Users/onasser/src/gdk/postgresql/data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Africa/Cairo
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok

initdb: warning: enabling "trust" authentication for local connections
initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    /Volumes/external/Users/onasser/.local/share/mise/installs/postgres/16.11/bin/pg_ctl -D /Volumes/external/Users/onasser/src/gdk/postgresql/data -l logfile start

ok: down: /Volumes/external/Users/onasser/src/gdk/services/postgresql: 0s
ok: run: /Volumes/external/Users/onasser/src/gdk/services/postgresql: (pid 1069) 1s, normally down

--------------------------------------------------------------------------------
Ensuring necessary databases are setup and seeded
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
Ensuring necessary data services are running
--------------------------------------------------------------------------------
ok: run: /Volumes/external/Users/onasser/src/gdk/services/postgresql: (pid 1069) 2s, normally down
ok: run: /Volumes/external/Users/onasser/src/gdk/services/praefect-gitaly-0: (pid 1560) 1s, normally down
ok: run: /Volumes/external/Users/onasser/src/gdk/services/redis: (pid 1561) 1s, normally down
timeout: down: /Volumes/external/Users/onasser/src/gdk/services/praefect: 0s, want up
make[1]: *** [Makefile:205: ensure-databases-running] Error 1
rake aborted!
Support::Rake::TaskWithLogger::MakeError: `make postgresql` failed. (Support::Rake::TaskWithLogger::MakeError)
/Volumes/external/Users/onasser/src/gdk/lib/tasks/reconfigure.rake:20:in `block (3 levels) in <top (required)>'






/Volumes/external/Users/onasser/src/gdk/lib/support/rake/task_with_spinner.rb:71:in `execute'






/Volumes/external/Users/onasser/src/gdk/lib/support/rake/task_with_logger.rb:31:in `execute'






/Volumes/external/Users/onasser/src/gdk/lib/support/rake/task_with_telemetry.rb:10:in `execute'






/Volumes/external/Users/onasser/src/gdk/lib/support/rake/task_with_spinner.rb:49:in `invoke'






Tasks: TOP => reconfigure => reconfigure:make:postgresql
(See full trace by running task with --trace)
make: *** [Makefile:145: reconfigure] Error 1
[sentry] `config.logger` is deprecated. Please use `config.sdk_logger` instead.
❌️ ERROR: Failed to run 'gdk pristine' - Had an issue with 'reset_configs'.
-------------------------------------------------------
You can try the following that may be of assistance:

- Run 'gdk doctor'.

- Visit the troubleshooting documentation:
  https://gitlab.com/gitlab-org/gitlab-development-kit/-/blob/main/doc/troubleshooting/index.md.
- Visit https://gitlab.com/gitlab-org/gitlab-development-kit/-/issues to
  see if there are known issues.

- Run 'gdk reset-data' if appropriate.
- Run 'gdk pristine' to reinstall dependencies, remove temporary files, and clear caches.
  • GDK was working properly on the original mac hard disk

Impacted categories

The following categories relate to this issue:

Proposal (optional)

Environment (optional)

  • Operating system name: macOS Sequoia
  • Architecture: arm - Apple Silicon chip
  • The contents of your gdk.yml
cat gdk.yml
---
asdf:
  opt_out: true
telemetry:
  enabled: true
  username: 55206ca8f8e0d98fff30b5103559abce
tool_version_manager:
  enabled: true
  • Ruby version:

    -> which ruby
    /Volumes/external/Users/onasser/.local/share/mise/installs/ruby/3.3.10/bin/ruby
    ~/src/gdk main* ❯ ruby -v
    ruby 3.3.10 (2025-10-23 revision 343ea05002) [arm64-darwin24]
  • GDK version: <!-- output of `git rev-parse --short HEAD` command -->

~/src/gdk main* ❯ git rev-parse --short HEAD
cb4aedf02
Edited by Omar Nasser