SelfControlApp / selfcontrol

:skull: Mac app to block your own access to distracting websites etc for a predetermined period of time. It can not be undone by the app or by a restart – you must wait for the timer to run out.
http://selfcontrolapp.com
GNU General Public License v3.0
4.04k stars 399 forks source link

Doesn't start on OSX 10.10 #184

Closed frewsxcv closed 10 years ago

frewsxcv commented 10 years ago

When attempting to start the app in OSX 10.10:

screen shot 2014-06-12 at 9 42 19 am

ghost commented 10 years ago

Yeah man, same problem here, fucking annoying, anyone working on it already?

chibicode commented 10 years ago

Adding the word "Yosemite" so it gets found from the search bar :)

ghost commented 10 years ago

@chibicode What do you mean? Where am I supposed to add "Yosemite"?

chibicode commented 10 years ago

@st0rmkid oh sorry, I meant this:

image

ghost commented 10 years ago

@chibicode Oh I see. Bummer the only thing that stops me is that I don't have a developers license for Mac just for iOS.

ashishkumar commented 10 years ago

Agree. Any tips on building for those without a Mac developer license?

cstigler commented 10 years ago

Hey all, I see that this is an issue. I haven't had time to update SelfControl in ages. I will definitely try to get to it before Yosemite gets out since this seems pretty major, but it would be really really cool if somebody else could step in and figure it out right now!

SelfControl will build fine without a Mac developer license, it's just used for code signing when distributing the app. You'll need to go into the project settings and turn off code signing to get it building.

appsmonkey commented 10 years ago

It is asking for the cert on the build.

https://www.evernote.com/shard/s10/sh/8c77fa6b-b892-42dc-9659-972f43a4b10c/a0288e3b3b451032a280c7a6efbba87c

I have build it by adding --deep to the "other code signing flags" (Sparkle framework needs it - new thing since 10.9 - frameworks need to be signed apparently) here is more info on the --deep http://stackoverflow.com/questions/17263967/codesign-of-dropbox-api-fails-in-xcode-4-6-3-code-object-is-not-signed-at-all

but it will probably not work for distribution based on this blog http://furbo.org/2013/10/17/code-signing-and-mavericks/

Anyway it builds and it gives this 00:00:00 screen (not timer screen) https://www.evernote.com/shard/s10/sh/c8740056-f604-4159-b081-29ea6456805e/8beafb6468f2581853f877f1409bab63

And fails with this:

2014-06-17 14:55:55.615 SelfControl[37198:2604975] WARNING: Block should have ended two seconds ago, starting scheckup 2014-06-17 14:55:55.628 scheckup[37202:2605099] INFO: Checkup helper ran, block expired, removing block. 2014-06-17 14:55:55.633 scheckup[37202:2605099] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'launch path not accessible' * First throw call stack: ( 0 CoreFoundation 0x00007fff85fde14c __exceptionPreprocess + 172 1 libobjc.A.dylib 0x00007fff8f6e757d objc_exception_throw + 43 2 CoreFoundation 0x00007fff85fddffd +[NSException raise:format:] + 205 3 Foundation 0x00007fff8a130e6c -[NSConcreteTask launchWithDictionary:] + 444 4 scheckup 0x0000000100006a30 -[IPFirewall containsSelfControlBlockSet] + 512 5 scheckup 0x0000000100001a97 removeRulesFromFirewall + 103 6 scheckup 0x00000001000031cf removeBlock + 319 7 scheckup 0x0000000100003a4d main + 1261 8 scheckup 0x00000001000012b4 start + 52 ) libc++abi.dylib: terminating with uncaught exception of type NSException 2014-06-17 14:56:23.615 SelfControl[37198:2604975] WARNING: Block should have ended thirty seconds ago! Probable permablock.

it looks like that ipfw: NSString* const kIPFirewallExecutablePath = @"/sbin/ipfw";

is not there anymore:

>file /sbin/ipfw

