MacEnhance / MacForge

📦 Plugin, App, and Theme store which includes plugin injection for macOS
https://www.macenhance.com/macforge
MIT License
1.05k stars 47 forks source link

Homebrew Cask Tap for MacForge #11

Closed goranmoomin closed 4 years ago

goranmoomin commented 5 years ago

Feature Request

Is your feature request related to a problem? Please describe. I would appreciate if MacForge can be installed with Homebrew Cask.

Describe the solution you'd like A Homebrew Cask tap for MacForge is maintained, so that installing MacForge (when SIP disabled) should be a one-liner.

$ brew tap w0lfschild/repo && brew cask install macforge

I have the intentions to maintain the Homebrew tap if you would like.

Describe alternatives you've considered Installing MacForge with a .app is the current solution.

Teachability, Documentation, Adoption, Migration Strategy There should be nothing to change; it's just an (IMHO very popular) alternative installation method.

w0lfschild commented 5 years ago

I've personally had basically no experience using Homebrew. IIRC someone made a cask for cDock and possibly mySIMBL.

If this is something you'd like to maintain you're welcome to. Also if it's something simple/scriptable I could add to the build/publishing routine for the app.

goranmoomin commented 5 years ago

@w0lfschild Ok, I'll (try to) maintain the home-brew repo. May I ask how MacForge should remove itself? If there is no standard uninstallation procedure I'll remove these files on uninstallation:

$ find . -iname '*macforge*'
./Library/Application Support/MacForge
./Library/Application Support/MacForge/com.w0lf.MacForge.ipak
./Library/Preferences/com.w0lf.MacForge.plist
./Library/Cookies/com.w0lf.MacForge.binarycookies
./Library/Caches/com.w0lf.MacForge

If there is (a standard uninstallation prodeure), I'll like to invoke it (preferably a shell script). I can't see any uninstall button however; it looks like it's trying to find out if MacForge.app was dragged to the trashcan, but I'm not sure how it can be invoked (and MacForge isn't doing a great job trying to find out; a separate MacForge.app in the trashcan makes MacForge puzzled BTW).

w0lfschild commented 5 years ago

Yeah there's currently no uninstall as quitting the menubar and trashing it will stop any injection from happening.

If you're envisioning removing all traces of the application here's what it uses outside the user folder:

# plugins folder
/Library/Application Support/MacEnhance

# helpers
/Library/PrivilegedHelperTools/com.w0lf.MacForge.Injector
/Library/LaunchDaemons/com.w0lf.MacForge.Injector.plist

/Library/PrivilegedHelperTools/com.w0lf.MacForge.Installer
/Library/LaunchDaemons/com.w0lf.MacForge.Installer.plist
goranmoomin commented 5 years ago

Ok, thanks! I'll make a Cask repo right away. :-)

goranmoomin commented 5 years ago

@w0lfschild Are there any scriptable methods to install/uninstall plugins too? I would prefer if the uninstallation process can cleanly remove MacForge's plugins.

I've tried clearing MacForge from my Mac right now (with SpacesRenamer enabled) and I've currently found these:

$ find . -iname '*spacesrenamer*'
./Library/Containers/com.alexbeals.SpacesRenamer
./Library/Containers/com.alexbeals.SpacesRenamer/com.alexbeals.spacesrenamer.plist
./Library/Containers/com.alexbeals.SpacesRenamer/com.alexbeals.spacesrenamer.currentspaces.plist
$ find /Library/ -iname '*spacesrenamer*'

My understanding is that it is out of MacForge's control where the Cocoa bundle will write files too. I would prefer if I could get all of MacForge plugin's identifier lists and remove them from ~/Library/Containers, is there any scriptable solution?

goranmoomin commented 5 years ago

@w0lfschild Added a draft Cask at sscotth/homebrew-sip#5.

w0lfschild commented 5 years ago

@pcr910303 I don't really have any control over what a plugin does outside /Library/Application Support/MacEnhance. Something like SpacesRenamer is not just a plugin but also an Application. I do plan on adding some functionality to manage apps installed by MacForge at some point in the future.

ipatch commented 4 years ago

did a repo and cask ever get setup for macforge ?

w0lfschild commented 4 years ago

@ipatch I don't know anything about Homebrew and I'm guessing the OP never followed up beyond the pull request they made so I'm guessing that's a no.

goranmoomin commented 4 years ago

@ipatch Looks like the repo owner has abandoned the hombrew tap, and I'm not using MacForge now, so... the PR was abandoned :-(