norio-nomura / EasySIMBL

EasySIMBL is modified "SIMBL" for OS X 10.7, 10.8, 10.9 or 10.10 supporting sandbox, resume. No installer.
818 stars 76 forks source link

Issues with EasySIMBL and OS X 10.11 El Capitan #26

Open antons opened 9 years ago

antons commented 9 years ago

It appears that 10.11b1 is not affected by the issue described in #25.

However, one of my plugins which previously injected into the target app just fine, now has issues.

Plugin is injected into the app only if I do the following.

  1. Restart the system.
  2. Launch Gitbox.
  3. Launch EasySIMBL, and check “Use SIMBL” (it is disabled on every relaunch of the system).

If I initially turn on SIMBL before launching Gitbox, or quit Gitbox after the first injection and launch it again, the following message is logged into console (and the plugin is not injected).

09.06.15 18:06:32,626 Gitbox[1219]: Error loading /Users/Anton/Library/ScriptingAdditions/EasySIMBL.osax/Contents/MacOS/EasySIMBL:  dlopen(/Users/Anton/Library/ScriptingAdditions/EasySIMBL.osax/Contents/MacOS/EasySIMBL, 262): no suitable image found.  Did find:
    /Users/Anton/Library/ScriptingAdditions/EasySIMBL.osax/Contents/MacOS/EasySIMBL: open() failed with errno=24

Any thoughts on what might be causing this?

levifig commented 8 years ago

I really miss those tab favicons… :(

repman commented 8 years ago

I really miss those Safari Cookies...

proteins247 commented 8 years ago

I'll chime in to say that I followed https://github.com/norio-nomura/EasySIMBL/issues/26#issuecomment-117028426 to successfully install Stand. But no favicons on tabs and Safari crashed when I right-clicked on a hyperlink.

Sufl commented 8 years ago

I successfully installed SIMBL on OS X 10.11.1 via Terminal as described in https://github.com/norio-nomura/EasySIMBL/issues/26#issuecomment-117028426 but it did not work. I noticed that there was no plugin in Library/SIMBL/Plugins. I tried it again but still no plugin there. I then tried to install SarariStand but that does not seem to work.

I hate the grey sidebar and desperately want the colorful one back. Any advice?

swrobel commented 8 years ago

@Sufl you need to manually copy the SafariStand file into /Library/Application Support/SIMBL/Plugins (or maybe ~/Library/Application Support/SIMBL/Plugins, I haven't tried that path yet). I don't get why that isn't anywhere in the SafariStand instructions, but it's a necessary last step.

Sufl commented 8 years ago

Many thanks swrobel. Eventually I got Stand in my Safari but it is the Finder Sidebar colors that I am desperate to get back. I've spent 2 days trying. I thought maybe having SafariStand might have helped me to achieve that but it didn't unless there is something else I am supposed to do. I don't know what else to try. Any help with this would be very much appreciated.

iamdavid99 commented 8 years ago

Try XtraFinder

On Oct 24, 2015, at 11:52, Sufl notifications@github.com wrote:

Many thanks swrobel. Eventually I got Stand in my Safari but it is the Finder Sidebar colors that I am desperate to get back. I've spent 2 days trying. I thought maybe having SafariStand might have helped me to achieve that but it didn't unless there is something else I am supposed to do. I don't know what else to try. Any help with this would be very much appreciated.

— Reply to this email directly or view it on GitHub https://github.com/norio-nomura/EasySIMBL/issues/26#issuecomment-150833031.

Fofer commented 8 years ago

Sufl, SafariStand has nothing to do with the Finder Sidebar colors. That is handled by another SIMBL plug-in. And there are a few out there that have enabled this in the past. Which one are you using? And, are you sure it's even compatible with OS X 10.11? Probably not. XtraFinder is. Try that.

swrobel commented 8 years ago

@Sufl +1 for XtraFinder - have not tried Finder Sidebar colors but they're a supported option. Apologies to everyone else for getting so off-topic here.

Sufl commented 8 years ago

Thank you everyone for your help. I thought https://github.com/norio-nomura/EasySIMBL/issues/26#issuecomment-117028426 was what you had to do to get the colorful Finder sidebar back in El Capitan as this post gave the solution to that for Yosemite.

Yes I successfully got the colored Finder sidebar back using XtraFinder but it only works with SIP disabled and I thought it might be best to have it enabled. I have spent days searching for other ways to get the color back in Finder and trying various things but no joy which was why I was asking for help here as it helped me before. I had thought installing SIMBL, as described above, was the answer but it seems not.

If there is any possibility that Finder's color can be returned then I would be most keen to hear it. Thanks again.

levifig commented 8 years ago

@Sufl The return of the color icons is unlikely. That was a deliberate change by the Finder and OS X designers. I (and many people) actually like the change but can understand that some people don't. Having said that, color icons on the Finder's sidebar, for the foreseeable future, will have to rely on hacks and workarounds, and SIP will always prevent them. As such, it is up to you to choose which you want more: color icons or SIP. :)

Cheers!

w0lfschild commented 8 years ago

@levifig @Sufl

You can use XtraFinder with SIP on. https://www.reddit.com/r/OSXTweaks/comments/3o3h6k/question_is_there_actual_demand_for_more_native/cvuxvtq

Sufl commented 8 years ago

Dear w0lfschild, you did it for me and I think you are a miracle worker and wonderful. Your answer did the trick for me and, unbelievably, I have got my colorful Finder sidebar back - even after closing down, unlike the Yosemite fix I got earlier on here. So I am absolutely delighted because I had latterly given up. That trick was magic and I thank you so much for your help. You have made me VERY happy :-)

