Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request]: Portable Mode for Desktop App on Windows #745

Open
3 tasks done
Monty1836 opened this issue Jan 28, 2025 · 1 comment
Open
3 tasks done

[Feature Request]: Portable Mode for Desktop App on Windows #745

Monty1836 opened this issue Jan 28, 2025 · 1 comment
Labels
enhancement New feature or request

Comments

@Monty1836
Copy link

Monty1836 commented Jan 28, 2025

Prerequisites

  • I have searched the existing issues and checked the recent builds/commits
  • I have read the documentation and this feature is not already available
  • This is a single feature request (not multiple features combined)

Problem Statement

I was poking around with the standalone app because I don't want to use up the space on my system drive, and I've noticed that after installation, the electron app can actually be moved anywhere else on the system, and it still functions just fine. Seeing that, I decided to do a bit more poking around. All of the files specified in the extra model paths can be moved into the real ComfyUI install in the electron app's resources folder without a problem, which isn't surprising. That only leaves the uv-cache folder, logs, and the roaming appdata folder that aren't already portable from what I can tell.

Proposed Solution

Make the electron app's install location user configurable. Given that it can already be moved without causing any issues, this part should be easy. Next, add a checkbox in the installer to install ComfyUI portably. This will take a bit more work, depending on how the code base is set up. Any references to the roaming appdata, uv-cache, and logs will need to be changed to relative links, likely within the base electron install directory.

Potential workflow

  1. Run the ComfyUI installer.
  2. When you reach the point of selecting the install directory, select it as normal. For ease of use, the electron app should now install into this folder rather than the local appdata directory.
  3. On the same screen, select a toggle for portable mode. This will tell the installer to configure ComfyUI to read appdata from a subfolder in the same install directory that was selected.
  4. Continue install as normal, and the ComfyUI install should now be portable, launched by running ComfyUI.exe directly.

Impact Level

High (Major improvement)

Alternatives Considered

A version of the desktop app which links with the existing portable version of ComfyUI could be made, but the app is so close to being portable already, that I feel it would be more work to separate the electron app from its built-in ComfyUI install than to just switch to using relative paths.

Additional information

Allowing portable installs is in my opinion, important for managing drive space. With the number of apps that want to dump files into the appdata folders, the system drive can run out of space fairly quickly if the drive isn't particularly large. The current configurable install directory feels like a bit of a lie, since neither the app, nor ComfyUI even install there, it just configures your extra paths config, and throws a cache, and some logs into the folder. The already fully portable electron app, and ComfyUI install inside it are going to eat up space on the system drive, and the user doesn't get a choice about it.

┆Issue is synchronized with this Notion page by Unito

@Monty1836 Monty1836 added the enhancement New feature or request label Jan 28, 2025
@robinjhuang
Copy link
Member

@Monty1836 Thanks for the detailed issue. We currently only install a few hundred megabytes into AppData which includes the electron application binaries and ComfyUI source code.

Majority of the space taken will be models, custom nodes, input/output files etc which will be stored in your chosen directory. That directory can be moved around, although you need to edit some config files after doing that. Desktop can add support for that though if you want to move that around.

Do you actually need the source code to be portable as well? If so please let us know why!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants