Category Archives: resources

Updating application icons for macOS 26 Tahoe and Liquid Glass

The application icon for my data wrangling software looks like this on a Mac up to macOS 15.x:

However, Apple has once again nuked everything from orbit. Now it looks like this in macOS 26 Tahoe when the application is inactive or if you choose any Icon & widget style apart from Default:

Thanks Apple. It is such a joy to develop for Mac.

With some help from a designer and hours of going around in circles, I have finally managed to fix things to support the new ‘liquid glass’ look. This is how it should look in the next release, depending on the setting in Appearance>Icon & widget style:

Default
Dark
Clear/Light
Clear/Dark
Tinted

I’m not convinced it is an improvement in terms of usability. But, at least my app icon doesn’t look like shit.

What you need to know

The new macOS 26 icon format is .icon. It is a folder full of various resources and is totally different to the old .icns format.

The .icon file can be created by Apple Icon Composer. I used a freelancer on Fiverr who did a good job of converting my existing vector artwork and was very cheap. The .icon file should contain a maximum of 4 groups (which seem to be like layers) other it won’t compile to a resource properly.

Note that macOS hide the extension of .icon folders by default, which was a source of some confusion.

The .icon file then has to be processed into an Assets.car file using actool. For example:

xcrun actool application.icon --compile ./icons/macosx --output-format human-readable-text --notices --warnings --errors --output-partial-info-plist temp.plist --app-icon Icon --include-all-app-icons --enable-on-demand-resources NO --development-region en --target-device mac --minimum-deployment-target 26.0 --platform macosx

You will need to change the bold parts above, as appropriate.

I had to update my Mac laptop to macOS 26, Xcode 26 and the macOS 26 SDK for the above to work.

You can check the Assets.car file using assetutil to create a .json file listing the contents:

xcrun --sdk macosx assetutil --info ./icons/macosx/Assets.car > ./icons/macosx/temp.json 

You will need to change the bold parts above, as appropriate.

Then you need to reference the new icon in your existing application .plist file. For example, add at the same level as CFBundleGetInfoString:

<key>CFBundleIconName</key>
<string>application</string>

You will need to change the bold part above, as appropriate. I believe the string value if based on the file stem of the original .icon file. But I’m not 100% sure about that. Look at the .json file produced by assetutil for clues. Mine contained this:

The temp.plist file generated by actool is apparently supposed to give you a .plist file that refers to the icon resource. It didn’t and was completely useless.

Then place both Assets.car and your old .icns file in the Resource folder of your application (before you sign it). That way it should look ok on both macOS 26 and earlier OSes.

If you develop using XCode, it will probably do some of the above for you. I develop in C++/Qt using Qt Creator, so I had to do it all manually.

I was able to generate the Assets.car on macOS 26 and then incorporate it into the build on my macOS 12 development machine.

I hope the above saves someone a few hours. Now I need to repeat the process for PerfectTablePlan.

You might also find this post useful (where I got some of the information):

https://www.hendrik-erz.de/post/supporting-liquid-glass-icons-in-apps-without-xcode

My new ‘Start your own software business’ training course

Things have been a little quiet on this blog as I have been busy on some new projects as well as continuing to work on PerfectTablePlan. I am announcing one of those new projects today.

Start your own software business

A two day intensive training course on how to create a profitable business selling your own software product

22/23 November 2013

Swindon, England

There is a lot more to running a software business than knowing how to program. The last 8 years of running my own software business have been a huge learning experience for me. In this course I am going share as much as I can to help others succeed with their businesses. This is the course I wish had been available when I started out. I am looking forward to getting out from behind my computer and meeting aspiring software entrepreneurs.

There is a £50 discount if you book before the end of September and the course is limited to just 10 attendees. If you have ever dreamed of escaping your cubicle and becoming your own boss, what are you waiting for?

Click this link for more details

I am just beginning to publicise the course and I would really appreciate a mention on Twitter, Facebook, LinkedIn, blogs, social news sites etc.

A curated list of 200 articles for microISVs and startups

I have been steadily adding to the curated list of links on this site. Currently there are links to 200 articles, loosely categorized into topics such as ecommerce, market research, product naming, Pay Per Click and SEO. I have tried to select articles that contain ‘actionable’ information, rather than wafflely articles about ill-defined subjects such as time management and motivation. Some of the articles linked to were written by me, but the majority weren’t. I hope you find something useful. I would be surprised if you don’t.

