Merge branch 'GP-0_ryanmkurtz_user-settings' into Ghidra_12.0

This commit is contained in:
Ryan Kurtz
2025-11-19 10:47:54 -05:00
2 changed files with 9 additions and 2 deletions
@@ -57,7 +57,9 @@ def get_user_settings_dir(install_dir: Path, dev: bool) -> Path:
app_release_name: str = app_props['application.release.name'] app_release_name: str = app_props['application.release.name']
versioned_name: str = f'{app_name}_{app_version}_{app_release_name}' versioned_name: str = f'{app_name}_{app_version}_{app_release_name}'
if dev: if dev:
versioned_name += f'_location_{install_dir.parent.name}' ghidra_repos_config = install_dir / 'ghidra.repos.config'
dir_name = install_dir.parent.name if ghidra_repos_config.is_file() else install_dir.name
versioned_name += f'_location_{dir_name}'
# Check for application.settingsdir in launch.properties # Check for application.settingsdir in launch.properties
for launch_prop in get_launch_properties(install_dir, dev): for launch_prop in get_launch_properties(install_dir, dev):
@@ -224,6 +226,8 @@ def main() -> None:
venv_dir = get_ghidra_venv(install_dir, args.dev) venv_dir = get_ghidra_venv(install_dir, args.dev)
python_cmd: List[str] = find_supported_python_exe(install_dir, args.dev) python_cmd: List[str] = find_supported_python_exe(install_dir, args.dev)
print(install_dir)
if python_cmd is not None: if python_cmd is not None:
print(f'Using Python command: "{" ".join(python_cmd)}"') print(f'Using Python command: "{" ".join(python_cmd)}"')
else: else:
@@ -396,7 +396,10 @@ public class AppConfig {
String userSettingsDirName = appName + "_" + applicationVersion + "_" + String userSettingsDirName = appName + "_" + applicationVersion + "_" +
applicationReleaseName.replaceAll("\\s", "").toUpperCase(); applicationReleaseName.replaceAll("\\s", "").toUpperCase();
if (isDev) { if (isDev) {
userSettingsDirName += "_location_" + installDir.getParentFile().getName(); String dirName = new File(installDir, "ghidra.repos.config").isFile()
? installDir.getParentFile().getName()
: installDir.getName();
userSettingsDirName += "_location_" + dirName;
} }
// Ensure there is a user home directory (there definitely should be) // Ensure there is a user home directory (there definitely should be)