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

Portable version #13

Open
4 tasks
ZacWalk opened this issue Dec 30, 2020 · 7 comments
Open
4 tasks

Portable version #13

ZacWalk opened this issue Dec 30, 2020 · 7 comments
Assignees
Labels
enhancement New feature or request

Comments

@ZacWalk
Copy link
Contributor

ZacWalk commented Dec 30, 2020

This issue tracks work needed to support a portable version of Diffractor. Multiple users have asked for this.

I am not sure if an app that indexes your photos makes sense to be portable. However, I am happy to put it out there and see what feedback I get.

  • Use INI file for config settings
  • Data files should be usable from the folder where the binary is located [locations, cach.db, dictionaries, settings]
  • Confirm no files left on PC
  • Test can run from USB
@ZacWalk ZacWalk added the enhancement New feature or request label Dec 30, 2020
@ZacWalk ZacWalk self-assigned this Dec 30, 2020
@ImportTaste
Copy link

ImportTaste commented Jun 12, 2021

@ZacWalk
I use portables whenever the option is presented because sometimes, you have to reinstall your whole OS (be it due to upgrading your PC or otherwise), and the less I have to redownload setup files, install them, and restore their appdata/registry settings into the proper places, the better.

But, I think an even bigger reason I like to see portable options for new apps that I'm looking at is knowing that, if I don't like it, it's not going to leave clutter behind after being removed.

@ImportTaste
Copy link

Also, I just noticed that there is are Paid features. Depending on how you handle your DRM (a lot of apps base it off motherboard serial number), it would potentially mean that I wouldn't have to reverify if I'm using it on the same PC but with a new Windows installation.

@ZacWalk
Copy link
Contributor Author

ZacWalk commented Jun 12, 2021

Thanks for the feedback @ImportTaste. I agree with your points. I will take that as another vote for me to hurry up and make a portable version :)

The main thing stopping me is that I don't have a good solution for how to store Diffractor's cache of thumbnails and metadata information. Currently, this gets stored in the user profile folder. It can get quite large. Too large to store locally if you are running Diffractor portably from a USB for example.

I can store settings in an INI file so that is not a problem. I don't do any DRM based on the motherboard, serial number, or any PC H/W.

@ImportTaste
Copy link

The main thing stopping me is that I don't have a good solution for how to store Diffractor's cache of thumbnails and metadata information. Currently, this gets stored in the user profile folder. It can get quite large. Too large to store locally if you are running Diffractor portably from a USB for example.

Thumb drives are pretty big nowadays, but if it's really a problem, there are two things you can do:

  1. An option to still use AppData for the thumbnail cache while keeping everything else in the program folder
  2. Being able to set a limit to the thumbnail cache where the oldest of the cached images get overwritten once the limit is reached

Also, have you considered changing the default path for the thumbnail cache to %ALLUSERSAPPDATA% (C:\ProgramData)? It never made much sense to me to make caches per-user when ideally they should be sharing the same cache to save space. (Though, when portable, the default path should be within the portable user data folder.) Maybe it could be an option, and maybe when you change the path in the options it could automatically move the folder to the new location.

@ZacWalk
Copy link
Contributor Author

ZacWalk commented Jun 16, 2021

I agree with that although it has been controversial where to store the cache with many users.

My current thinking is just to add a '-portable' command-line switch that stores settings in a local .INI and stores a cache file in the same folder as the .exe. I believe that would satisfy most users who have given me feedback. (I still have concerns about the cache file size.)

I should have it done in a month. .. should :)

@Stefanoko
Copy link

Stefanoko commented Jul 13, 2022

a local .INI and stores a cache file in the same folder as the .exe. I believe that would satisfy most users who have given me feedback.

I fully agree.
The way it works now, I always have to remember to delete the db-file on the host machines. Or copy it over to my portable drive, so I won't lose the data, should I want to keep it.

I tried the "-no-indexing" command line option, but it does not seem to work. It indexes nevertheless and creates a diffractor-cache.db file on the host.

A portable version — with a functional "-no-indexing" commandline option — would make me use the program on a regular basis.

@sakibarifin
Copy link

Any updates on this?

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

4 participants