mdaddy commented 8 years ago

Just tried XtraFinder Unfortunately, doesn't work after you turn SIP back on.

  1. Download ExtraFinder
  2. Reboot —> Disable SIP —> Reboot
  3. Install XtraFinder. Works like a charm. All colorful sidebar and labels are back.
  4. Reboot —> Enable back SIP —> Reboot Now XtraFinder doesn't even launch.

So XtraFinder works if you are okay with keeping SIP disabled.

@Sufl - I am guessing you kept SIP off for XtraFinder to keep working?

mdaddy commented 8 years ago

PS @w0lfschild — I use cDock2. good stuff. thanks for that.

Sufl commented 8 years ago

Yes that was the problem for me too, mdaddy, till I tried w0lfschild solution, above, which allowed me to have colorful Finder sidebar icons with SIP ENABLED via XtraFinder! I still can't believe it. I keep clicking on Finder to see if it is still true. And it is. I had tried cDock2 too but there was no option in it for Finder colorful sidebar icons in El Capitan which was what I had wanted. But now I have that with the solution just mentioned - with SIP enabled. So now I've got the best of both worlds.

mdaddy commented 8 years ago

boom. that was it. I have XtrafFinder running, with SIP on.

thanks @Sufl and @w0lfschild

kenanthebarbarian commented 8 years ago

Let me preface this by saying that I know nothing about any of this stuff, but I am generally good at following directions.

Anyway, I recently upgraded to OS X 10.11.3 and am trying to get Afloat to work again in Safari for the fairly pedestrian purpose of keeping a Twitch.tv chat window visible in overlay while playing computer games in fullscreen.

First, I deleted all previous SIMBL and Afloat files and followed @norio-nomura's instructions posted June 30, 2015, to reinstall SIMBL-0.9.9.

Next, I reinstalled Afloat from here and later followed @w0lfschild's directions posted Oct. 24, 2015, replacing "XtraFinder.osax" with "SIMBL.osax" where applicable.

I also followed @w0lfschild's directions from here, replacing \"NotificationCenter\" with \"Safari\" and "Snow Leopard" with "El Capitan."

End result: Afloat works in Safari only if I boot up with SIP disabled. (Which, I gather, is not preferable to having SIP _en_abled.)

Any ideas? (Preferably simple and clearly-explained ones?)

cafink commented 8 years ago

Using @norio-nomura's instructions from June 30th, I was able to get Afloat up and running in El Capitan. I disabled SIP, installed SIMBL and Afloat, then re-enabled SIP, and everything initially appeared to work fine.

However, Afloat's options now randomly (as far as I can tell) disappear from the Window menu after a while. The application (Sublime Text, in my case) remains transparent (my main reason for using Afloat), but the transparency can not be adjusted any further. The Afloat options sometimes re-appear after closing and re-opening the application, but this usually requires several attempts.

What could be the cause of this behavior?

octalmage commented 8 years ago

