Trying to package a system/admin install for intune

If you are experiencing problems with "Everything", post here for assistance.
Post Reply
JanVP
Posts: 6
Joined: Fri Aug 09, 2024 2:30 pm

Trying to package a system/admin install for intune

Post by JanVP »

-Trying "Everything-1.4.1.1026.x64.Lite-Setup.exe" and also with the files inside it.
(-IMO, the Lite's version system tray icon right-click actions could be even simpler.)
-I want to disable NTFS drives and end up with a blank folder list that users can fill themselves (with network drives) and store their settings and local database in appdata

-On my machine, I had good results with this command, even though "-choose-volumes" is not supposed to work with "-install-options"?
Everything.exe -install "C:\Program Files\Everything" -install-options "-app-data -choose-volumes -disable-update-notification -uninstall-desktop-shortcut -install-folder-context-menu -uninstall-quick-launch-shortcut -uninstall-run-on-system-startup -uninstall-service -uninstall-start-menu-shortcuts -install-all-users-start-menu-shortcuts -install-language 2067"
-Intune, however, made a Start menu shortcut to its own cached version of the executable.
-Using the setup one on my machine:
Everything-1.4.1.1026.x64.Lite-Setup.exe /S -install-options "-app-data -disable-run-as-admin -install-efu-association -install-folder-context-menu -uninstall-run-on-system-startup -uninstall-service -uninstall-desktop-shortcut -install-start-menu-shortcuts -uninstall-url-protocol" /D=C:\Program Files\Everything
-But then, of course, the app asks the NTFS question. Is there a way to merge config settings during a system/admin setup?
void
Developer
Posts: 16745
Joined: Fri Oct 16, 2009 11:31 pm

Re: Trying to package a system/admin install for intune

Post by void »

-On my machine, I had good results with this command, even though "-choose-volumes" is not supposed to work with "-install-options"?
-choose-volumes is an install option and can be used with -install-options.

-choose-volumes disables NTFS volumes and returns immediately.


-Intune, however, made a Start menu shortcut to its own cached version of the executable.
I don't know what Intune is doing internally.
Is it possible to pack the portable Everything.exe and have intune copy this to C:\Program Files\Everything and then call:

C:\Program Files\Everything\Everything.exe -app-data -disable-run-as-admin -install-efu-association -install-folder-context-menu -uninstall-run-on-system-startup -uninstall-service -uninstall-desktop-shortcut -install-start-menu-shortcuts -uninstall-url-protocol -choose-volumes

This is what my installer does internally.
A call to Everything.exe with any -install-option command line options will return immediately.


-But then, of course, the app asks the NTFS question. Is there a way to merge config settings during a system/admin setup?
Use -install-config in your install options:

Everything-1.4.1.1026.x64.Lite-Setup.exe /S -install-options "-app-data -disable-run-as-admin -install-efu-association -install-folder-context-menu -uninstall-run-on-system-startup -uninstall-service -uninstall-desktop-shortcut -install-start-menu-shortcuts -uninstall-url-protocol -choose-volumes -install-config ""c:\Program Files\Everything\myEverything.ini""" /D=C:\Program Files\Everything

-or-

C:\Program Files\Everything\Everything.exe -install-config "c:\Program Files\Everything\myEverything.ini"
JanVP
Posts: 6
Joined: Fri Aug 09, 2024 2:30 pm

Re: Trying to package a system/admin install for intune

Post by JanVP »

Thank you very much, sir. I'll try that on Monday.
JanVP
Posts: 6
Joined: Fri Aug 09, 2024 2:30 pm

Re: Trying to package a system/admin install for intune

Post by JanVP »

Today, I did not try to mimic the setup anymore and only packaged "Everything-1.4.1.1026.x64.Lite-Setup.exe" and ran that as a setup command with parameters. Should I reboot AFTER Intune installed the app? (Reboots seem to be needed to trigger Intune and avoid waiting.)

I had good results with this command, which includes only the four non-default parameters I want:

Code: Select all

Everything-1.4.1.1026.x64.Lite-Setup.exe /S -install-options "-app-data -uninstall-run-on-system-startup -uninstall-service -install-folder-context-menu -uninstall-desktop-shortcut -choose-volumes" /D=C:\Program Files\Everything
However, the fifth one (-choose-volumes) still fails. If I include it, the initial popup still shows. If not included, the same ini-settings appear in the appdata folder, although -appdata was not included.

After running "Everything.exe -choose-volumes", these user settings (in %appdata%) do get set correctly.

Code: Select all

auto_include_fixed_volumes=0
auto_remove_offline_ntfs_volumes=0
auto_include_fixed_refs_volumes=0
auto_remove_offline_refs_volumes=0
Where is the "-choose-volumes" setting stored? Registry? Not in the program folder, I checked. That one only has:

Code: Select all

app_data=1
run_as_admin=0
Is there an "all users" ini file? Would it help to reboot after installing?
(Explorer-integration seems to linger after uninstalling from control panel, even after reboot.
Update: That too was caused by Intune:

Code: Select all

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\Zoek Everything...\command
"C:\Windows\IMECache\a6773073-1aa3-4fe3-95fa-4876483f564f_1\Everything.exe" -path "%V"
)

Because I also want to set "hide_empty_search_results=1", I'll try to merge ini settings now.
Update: included "mySettings.ini" in package and tried both [-install-config ""mySettings.ini""] and [-install-config ""c:\Program Files\Everything\mySettings.ini""] - no dice.

Code: Select all

; Please make sure Everything is not running before modifying this file.
[Everything]
hide_empty_search_results=1
auto_include_fixed_volumes=0
auto_remove_offline_ntfs_volumes=0
auto_include_fixed_refs_volumes=0
auto_remove_offline_refs_volumes=0
Last edited by JanVP on Mon Aug 12, 2024 3:56 pm, edited 4 times in total.
void
Developer
Posts: 16745
Joined: Fri Oct 16, 2009 11:31 pm

Re: Trying to package a system/admin install for intune

Post by void »

However, the fifth one (-choose-volumes) still fails. If I include it, the initial popup still shows.
If I run your command from an admin powershell or an admin command prompt, Everything will silently install.

What popup is shown?
Maybe the extra -install-options command line is too long for intune? (226 characters)


Where is the "-choose-volumes" setting stored? Registry?
-choose-volumes sets the following values:

Code: Select all

auto_include_fixed_volumes=0
auto_include_removable_volumes=0
auto_remove_offline_ntfs_volumes=0
auto_include_fixed_refs_volumes=0
auto_include_removable_refs_volumes=0
auto_remove_offline_refs_volumes=0
These values are stored in your "user" Everything.ini
aka %APPDATA%\Everything\Everything.ini


Is there an "all users" ini file?
There is a "machine" Everything.ini
This file is stored in C:\Program Files\Everything


Would it help to reboot after installing?
A reboot is not necessary.
Please make sure Everything is not running before modifying the Everything.ini
Your Everything.ini is rewritten to disk when you exit Everything.


Because I also want to set "hide_empty_search_results=1", I'll try to merge ini settings now.
Update: included "mySettings.ini" in package and tried both [-install-config ""mySettings.ini""] and [-install-config ""c:\Program Files\Everything\mySettings.ini""] - no dice.
I'm guessing this file doesn't exist when Everything is installed?
Does intune support scripts?
Does intune unpack itself? can you reference your mysettings.ini with something like C:\Windows\IMECache\...\Everything.ini

I am going to study up on intune..
JanVP
Posts: 6
Joined: Fri Aug 09, 2024 2:30 pm

Re: Trying to package a system/admin install for intune

Post by JanVP »

Many thanks. I think we're nearing the root cause: default user settings.
(I used to be a programmer and still enjoy investigating issues like these.
Previously I packaged Adobe Reader for our organisation (although using the old GPO method and not Intune), which took quite a while but taught me a lot about default settings (which a user may later modify) and system settings they cannot.)

The popup I want to get rid of is (translated from Dutch):""Everything" needs admin rights to index NTFS volumes [...]", with 3 radio buttons. I want the bottom one: "Don't index NTFS volumes".

With Intune, you can install an app in System context (it's a toggle: System or User). If I omit Everything's "-app-data" and used the following command (definitely short enough), the user's ini file's still created in %appdata% the first time a user launches the app, although the NTFS-popup is not shown (which I cannot explain; maybe the app still launches as admin?):

Code: Select all

Everything-1.4.1.1026.x64.Lite-Setup.exe /S -install-options "-choose-volumes" /D=C:\Program Files\Everything
Probably also because Intune runs the installer with System rights, you end up with only these two system settings in the app folder's ini file:

Code: Select all

; Please make sure Everything is not running before modifying this file.
[Everything]
; settings stored in %APPDATA%\Everything\Everything.ini
app_data=1
run_as_admin=0
Afterwards each user can launch the app, which creates the (very long) ini file in their own Roaming folder. That one does not contain these two system settings.

Now, the main question: where can I specify default user settings? If I want "hide_empty_search_results=1" as default (but a user can later change/overrule this), I would expect adding that line to the app folder's ini file uses it as a starting point for a brand new user's ini file:

Code: Select all

; Please make sure Everything is not running before modifying this file.
[Everything]
; settings stored in %APPDATA%\Everything\Everything.ini
app_data=1
run_as_admin=0
hide_empty_search_results=1
Sadly, it does not. In the new (very long) user's ini file, that setting is present but still set to its default (zero).

Update: just found [Computer\HKEY_LOCAL_MACHINE\SOFTWARE\voidtools\Everything] - THIS is where the installation options are stored, as default starting points for the user's ini file. Is there a reason why the two-line-system-ini in the app folder exists? Would it help to choose either registry or that ini file?
IMO, parameters like "-choose-volumes" and "-install-config" should add settings to the registry or to the shared ini file in Program Files (maybe add a "default" section for clarity?), to be used each time a new user ini file is created (in %appdata%).

You wrote: "-choose-volumes sets the following values [...] These values are stored in your "user" Everything.ini aka %APPDATA%\Everything\Everything.ini".
That works perfectly as designed. Running this command in a user profile without ini file (in %appdata%), indeed creates a (long) user ini file with NTFS disabled. It does not open the app UI. When the user launches the app UI, the NTFS-popup does not show.

In summary:
-Running "Everything.exe -choose-volumes" *after* installation (but on a user profile without ini file) works fine. In addition to the four lines we already talked about, these seven also get cleared correctly when C-drive/NTFS is disabled:

Code: Select all

ntfs_volume_guids="\\\\?\\Volume{1a2b1b08-5970-4888-8682-d82996f9769e}"
ntfs_volume_paths="C:"
ntfs_volume_roots=""
ntfs_volume_includes=1
ntfs_volume_load_recent_changes=0
ntfs_volume_include_onlys=""
ntfs_volume_monitors=1

ntfs_volume_guids=
ntfs_volume_paths=
ntfs_volume_roots=
ntfs_volume_includes=
ntfs_volume_load_recent_changes=
ntfs_volume_include_onlys=
ntfs_volume_monitors=
-However: when I run the app (UI/frontend) while no user ini file yet exists, the app ignores the "InstallChooseVolumes=0" registry setting and behaves the exact same way as with "InstallChooseVolumes=1".
-I want to prevent that initial NTFS-popup, so that the user starts with a blank slate (not even C-drive)
-I'd also like a way to set other default user settings (e.g. "hide_empty_search_results=1"), preferably by merging ini files (whether or not they then get stored in the app's ini file; the one that currently has only two settings).
-I can live without getting the emty result screen, but I really want the "blank slate" (the "InstallChooseVolumes=0" registry setting) to work.

Many thanks again.
void
Developer
Posts: 16745
Joined: Fri Oct 16, 2009 11:31 pm

Re: Trying to package a system/admin install for intune

Post by void »

The Everything installer is unlikely to do what you want, please try installing with the portable version.

The installer will launch Everything after installation, even in silent mode.

I have made an installer that doesn't launch Everything in silent mode:
Everything-1.4.1.1026.x64.Lite.NOSILENTRUN-Setup.exe

The next installers built will no longer launch Everything in silent mode.



There's no way to specify the default user settings for Everything 1.4.
You will need to call:
C:\Program Files\Everything\Everything.exe -choose-volumes
for each user.
-or-
create an Everything.ini in %APPDATA%\Everything for each user:

Code: Select all

; Please make sure Everything is not running before modifying this file.
[Everything]
hide_empty_search_results=1
auto_include_fixed_volumes=0
auto_include_removable_volumes=0
auto_remove_offline_ntfs_volumes=0
auto_include_fixed_refs_volumes=0
auto_include_removable_refs_volumes=0
auto_remove_offline_refs_volumes=


Install with the portable version

Call the portable version with:
c:\tmp\Everything.exe -install "C:\Program Files\Everything"


Setup Everything with all your install options:
"C:\Program Files\Everything\Everything.exe" -app-data -uninstall-run-on-system-startup -uninstall-service -install-folder-context-menu -uninstall-desktop-shortcut -choose-volumes


This is the same as what the installer does.



Everything 1.5
The Everything 1.5 installer will not launch Everything in silent mode.
Everything 1.5 will also support Group Policies
New users will pull values from the Everything.ini in the same location as Everything.exe as you are expecting.
JanVP
Posts: 6
Joined: Fri Aug 09, 2024 2:30 pm

Re: Trying to package a system/admin install for intune

Post by JanVP »

I understand, thx for your effort and attention.
(I still don't understand why the app ignores the "InstallChooseVolumes" registry key, though.)

For now, I documented the (one-time) process steps users need perform. We'll see how that goes.

>> New users will pull values from the Everything.ini in the same location as Everything.exe as you are expecting.
Very interesting. Looking forward to its release!
Would you like people like me test it for package deployment using GPO and/or Intune?
void
Developer
Posts: 16745
Joined: Fri Oct 16, 2009 11:31 pm

Re: Trying to package a system/admin install for intune

Post by void »

(I still don't understand why the app ignores the "InstallChooseVolumes" registry key, though.)
The registry key InstallChooseVolumes is only used by the installer.
Silent mode will also use this key.
You can set this value before running the installer.

InstallChooseVolumes will only be set for the current user.
New users after the install will not read this value.


Would you like people like me test it for package deployment using GPO and/or Intune?
Thank you for your offer.
I would love to have you help test Everything 1.5. (GPO and Intune)
Post Reply