scoop

Discussion related to "Everything" 1.5 Alpha.
Post Reply
kyle
Posts: 21
Joined: Sun Aug 21, 2022 2:42 pm

scoop

Post by kyle »

Hi - I posted last year about directory junctions: viewtopic.php?t=12012

As a follow-up to that, what is the current state of things with Everything 1.5a WRT junctions/reparse targets?

Specifically, the scoop use case is of interest to me. I followed your advice before and am currently set up like this:
- NTFS Index for "C:\scoop"
- Folder for "C:\scoop" (Index subfolders)
- Result Omission for "C:\Users\Kyle\scoop\**"
- Everything Filter for "!<index-type:ntfs C:\scoop\>"

When I search for this "C:\scoop\apps\7zip\ folder:", I get these results:

https://ibb.co/t8RqFrg
Image

You can see that it returns the "current" folder and the specific version "23.01" folder, but "current" is a directory junction pointing to "23.01". It works this way for all of the scoop apps. This means all of the files related to all of the installed apps are listed twice. How can I configure Everything to only show the current folder (and everything it points to) but not the version-specific folder (and everything under it)?

It would be like this, without the results that have a red line through them...
https://ibb.co/Y3s0MMD
Image
void
Developer
Posts: 16776
Joined: Fri Oct 16, 2009 11:31 pm

Re: scoop

Post by void »

Please consider the following result omission filter for files and folders:

Code: Select all

regex:^c:\\scoop\\apps\\[^\\]*\\(?!current($|\\))
This will only include the current folder for each folder under the main apps folder.
kyle
Posts: 21
Joined: Sun Aug 21, 2022 2:42 pm

Re: scoop

Post by kyle »

Thanks, that did the trick! It removed those records, but the size is wrong - double-counting.

If i use the filter you had originally recommended, it shows C:\scoop 3 times, each with a different size.

Code: Select all

!<index-type:ntfs C:\scoop\>
Image


If I tweak the filter slightly by removing the trailing slash, it only shows C:\scoop once, but the size is wrong - double counted.

Code: Select all

!<index-type:ntfs C:\scoop>
Image


Here is the actual size, as reported by Windows 11 File Properties:
Image

The same holds for all of those scoop app folders - double counted for the size.


1. I'm guessing the filter should not use the trailing slash?
2. How do we get the accurate size?
void
Developer
Posts: 16776
Joined: Fri Oct 16, 2009 11:31 pm

Re: scoop

Post by void »

The following will work:
!<index-type:ntfs C:\scoop>

However, it can inadvertently match C:\scoop2

Consider the following search:

!<index-type:ntfs pathlist:C:\scoop>

pathlist:



Everything will show the total size in the index.
Files in reparse points will be counted twice.

There's a total size on disk property.
Unfortunately, it's broken in the latest alpha.
I'll have this fixed in the next alpha update.

For now, consider showing the Windows Property System Size on Disk property.
Please note this property is rather IO expensive to gather.
Right click the result list column header -> Add columns -> Windows Property System (bottom left) -> Size on disk.
kyle
Posts: 21
Joined: Sun Aug 21, 2022 2:42 pm

Re: scoop

Post by kyle »

I may have misunderstood you (or miscommunicated the problem), because the "Size on disk" is only showing up for files, not folders. I believe it's the folder size that's getting double counted. It looks like the "Size on disk" matches the "Size" of a file, but it's not formatted as a number and the units are different. FWIW, I have had the option "Index folder size" checked this whole time. I did a Force Rebuild, but it didn't matter. The red box indicates the missing values.

Image

I added a couple other columns and compared against what Windows File Explorer reports in the properties dialog. I drew red boxes around those numbers that match. The "Size" column matched sometimes, but not always - when it didn't match, it was very close (likely a rounding discrepancy).
Image

I saved the troubling one for last. :D You can see 2 of the folders have no size reported at all in any of those size-related columns. This is where it's a Directory Junction (for "current" to version-specific), and then another Directory Junction for both of those folders pointing to Scoop's "persist" folder.
Image

Everything already supports a ton of functionality. It does it very well, and very fast! Scoop is a widely used application (just one example), and their design choices are clever and make appropriate use of the Directory Junction concept. I understand that there is complexity with Directory Junction, Hard Link, etc., but man it would be so helpful if Everything could support these type of use cases. It may not (probably won't) be possible to find a silver bullet, one size fits all, solution because people expect things to work differently, and even the same person will expect (or at least want) it to work differently in different situations. Maybe regular expression patterns for enabling/disabling a certain behavior?

Thanks again for your help, and for making this application!
void
Developer
Posts: 16776
Joined: Fri Oct 16, 2009 11:31 pm

Re: scoop

Post by void »

Sorry, my mistake.

I was thinking the Windows property Size on disk works for folders.
Alas, it does not..



Does the Total Size property give the expected size?
-This should match the total folder size reported by Windows Explorer. (differs to total size on disk)



Size on disk does the following in Everything (and in Windows Explorer):
If the file is stored in the MFT, report the size on disk as 0
Return the allocation size (this will be a multiple of your volume cluster size)



Everything is currently not folder junction aware.
Everything sees the folder function as just a normal folder.
I will look into making Everything more folder junction aware..
kyle
Posts: 21
Joined: Sun Aug 21, 2022 2:42 pm

Re: scoop

Post by kyle »

Does the Total Size property give the expected size?
In answer to your question, yes, the Total Size property does give the expected size - when it's populated.

These are the sizes that are correct (in the red boxes): https://gcdnb.pbrd.co/images/YwQBjzjy0Nov.png
Image
I will look into making Everything more folder junction aware..
Thank you!!! I really feel this is an important missing piece.
Post Reply