Go to the links page

New Software Marketing Facebook group

Alwin Hoogerdijk has created a ‘Software marketing’ Facebook discussion group. Personally I’m not a fan of Facebook, as will be obvious to anyone that checks out the howling void that is my Facebook account. But Alwin is a very smart online marketer, so I have tried to overcome my aversion to Facebook and joined the group. Just don’t expect me to care how you are doing at Farmville …

New links page

I have put together a page of categorised links to blog posts and articles that I think might be useful to developers and marketers of commercial software in general, and microISVs/indie developers in particular. I intend to add more links from time-to-time. My rules for inclusion are secret, arbitrary and capricious, so please don’t ask to have your link added.

StartupToDo.com

startuptodoBob Walsh has finally broken cover on his latest project and announced StartupToDo.com, an online community/web app for fledgling microISVs and web start-ups.

Starting a software business is a daunting prospect – you have a vast number of tasks to perform and decisions to make with limited time and resources. StartupToDo aims to speed up that process by providing a range of community requested/rated guides, community feedback on your website, a progress tracker,  focussed discussion groups and more. Bob has put a huge amount of work into this and I wish him every success with it. A subscription is just $15 per month, if you pay annually.

microisvcentral.com

MicroISV blog aggregator planetmiscroisv.com has died, for reasons unknown (Floyd, if you are reading this, I hope you are OK). Glenn Rice of backupbrain.com.au has kindly filled the gap with new aggregator microisvcentral.com. Thanks Glenn! Hopefully he will be able to fix the problem that is causing posts from this blog to not be displayed properly.

Outsourcing artwork through 99designs.com

99designsMost software developers have horrible graphics design skills. I am no exception. So I decided to run a contest on 99designs.com for some artwork I wanted to use to promote Perfect Table Plan. I have used DesignOutput.com once before, but I decided to give their competitor a try after seeing the  stackoverflow.com and homedocumentmanager.com logos created through 99designs.

I put up $300 prize money for a humorous cartoon of a seating arrangement gone wrong. Fees cost me an additional $69. The detailed brief is here and I also supplied this rough sketch:

99designs_cartoon

Here is the winner I chose:

99designs_winner

I ran it as a ‘guaranteed’ competition to try and attract more designers I also made an effort to give plenty of feedback on the designs submitted and I let it run the full 7 days. I found the 99designs website easy and intuitive to use. Setting up the competition only took ten minutes or so. My only gripe is that the ‘eliminate’ and ‘choose winner’ buttons are so close together that it would be easy to click the wrong one. You do have to confirm the winning choice however.

Most of the other competitions are for logos and websites, so mine was a little unusual. But I still got over 40 different designs (some variations on a theme) from 20 different designers. You can see the designs here (those that haven’t been withdrawn). The quality of the entries varied, but much of it was really excellent. I am very happy with the winning entry.

99designs seems rather brutal for the designers. 40+ entries is common and some contests get over 1,000 designs entered. This means stiff competition and the designers don’t get anything unless they win. I am guessing that they are mostly students, who are happy for the practice, or living in cheaper parts of the world, where $300 is a significant amount of money. But it certainly offers excellent value for money for those running contests.

ISVtube

isvtubeISVtube was launched recently by Thomas Holz of easy2sync.com. The site aggregates videos of particular interest to microISVs and could be a very useful resource. To suggest  additional videos email Thomas at:email_e

stackoverflow.com goes public

Jeff Atwood and Joel Spolsky’s programmer’s Q&A site stackoverflow.com has now gone from private beta to public beta today.

I have been one of the private beta testers. I find the badges a bit patronising (I’m a 42 year old professional, not a boy scout), but otherwise I have been very impressed with the site. I think it is going to be a great resource for developers – assuming they can control the group dynamics of a large number of developers (the ‘herding cats problem’) while keeping the spammers at bay. A lot of thought has gone into the reputation system, voting, badges etc so it will be interesting to see what behaviour emerges.

Go and take it for a spin. It has been designed to be ‘low friction’ – you don’t even need a login to get started.