2013 Recap
I decided to write a recap, but before New Year there was somehow no time for it, and during the holidays there was no decent internet.
2013 was like a storm, tossing me back and forth.
On the pleasant side, there were three new countries over the year: Thailand, France, and Sweden. In France, though, I did not see anything besides Paris, and even there I only moved around the center, but I explored Thailand and Sweden quite closely and in several places.
As usual, I will illustrate the year.
Homebrew C++ App Compilation Issues on OS X 10.9 Mavericks
There is a Homebrew issue on OS X 10.9 Mavericks: some packages do not compile from source. This affects programs written in C++. Yesterday I had to spend quite a bit of time solving it.
Judging by what I found on Google, the issue affects only those who upgraded from 10.8 to 10.9. For those who installed the system from scratch, everything seems to be fine.
Yesterday I got this:
$ brew update
Updated Homebrew from f949b212 to 9d10c43e.
==> Updated Formulae
gfortran
$ brew install spidermonkey
==> Downloading http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz
Already downloaded: /Library/Caches/Homebrew/spidermonkey-1.8.5.tar.gz
==> ../js/src/configure --prefix=/usr/local/Cellar/spidermonkey/1.8.5 --enable-readline --enable-threadsafe --with-system-nspr --enable-macos-target=10.9
==> make
==> make install
Error: spidermonkey dependency readline was built with the following
C++ standard library: libstdc++ (from clang)
This is incompatible with the standard library being used
to build spidermonkey: libc++ (from clang)
Please reinstall readline using a compatible compiler.
hint: Check https://github.com/mxcl/homebrew/wiki/C++-Standard-Libraries
After some googling and poking around in GitHub issues, I followed the link that was in the last line of the console output. It said:
There are two standard C++ libraries supported by Apple's compilers.
By default, 10.8 and earlier used libstdc++, and it was supported by Apple GCC, GNU GCC, and clang.
In 10.9, libc++ is used by default; clang also uses it by default on older platforms when building C++11 code.
There are some incompatibilities between the different standard C++ libraries, so Homebrew rejects installing software if one of its dependencies was built with an incompatible C++ library. It recommends rebuilding the dependency tree with a compatible compiler.
If you upgraded to 10.9 from an earlier version, then because libc++ is now the default C++ library, you may be unable to build from source programs whose dependencies were built on 10.8 or earlier. If you are reading this because a compilation error sent you here, you can fix everything by reinstalling the dependencies of the package you are trying to build.
And that, in fact, is the solution to the problem. If you are installing some package (in this case spidermonkey) and you see an error like this:
Error: spidermonkey dependency readline was built with the following
C++ standard library: libstdc++ (from clang)
then you simply need to reinstall the dependency the compiler complains about. In this case, readline. Just run:
brew reinstall -v readline
After the dependency is rebuilt, the package itself will install.
I ran into this when I was trying to install a new version of CouchDB. It pulls in spidermonkey, which in turn pulls in readline. I simply had to reinstall both dependencies.
I hope this note saves someone some time.
How to Upgrade a Hackintosh from Mac OS X Mountain Lion to Mavericks

I upgraded my work Hackintosh to 10.9 today. Everything was rather strange, but doable.
Before that it was running 10.8.5 Mountain Lion. I downloaded the Mavericks update from the Mac App Store. I launched it, the installer asked for a reboot, and after the reboot nothing happened — Mountain Lion simply loaded again.
To install the update, you need the following:
Impressions of Windows Phone 8
I have been using the Lumia 625 for 4 days now. I finally got to know Windows Phone 8 up close. It turned out to be much nicer than I thought.
Syncing a Folder Located Elsewhere with Yandex.Disk
For now Yandex.Disk only syncs files and folders located inside its own folder and does not let you add a folder from elsewhere, for example from another hard drive. If you do not want to place the folder you need to sync inside the Yandex.Disk folder, on macOS you can create a symlink, for example:
ln -s /Volumes/MyDisk/FolderToSync /Users/user/Яндекс.Диск/FolderToSync
On Windows, in theory, you can use a symbolic link as well.
Hackintosh Cheat Sheet
I will keep notes here on what to do about various Hackintosh issues. For now this applies to 10.8.5.
kernel extensions in backtrace org.apple.driver.applertc(1.5)
install "AppleACPIPlatform rollback" from Multibeast
If the USB mouse and USB keyboard do not work when the system boots, oddly enough it is related to audio. Delete HDAEnabler1.kext from /System/Library/Extentions and install the audio drivers via Multibeast (in my case ALC887 with DSTD, current).
You can delete the file either in single-user mode (boot with the -s key) or by connecting over remote desktop.
When upgrading to Mavericks, in Multibeast version 6 GraphicsEnabler=No is the default, so you get a black screen after boot. It needs to be set to Yes.
One Evening with Rostelecom Mobile Service
On August 1 Rostelecom launched mobile service in St. Petersburg. Today I bought a SIM card to play around with.