-
-
Developer Mode System Extensions on macOS
System and Network Extensions are fairly easy programmatically. However, there is some nuance around building them. Much of this is in getting the correct entitlements – but also a little in troubleshooting. To see (or set) those entitlements, look at the .entitlements file located in the root of an Xcode Project. That will be a plist with a few entries. In this one, we’ll see com.apple.developer.networking.networkextension so we’re working on a network extension. com.apple.security.app-sandbox com.apple.security.application-groups $(TeamIdentifierPrefix)com.krypted.firewall com.apple.developer.networking.networkextension content-filter-provider To add one, go to the General screen for the project, and locate the section for Frameworks, Libraries, and Embedded Content. Then use the plus sign to add and provide the name…
-
So Long, Fry’s, Thanks For All The Fish
-
Create Email Aliases in Office 365
The things are always changing. I write less and less how-to things because as the rate of innovation skyrockets (another way to say changes that are sometimes good and sometimes bad) – the second I hit save the article seems out of date, or technical debt. But hey, sometimes I have to look longer than I should for something. So. To create an email alias in Microsoft Online/Office 365. Login to an account with Exchange administrative capabilities Click the Admin tab. Click Exchange in the left sidebar. Click Recipients. Click Mailboxes (or Users in the newer interface). Click the user to create the alias for (in the old interface click…
-
Jamf After Dark: The Language Of Design Systems
-
MacAdmins Podcast: School Life
-
Some Basic Chromeos Troubleshooting (Under the hood)
Chromeos is one of the easier operating systems to use. It’s matured a lot over the years and there are now some great troubleshooting options under the hood. One thing I hate doing is mashing buttons without at least some semblance of proof of a hypothesis about what a problem is. In other words, I like to start troubleshooting with logs. For this let’s use Ctrl+Alt+F2 to bring up a virtual terminal. From there: A standard place for logs since Unix System V has been /var/log. In there are files such as libcros_log, which is where chromium dumps logs from services. /var/log/messages and subdirectories of /var/log/window_manager/chromeos-wm.LATEST and /home/chronos/user/log/chromoeos-wm.LATEST /home/chronos/user/log/chrome_log which…
-
Apple 1997-2011: The Return Of Steve Jobs
-
From Moveable Type To The Keyboard
-
Reviewing TCC dialog prompts using logs on a Mac
I wrote this awhile back on using the logging facilities in macOS to review and parse logs. The log command provides a number of options to see various events on a Mac. I was recently working on an app that was automatically denying a prompt to generate entitlements and thought I’d post how to find the logs for that. First, let’s find all prompts. We’ll do that using the com.apple.TCC subsystem as a predicate. In the below command we simply pipe the output to grep for Prompting. /usr/bin/log show -style syslog --predicate 'subsystem == "com.apple.TCC"' --info --last 12h | grep Prompting I’d much rather use “&& contains” in syslog because…