/sbin/ipfw: cannot open `/sbin/ipfw' (No such file or directory)

it is replaced with pfctl completely

cstigler commented 10 years ago

@appsmonkey yup, looks like we'll definitely have to move to pf.

On the code signing issue, you just need to go into the project settings and remove the developer identity. It's currently looking for my dev ID since I distribute it.

michaelnew commented 10 years ago

I just downloaded the project and was able to build and run it (just set code signing to "don't code sign" in the project settings). Both debug and release builds run fine in Xcode, but if you try to open the app in Finder it will throw that error message. Bumping the version and build number to 1.5.2 solves this though and it runs fine.

I can do a pull request if you want, but it seems kind of silly for such a small thing.

vsching commented 10 years ago

@mikenew12 Is it working for you? I tried follow your steps and archived it, however, it works but not blocking any website.......

michaelnew commented 10 years ago

@vsching You're right, I just ran it and it's not actually blocking anything. After hitting start it crashed, and on restart the timer counted down like normal, but no sites were actually blocked. Now the app is in a broken state just like what issue #90 describes. If I can I'll try and investigate a little bit.

vsching commented 10 years ago

@mikenew12 great, let me know if you have any new findings, i will have a look at it this weekend. hopefully can find something to resolve it =p

vsching commented 10 years ago

@mikenew12 @cstigler Hi i did some debugging and found 1 issue which results in the crash.

/sbin/ipfw is missing in Yosemite, any suggestion? Or anyone have that file, and possible to pass to me to try

and i got some Couldn't posix_spawn: error 8 and Couldn't posix_spawn: error 13, when i tried some hacks..

cstigler commented 10 years ago

@vsching yes, the issue is that ipfw is no longer included in Yosemite. SelfControl will have to be modified/rewritten to use pf instead

On Fri, Jun 20, 2014 at 8:47 PM, vsching notifications@github.com wrote:

@mikenew12 @cstigler Hi i did some debugging and found 1 issue which results in the crash. /sbin/ipfw is missing in Yosemite, any suggestion?

Or anyone have that file, and possible to pass to me to try

Reply to this email directly or view it on GitHub: https://github.com/slambert/selfcontrol/issues/184#issuecomment-46743701

michaelnew commented 10 years ago

Hey @cstigler , I think @vsching and I kind of missed that earlier discussion, sorry. Do you have any sense of what this rewrite would take? I'm not familiar with ipfw or pf. Is that something you think would be doable by someone who isn't familiar with the source code could do in a reasonable amount of time?

cstigler commented 10 years ago

@mikenew12 luckily the ipfw part is pretty well abstracted out into the IPFirewall class, so you'd probably only have to change that. I'm not too familiar with pf myself yet, so I'm not sure how much effort it'll take. I think I'll try to take a day next weekend and work on a lot of SelfControl stuff I've fallen behind on. If you get a chance to get some work done before then, I would love to see it in a PR!

michaelnew commented 10 years ago

@cstigler cool, if I can get any extra extra time this week I'll definitely take a look. I'm an iOS developer, not really much of a mac developer, but Self Control has really helped me out a lot and I'd love to contribute a bit if I can.

vsching commented 10 years ago

@cstigler looks complicated to me, not familiar with either ,I will try to have a look on this , see what I can figure out ;)

frewsxcv commented 10 years ago

Looks like @cstigler made some progress in: https://github.com/slambert/selfcontrol/commit/205aab5c1741952f8db79aedc401314d815d7f26

If it works, could we ship a new version?

cstigler commented 10 years ago

@frewsxcv yup, over the weekend I got my first day of work on SelfControl in over a year! but "working" is a relative term in that commit -- it's a first draft, and I haven't tested it much. I expect it will not work consistently yet. I expect I'll need to find ~2 more full days of SelfControl work to get it mostly bug-free.

I'll post on this thread with a beta version as soon as it's ready so y'all can test.

ghost commented 10 years ago

@cstigler Awesome, thank you.

aarjav commented 10 years ago

Happy to help test as well. I am pining for renewed selfcontrol :)

TBoneTheOriginal commented 10 years ago

Hey guys, any update on this? I came across this thread while searching for an answer on Self Control, and I'd love to be a beta tester if you need me.

kylepierce commented 10 years ago

I think there will be a wave of people looking for this fix with the public beta of yosemite. Myself included.

stephenson commented 10 years ago

I would be happy to help testing as well.

qingpeng commented 10 years ago

me too. waiting to test

atroche commented 10 years ago

me three =)

xdanielgs commented 10 years ago

I did something really stupid and I need your help. I upgraded to Yosemite in the middle of a block session. Yosemite was installed. The time that I had set for SelfControl has gone. But I still cannot open the sites!

Any suggestions on how can I fix this? Help!!!

cstigler commented 10 years ago

@xdanielgs SelfControl won't work on Yosemite yet, but you can remove your block with the Killer application: <>

EDIT: If you're using SelfControl 2.0+, just wait ten seconds at the 00:00 timer screen, and a button labeled "Stuck? Stop block manually." will replace the "Add to Blocklist" button." Click it and remove your block manually! You may need to restart your computer after removing the block manually to get it working right.

If you're using an older version of SelfControl, see this guide: https://github.com/SelfControlApp/selfcontrol/wiki/Fixing-the-SelfControl-00:00-bug-on-versions-prior-to-SelfControl-2.0

xdanielgs commented 10 years ago

@cstigler I actually figured it out. I just edited /etc/hosts and it started working again. Thanks.

swildermann commented 10 years ago

i would also like to be a tester for that.

funski commented 10 years ago

Hi there, just wondering if there was any success with the rewrite to suit Yosemite? Happy to also be a tester.

Also, could you update the timelines so that it can be set beyond 24 hours? preferably in weeks, months, or even 1 year. Thanks.

thepavangollapalli-zz commented 10 years ago

I'm not sure if you're asking for the feature to be built into the program, but you can update the timelines yourself with a couple of Terminal commands: https://github.com/slambert/selfcontrol/wiki/Tweaking-Max-Block-Length-and-Block-Length-Interval

funski commented 10 years ago

Hi thepavangollapalli, I was asking it to be a feature into the program with a GUI. But thank you for the terminal customisation link. Unfortunately, I'm not even in a position to do that right now as SelfControl current does not seem to work on the public beta version of Yosemite OS X 10.10.

frewsxcv commented 10 years ago

@cstigler Any updates on the beta? I'm sure a lot of worker hours/$ are being lost every day this isn't fixed :P

atroche commented 10 years ago

If only it were a product we paid for…

On 11 August 2014 13:34, Corey Farwell notifications@github.com wrote:

@cstigler https://github.com/cstigler Any updates on the beta? I'm sure a lot of worker hours/$ are being lost every day this isn't fixed :P

— Reply to this email directly or view it on GitHub https://github.com/slambert/selfcontrol/issues/184#issuecomment-51739179 .

-- Alistair

frewsxcv commented 10 years ago

I'd definitely donate to get this fixed

atroche commented 10 years ago

Me too :)

On Monday, 11 August 2014, Corey Farwell notifications@github.com wrote:

I'd definitely donate to get this fixed

— Reply to this email directly or view it on GitHub https://github.com/slambert/selfcontrol/issues/184#issuecomment-51740297 .

Sent from Gmail Mobile

funski commented 10 years ago

Same here.

Sent from my iPhone

On 11 Aug 2014, at 2:04 pm, Corey Farwell notifications@github.com wrote:

I'd definitely donate to get this fixed

— Reply to this email directly or view it on GitHub.

slambert commented 10 years ago

@atroche @funski No one is stopping you from hiring someone – one of the freedoms you get with Free Software. However, I have a feeling @cstigler maybe be pretty far along with this so I would check in with him before you went in that direction.

funski commented 10 years ago

Steve, our comments aren't meant as complaints. More about how much we value the app. Also, I wouldn't know where to start and what to look for in hiring a software engineer. :)

Sent from my iPhone

On 11 Aug 2014, at 11:36 pm, Steve Lambert notifications@github.com wrote:

@atroche @funski No one is stopping you from hiring someone – one of the freedoms you get with Free Software. However, I have a feeling @cstigler maybe be pretty far along with this so I would check in with him before you went in that direction.

— Reply to this email directly or view it on GitHub.

neilmacaogain commented 10 years ago

Any update on the beta?

AKlokus commented 10 years ago

Following up again to see what the status is. Would love to keep using it with Yosemite :)

grabinat commented 10 years ago

I just bid 10$ for solving the problem on Bountysource. So if more people will invest, I hope the problem can be fixed soon.

https://www.bountysource.com/issues/2628018-doesn-t-start-on-osx-10-10

frewsxcv commented 10 years ago

Contributed to the bounty as well

ghost commented 10 years ago

$15 more, good luck!

atroche commented 10 years ago

$15 from me! Thanks for setting this up, @grabinat

michaelnew commented 10 years ago

And my Axe!

I mean, my $15.

aarjav commented 10 years ago

$50 from me! (This is P1 on my personal scale)

Also, here's a link straight to the issue instead of the badge: https://www.bountysource.com/issues/2628018-doesn-t-start-on-osx-10-10 https://www.bountysource.com/issues/2628018-doesn-t-start-on-osx-10-10

https://www.bountysource.com/issues/2628018-doesn-t-start-on-osx-10-10

Aarjav TrivediFounder & CEO, Summon https://www.bountysource.com/issues/2628018-doesn-t-start-on-osx-10-10 https://www.bountysource.com/issues/2628018-doesn-t-start-on-osx-10-10 www.summon.com

Cell: 4046616234aj@summon.com aj@summon.comGet the Android app here https://play.google.com/store/apps/details?id=com.ridecell.com.unicorn&hl=en | Get the iPhone app here https://itunes.apple.com/us/app/instantcab/id513651818?mt=8 | Apply to Drive for us http://www.instantcab.com/!TechCrunch: "Summon (formerly InstantCab) has a unique twist on the transportation app..take a look at the inventory comparison" http://techcrunch.com/2013/03/15/instantcab/ http://techcrunch.com/2013/03/15/instantcab/

On Fri, Sep 5, 2014 at 2:18 PM, Michael New notifications@github.com wrote:

And my Axe!

I mean, my $15.

— Reply to this email directly or view it on GitHub https://github.com/slambert/selfcontrol/issues/184#issuecomment-54682806 .