About | ACP | Buy Stuff | Industry Watch | Learning Curve | Newsletter | Search | Test Drive
Home » Learning Curve » ACP Guru

Otemanu 2.3.4 (2305)

Available 'as is' and one time only.

Get It

Try It

TAORMINA (Rixstep) -- Otemanu 2.3.4 is available as a free download immediately. Otemanu is a one-off branch of Vienna RSS 2.3.4. The branch was made because updates to Vienna were coming in too rapid a succession and because despite repeated requests to the current Vienna maintainers nothing was done to clean the code.

The code was tested over the summer and has been in use ever since (for over four months).

A Branch Isn't a Branch

The Otemanu 'branch' of Vienna RSS isn't really a branch - the code is essentially the same as before. The changes have been to the way the code is built. These are the changes suggested to the Vienna maintainers (who have chosen to ignore them). Anyone can make a similar branch of Vienna by following the steps outlined below.


Members of the Rixstep Forum noted over a succession of days how Vienna RSS was being updated again and again. They tired of the exercise of cleaning all the junk the maintainers should be doing and looked for a more mature solution. Rixstep created an earlier branch based on these principles; a decision was made to do it again - but this time document exactly what's done so the process can be repeated if necessary.

The entire process including the documentation took but a few hours.


1. Starting again with 2.3.4.
2. Put in all symlinks in frameworks. Must be done from command line. Even on Tiger causes system to put com.apple.FinderInfo XA on each symlink. Yuck.
3. As before: running as is with 18 languages just overloads the system. Only recourse is to remove redundant languages.
4. Removing all extraneous lproj files. Now must remove them from project.
5. Changed 'deployment' to 'release' and removed 'development'.
6. Toggled 'warnings as errors' off.
7. Clean build.
8. Dispense with help index generation for 17 languages.
9. First build (Otemanu,00) is 408/4284296/798 (uncleaned).
10. This is a straight Vienna build.

11. Time to tweak.
12. 119 TIFFs. 1032612 bytes, 2512 blocks, 0 bytes in extended attributes.
13. TIFFCompress.
14. 119 TIFFs. 136448 bytes, 1008 blocks, 0 bytes in extended attributes.
15. Just saved *752 KB*.
16. Time to remove frameworks you don't want.
17. Will be done by simply ticking off 'include in project'.
18. Put frameworks in order in project.
19. Builds but does not run. Time to remove the code - carefully after archiving.

20. Back. Now removing Grackle and all references in code.
21. Building...
22. Bingo!
23. Must remove 'SUUpdater' in MainMenu.nib as well as object and class.
24. Bingo. Now make command line build?
25. Amount of text this sucker outputs from the command line is incredible.
26. 321 items, 3043673 bytes, 7560 blocks, 286 bytes in extended attributes.
27. This might be as far as ordinary users want to go.
28. Cleaned trailing white out of hundreds of source and text files. Test build.
29. 319 items, 2956371 bytes, 7384 blocks, 286 bytes in extended attributes.

30. Next step is to find all refs to Vienna and replace them with Otemanu.
31. InfoPlist.strings gone.
32. Found this classic.

    BOOL shouldEmptyTrash = ([NSApp runModalForWindow:[self window]] == MA_EmptyTrashReturnCode_Yes);

    if ([doNotShowWarningAgain state] == NSOnState)
        [[Preferences standardPreferences] setInteger:(shouldEmptyTrash ?
        MA_EmptyTrash_WithoutWarning : MA_EmptyTrash_None) forKey:MAPref_EmptyTrashNotification];

    [self close];

    return shouldEmptyTrash;

33. He's only credited in two source files (and their headers) and both are trivial.
34. Disabled all calls to NSLog. Don't want that shit.
35. Next step is going to be tricky: setting min col widths to -3.
36. Found it in the code. B4: 10/1000. Now: (correct) -3/9999.
37. 306 items, 2782818 bytes, 6968 blocks, 286 bytes in extended attributes.
38. Status bar at bottom of window is pretentious and worthless.
39. Found incompatibilities with 10.5 (use of cString replaced with UTF8String).
40. Took out AppleScript shite, removed XA gunk from help index file.
41. 304 items, 2782389 bytes, 6944 blocks, 0 bytes in extended attributes.
42. Cleaning script must take GIF, JPG, PNG into account.

User Comments

My god it's so fast it's scary. I'm running an older version of Vienna that takes 4 or 5 bounces on a first open.

I second the speed of Otemanu. Wow is this build fast.

System Requirements

Otemanu 2.3.4 (2305) is a universal binary and it runs on Mac OS X 10.4 Tiger, 10.5 Leopard, and 10.6 Snow Leopard. A trimmed copy for Intel machines has 304 items and takes 1,704,461 bytes in 4840 blocks with 0 bytes in extended attributes. Copies for PowerPC boxes are approximately the same size (1,666,360 bytes/4768 blocks/0 bytes in XAs).

Further Reading
Rixstep FTP: Otemanu 2.3.4 (2305) (1.1 MB/1,183,687 bytes)

About | ACP | Buy Stuff | Industry Watch | Learning Curve | Newsletter | Search | Test Drive
Copyright © Rixstep. All rights reserved.