• Mac OS X,  Mac OS X Server,  Mac Security

    Disable Safari Extension Updates During Development

    I’ve been experimenting with Safari Extensions for awhile ( https://github.com/krypted/Word-Replacer-Safari-Extension ) and once we publish them we might need to continue to use an old version for testing. Extension updates can then be deleted by writing a boolean InstallExtensionUpdatesAutomatically key into the com.apple.Safari defaults domain and setting the option to false: defaults write com.apple.Safari InstallExtensionUpdatesAutomatically -bool false To remove the key and simply return to the default state: defaults delete com.apple.Safari InstallExtensionUpdatesAutomatically

  • Mac OS X,  Mac OS X Server

    Clear that QuickLook Cache

    Seems like just yesterday that I first wrote about using Apple’s QuickLook from the command line. And yet it’s been eight years: https://krypted.com/mac-security/qlmanage/. Guess time flies when you’re having fun. One thing that isn’t fun is when all of a sudden QuickLook stops generating previews for objects when you hit that space bar, or just provides a generic preview. I’ve been working with a lot of more resource intensive file types recently, like .stl files and these can clog the system up. Luckily, filling up the cache, or getting corrupted objects in the cache is something Apple planned for and this is cleaned during a reboot as part of standard…

  • Dungeons and Dragons

    3D Print The Monster Manual Sheet Updated

    I posted this earlier but it got a bunch of updates so thought I’d post it again. Here’s a link for a Google Sheet to download the stl file for every creature in the 1st Edition Dungeons and Dragons Monster Manual: https://docs.google.com/spreadsheets/d/1nAJ4y2JxQU2lb6jWOzqU9GdQtHIS4Z3P3NDHgOMEE9I The first version would have cost about $50 to buy some of the .stl files to print creatures and I didn’t break out all the sub-creations. For example, for Lycanthropes I just did one, but now there’s a seperate tab for dragons, demons, devils, golems, lycanthropes, dinosaurs, and giants. I added some new designs to get the cost to acquire all the .stl files down to $6 (it…

  • Mac OS X,  Mac OS X Server

    Change Default Finder Views Using defaults

    We can manage the way the Finder displays objects using the FXPreferredViewStyle key in the com.apple.finder defaults domain. There are four options in the Finder drop-down for view style and these are Icons (icnv), List (nlsv), Columns (clmv), and Gallery (glyv). Given that only communists use anything other than the list view, we’re going to set the default to that with a simple defaults command: defaults write com.apple.finder FXPreferredViewStyle -string "nlsv" To undo our change and allow it to default to the last view, we can simply delete the key: defaults delete com.apple.finder FXPreferredViewSTyle

  • Dungeons and Dragons,  Gaming

    STL to print a Lynx

    Posted a lynx .stl and Zbrush file up to Thingiverse (see below) at https://www.thingiverse.com/thing:5418854 for anyone interested. Coloring is a little different and the tail is longer if anyone needs a bobcat. Modeled a tad bit after my cat Fredo, who’s also got some chubby cat thighs. If you imagine the trouble a lynx would get into living in a house, that’s pretty much him. Although he fetches as well as the dog does and we’ve trained him to sit maybe 75% of the time. So he’s not all bad. Much blood was had before he learned to be careful with his claws (he’s almost two and that wasn’t really…

  • Uncategorized

    Fiddling Around With The Swift DeviceActivity API

    This is a basic app that pulls down raw output from the swift DeviceActivity API. So all it does is interrogate the iOS DeviceActivity API and relay the output to the screen. This project is just meant to experiment around with the DeviceActivity API documented at https://developer.apple.com/documentation/deviceactivity. Requires the DeviceActivity entitlement to load the DeviceActivity Monitor Extension. A few things to know: Users need to be in the same Family Plan (there might be a way around this) The app requires authorization (understandable but there isn’t any error correction in the experimentation app to correct for a state where a device hasn’t granted it). We have to import FamilyControls, ManagedSettings, and…

  • Uncategorized

    Staging Extensions

    Extensions have been back for a long time. Mac OS 8 is proud. But they’re more thoughtful than they ever were in previous generations. One aspect of how Apple has built these new extensions in, harkening back to the days of old when we got corrupt extensions, is to stage some new extensions. These are the ones we have to enable in the Security & Privacy System Preference pane when we install unsigned software (or the software that tells us it’s inauthentic, as though its whole life is a lie – which it might be). That software goes into a pair of directories according to the type of extension at…

  • Mac OS X,  Mac Security

    Export Objects from Keychain

    Once upon a time, we could run a command like the following to dump all our keychain data: security dump-keychain -d ~/Library/login.keychain > ~/Desktop/dump.txt I go into more detail on those techniques in an article I did back in 2009, here: Now there are more keychains and the entitlements for the security binary to access this kind of information has changed. We can make some changes to the authorizationdb (as explored in https://krypted.com/utilities/authorizationdb-defaults-macos-10-14/) but I’ve yet to find a magic combination that allows me to script interactions with the keychain without a GUI pop-up (and one that blocks synthetic interaction. The data for each keychain is stored in an encrypted…

  • Windows Server

    It’s not wget or curl, it’s iwr in Windows

    Powershell comes with a handy little cmdlet to download files from the internet called Invoke-WebRequest which is documented at https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-7.2. There’s an alias for it so it can be called as just iwr. Let’s say there’s a file at https://pathtothefile/myfile.txt and we want to download it to the working directory as simply myfile.txt. That could be done with the following command: iwr -uri https://pathtothefile/myfile.txt -OutFile ./myfile.txt -UseBasicParsing -UseDefaultCredentials In the above example, we used the -uri to identify the target resource and -OutFile to list the local location. The above command used basic parsing as we were accessing a resource from an older server, although that wouldn’t be required for…