Skip to content

Comments

Pass GlobalPaths to save_config_db instead of re-deriving from current_exe#1424

Open
IanButterworth wants to merge 1 commit intomainfrom
ib/fix
Open

Pass GlobalPaths to save_config_db instead of re-deriving from current_exe#1424
IanButterworth wants to merge 1 commit intomainfrom
ib/fix

Conversation

@IanButterworth
Copy link
Member

During installation, save_config_db() called get_paths() which derives the self-config path from std::env::current_exe(). When the installer binary runs from a different filesystem than ~/.julia/ (e.g. /tmp), NamedTempFile::persist() fails with EPERM because rename(2) cannot cross filesystem boundaries.

Fix by accepting &GlobalPaths as a parameter so callers pass the correct paths, especially during installation where the installer overrides paths to point to the install target.

Fixes #1360

Figured out, fixed, and above written by claude

…t_exe

During installation, save_config_db() called get_paths() which derives
the self-config path from std::env::current_exe(). When the installer
binary runs from a different filesystem than ~/.julia/ (e.g. /tmp),
NamedTempFile::persist() fails with EPERM because rename(2) cannot
cross filesystem boundaries.

Fix by accepting &GlobalPaths as a parameter so callers pass the
correct paths, especially during installation where the installer
overrides paths to point to the install target.

Fixes #1360

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Juliainstaller Crash Report

1 participant