Skip to content

Instantly share code, notes, and snippets.

View depth42's full-sized avatar

Frank Illenberger depth42

  • ProjectWizards
  • Frankfurt, Germany
View GitHub Profile
@depth42
depth42 / gist:7355346
Created November 7, 2013 14:23
Xcode Server has the problem that one can only access the build log files once the build or test process has finished. But as it can occur that tests hang, it is hard to analyze why and where the hang actually happened. This little shell script helps debugging by showing the log output of the currently running bot.
#!/bin/bash
# Shell script to be executed on a Mavericks Server runing Xcode Server using sudo
BOTRUN_DATA=/Library/Server/Xcode/Data/BotRuns
LATEST_RUN=`ls -tr $BOTRUN_DATA | grep BotRun- | tail -n1`
tail -f ${BOTRUN_DATA}/${LATEST_RUN}/output/build.log
@depth42
depth42 / gist:7346100
Created November 6, 2013 23:27
How to make Xcode Server send notification e-mails from a DSL dialup line.
Xcode Server notifies developers via e-mail (sadly no Jabber support yet) about the state of its integrations. In the default settings, Mavericks Server directly tries to send these messages. If your Xcode Server runs on a regular dialup DSL line, these messages will most likely be bounced as spam.
To get it to work one needs to activate the relay option in the Server.app > Mail settings with the credentials of your e-mail ISP.
But additionally I had to issue the following commands in Terminal.app to make it work:
sudo postconf -c /Library/Server/Mail/Config/postfix/ -e "smtp_sasl_security_options = noanonymous"
sudo postfix reload
sudo postsuper -r ALL
@depth42
depth42 / gist:6886194
Last active December 25, 2015 00:09
The xib compiler in Xcode 5.0.1 always sets the scaling bit of all NSViews which results in dramatically reduced performance. Until Apple fixes this severe bug, we work around this by patching NSKeyedUnarchiver to clear the bit during decoding of the compiled xib files. By the way: We filed this bug three months ago under rdar://14359398.
@interface NSKeyedUnarchiver (Xcode5Fix)
@end
@implementation NSKeyedUnarchiver (Xcode5Fix)
+ (void)load
{
[self exchangeInstanceMethod:@selector(decodeInt32ForKey:)
withMethod:@selector(xcode5Fix_decodeInt32ForKey:)];
}