I'm having issues with this, no matter what I do I can't get a plugin injected without using Applescript to send the inject SIMBL event. Any ideas?

Also, I need to check the use SIMBL box in EaseSIMBL. This seems different from the other posts I've read.

I get this error in the console:

5/21/16 4:58:04.523 PM com.github.norio-nomura.SIMBL-Agent[5063]: #EasySIMBL checking target identifier com.trankynam.aText
5/21/16 4:58:04.523 PM com.github.norio-nomura.SIMBL-Agent[5063]: #EasySIMBL should install plugin /Users/jason.stallings/Library/Application Support/SIMBL/Plugins/bText.bundle
5/21/16 4:58:04.523 PM com.github.norio-nomura.SIMBL-Agent[5063]: #EasySIMBL send inject event
5/21/16 4:58:04.524 PM com.github.norio-nomura.SIMBL-Agent[5063]: warning: failed to get scripting definition from /Applications/aText.app; it may not be scriptable.
alexchandel commented 8 years ago

It seems like one way around this without disabling SIP would be to write a SIMBL kernel extension that specifically enables SIMBL's functionality.

w0lfschild commented 8 years ago

@alexchandel Sorry but that doesn't exactly work. System Integrity Protection blocks unsigned kext. You'd still have to partly disable System Integrity Protection.

norio-nomura commented 8 years ago

AFAIK, A certificate for signing kext can't be get usual way. We need to submit request to apple by e-mail. I don't yet try that. Developer ID certificate can't be used for signing kext as I tested before.

w0lfschild commented 8 years ago

@norio-nomura

I wouldn't bother. Spyresoft tried this with DockMod and their signing was revoked (after being approved) and their kext was added to a kext blacklist that was silently pushed out to all Macs. Now Sypresoft and DockMod are abandonware as their site has gone down and all traces of them vanished.

http://enterprisemac.bruienne.com/2016/03/04/kext-friends-forever/ https://www.spyresoft.com/dockmod/

norio-nomura commented 8 years ago

@w0lfschild Thanks for information. I didn't know about the incident of DockMod.

alexchandel commented 8 years ago

@w0lfschild right, a certificate would be required. But there are several open source kext projects with certificates (tun/tap and osxfuse come to mind).

As for DockMod, it seems these tweets:

So it seems you can use DockMod to inject arbitrary signed library at least against Dock process :X

So it seems like that DockMod might be a nice free injection kernel driver for malware authors ;-) OOOOOOPPPPSSSSS ;-)

It seems Apple feared the existence of a kext that could inject arbitrary signed code into processes, or at least feared such a kext would be used for malware.

Hypothetically, I think a 3rd party kext for code injection that Apple would approve (and not later revoke) would be one that: limited what injected code could do to a finite list of tasks/features (e.g., adding new menu items to the menu bar, writing to /Library/Caches); was able to prevent injected code from doing anything other than what the kext permitted; could grant or deny a bundle's request to inject code on a per-feature basis, essentially running only parts of a bundle; only loaded injected code from SIP protected files; could move bundles into SIP-protection upon request; and required the user to explicitly tell it (i.e. choose in a SIP-protected, uninjectable GUI) to add a particular file, to explicitly mark (i.e. check in a SIP-protected, uninjectable GUI) which processes it could inject into, and explicitly mark (i.e. check in a SIP-protected, uninjectable GUI) which of the file's requested injection features are to be enabled for each chosen process.

This would cover most of the corner cases, and would be consistent with Apple's recent security philosophy of "no implicit permissions."

I'm not saying it's easy/possible to limit what injected code could do, but XPC services might be the way to go for that.

alexandre-g commented 7 years ago

Hey guys, Im trying SIMBL for the first time and all I'm seeing in console is this error SIMBL Agent[506]: warning: failed to get scripting definition from /Applications/Test.app; it may not be scriptable.

Any ideas? I've turned debug logging on but nothing.. defaults write net.culater.SIMBL SIMBLLogLevel -int 0

w0lfschild commented 7 years ago

@alexandre-g consider using mySIMBL. All other SIMBL variants including the original SIMBL do not work properly or at all on the latest releases of macOS.

alexandre-g commented 7 years ago

@w0lfschild I actually did end up finding mySIMBL last night, and was even going to leave a comment here, but didn't get to it. Great work by the way! Worked perfectly the first time.