Skip to content

Restore 3dconnexion from homebrew-cask-drivers; update to 10.8.7 #206331

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

Closed

Conversation

ELLIOTTCABLE
Copy link
Contributor

@ELLIOTTCABLE ELLIOTTCABLE commented Mar 25, 2025

Important: Do not tick a checkbox if you haven’t performed its action. Honesty is indispensable for a smooth review process.

In the following questions <cask> is the token of the cask you're submitting.

After making any changes to a cask, existing or new, verify:

Additionally, if adding a new cask:

  • Named the cask according to the token reference.
  • Checked the cask was not already refused (add your cask's name to the end of the search field).
  • brew audit --cask --new <cask> worked successfully.
  • HOMEBREW_NO_INSTALL_FROM_API=1 brew install --cask <cask> worked successfully.
  • brew uninstall --cask <cask> worked successfully.

I'm opening this as a draft for now, because I need a little help: after being installed, this doesn't work out-of-the-box, because it includes a macOS "Driver Extension." I couldn't find anything in the Homebrew docs about this, is there a particular programmatic way to handle this?

At the moment, the workaround is to manually launch the 3DconnexionHelper.app that's included when this installs, which will then cause the system-prompt to enable the driver extension. After this, it will show up in System Preferences.

The 3Dconnexion applications handle this, for the most part, prompting you to go into system prefs and enable it; but it doesn't appear in system prefs until you've launched the helper-app at least once:

image

Any feedback? Is there a best-practices for driver extensions?

@ELLIOTTCABLE
Copy link
Contributor Author

ELLIOTTCABLE commented Mar 25, 2025

Also, the uninstall script isn't working for me - and I don't understand why. I thought maybe there were some shenanigans w/ trying to use the git upstream or something, but even after pushing this branch and opening the PR, brew uninstall is running … the old code?

$ brew uninstall --cask 3dconnexion
==> Uninstalling Cask 3dconnexion
==> Removing launchctl service com.3dconnexion.helper
Password:
==> Removing launchctl service com.3dconnexion.nlserverIPalias
==> Running uninstall script /Applications/3Dconnexion/Uninstall 3Dconnexion Driver.app/Contents/Resources/rm3dcx
Error: uninstall script /Applications/3Dconnexion/Uninstall 3Dconnexion Driver.app/Contents/Resources/rm3dcx does not exist.

Note the diff - it shouldn't be trying to run that path, which doesn't exist anymore:

84d9d7a (#206331)

There's also an unrelated failure in CI that I'm not getting locally - something wonky with the permissions of some of the crap this driver installs in /Applications:

https://github.com/Homebrew/homebrew-cask/actions/runs/14069204445/job/39399204172?pr=206331#annotation:17:25

@eleanordoesntcode
Copy link
Contributor

eleanordoesntcode commented Mar 29, 2025

Also, the uninstall script isn't working for me - and I don't understand why. I thought maybe there were some shenanigans w/ trying to use the git upstream or something, but even after pushing this branch and opening the PR, brew uninstall is running … the old code?

Try running your tests with HOMEBREW_NO_INSTALL_FROM_API=1 - brew often uses its API for installs and the like, which is faster but not what you want for development.

For the rest of the questions, I don't have the experience nor the knowledge to answer those.

@p-linnane
Copy link
Member

This PR is getting a bit stale, so please open a new one when you have time to fix the uninstall.

@p-linnane p-linnane closed this Apr 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants