Skip to content

[Pitch] Install Directory Settings #2304

@brianp

Description

@brianp

Install Directory Settings and Storage Location Configuration

Problem

Currently, the app installs to default system locations such as the C drive on Windows, which may not be desirable for all users. Additionally, large data storage locations like the blockchain data are fixed, limiting user control over disk usage and storage management.

Motivation

Allowing users to select custom install directories during setup and change storage locations for large data components via app settings will provide flexibility, better disk space management, and improved user experience. This is particularly important for users with limited space on default drives or those using multi-drive setups.

Scope

  • On Windows:

    • Modify MSI and EXE installers to prompt users for a custom install directory.
  • On all platforms (Windows, macOS, Linux):

    • Provide application settings to configure storage locations for:
      • Configuration files
      • Chain storage
      • Log storage
      • Other large data as applicable
  • Changing storage locations will:

    • Require an application restart to take effect.
    • Attempt to copy existing data from old to new location.
    • Perform free disk space checks before copying.
    • Handle errors or fallback if insufficient disk space is detected.
  • macOS Considerations:

    • Due to potential sandboxing and folder access restrictions, testing is required before enabling folder selection options.
    • Implement fallback or recommended locations if restrictions apply.

Appetite

TBD

Risks

  • macOS sandboxing may limit folder access and require special handling.
  • Data migration requires sufficient disk space; failure scenarios need graceful handling.
  • Installer modifications on Windows may introduce complexity or require additional testing.

Who’s Involved

To be assigned after review.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions