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

[FR] Require Mininum Version of swiftdialog and mist-cli Rather Than Specific Version #533

Open
Elektrode opened this issue Nov 13, 2024 · 5 comments
Assignees
Labels
enhancement New feature or request

Comments

@Elektrode
Copy link

Elektrode commented Nov 13, 2024

PLEASE NOTE THAT FEATURE REQUESTS ARE ONLY CONSIDERED AGAINST v.28.0+

Is your feature request related to a problem? Please describe.
We are already using swiftDialog in our Jamf environment for other uses in addition to erase-install, but erase-install always seems to reinstall the specific version of swiftDialog tagged on Line 60 (currently 2.5.2) in the erase-install.sh script, even though I might already have the tagged version installed or even a more recent version. I want to keep swiftDialog (currently at 2.5.3) updated with Jamf's App Installers, but that will make it difficult to do if every time a user runs the erase-install update script it gets overwritten with the tagged version of swiftDialog in the script.

Describe the solution you'd like
Is it possible to construct Line 60 to check for a minimum installed version of swiftDialog and forego reinstallation if that condition is met?

Describe alternatives you've considered
None

Additional context
I am new to erase-install, so maybe I missed something? I went through the documentation, but I did not find this specific issue addressed.

@Elektrode Elektrode added the enhancement New feature or request label Nov 13, 2024
@xrdscole
Copy link

Glad you broght this up. Very curious about this as well!

@grahampugh
Copy link
Owner

grahampugh commented Nov 13, 2024

Hi, thanks for the FR. Actually erase-install.sh was previously more relaxed about the swiftDialog version, but swiftDialog proved to have breaking changes in the past that meant if people were running a newer version, erase-install did not work properly. To avoid this happening again, I had to start setting (and providing) a specific version that I know is compatible.

I wonder if it would be possible to get it to install in a specific location so that it didn't interfere with whatever other things you are using swiftDialog for.

EDIT: I think the above would be difficult because there is not just the app, but also the binary at /usr/local/bin/dialog.

Obviously I'm going to bump the version of swiftDialog to 2.5.3 once I've had a chance to test it. In fact this would already be done if I hadn't found some unrelated issues around softwareupdate --fetch-full-installer that I'm trying to solve. I'll see if I can push an interim version with the swiftDialog bump in it.

EDIT 2: It is the package installer that currently contains swiftDialog 2.5.2, so it reinstalling the older version. If you only use the script, erase-install.sh will attempt to work with whatever version of swiftDialog is already installed (see line 311). I could potentially look into providing a package without swiftDialog in it, as I used to do in the old days for python and DEPNotify.

@Elektrode
Copy link
Author

Thanks for the speedy follow up, Graham! I hadn't been aware that erase-install used to be more flexible with the swiftDialog version, but I totally get it.

I can freeze updating the App Installer version of swiftDialog by choosing a manual installation method instead--but Jamf only allows one to do so starting with the version that was current in the Jamf App Catalog when first creating the App Installer record or switching over from Auto to Manual installation. For me, that was, well, yesterday, after swiftDialog was updated to version 2.5.3.

Once you get the swiftDialog version tag in the script updated to 2.5.3, that version can remain the version across my deployments, and I'll just make sure to remember to update swiftDialog only when I update erase-install.

@grahampugh
Copy link
Owner

New version released that uses 2.5.3: https://github.com/grahampugh/erase-install/releases/tag/v36.1

@grahampugh
Copy link
Owner

I've published a new release candidate that uses a portable installation of swiftDialog that shouldn't interfere with a standard installation. See https://github.com/grahampugh/erase-install/releases/tag/v37.0. Tests very welcome!

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

3 participants