Posts Tagged ‘macOS’

Moving images from an iPhone quickly

Wanted to move 60GB of photos from an iPhone to the Mac. It turns out that Dropbox does not save Live Photos, Google Photos does, but it is all in reduced size (unless you pay them).

Extraction via Image Capture was taking forever.

Had to make sure on the iPhone, in Settings, you select “Keep Originals” under Photos -> Transfer to Mac or PC.

Didn’t realise Image Capture also has this option, it is small, at the bottom, but it also exists.

Fast, HEIC images, with accompanying Live Photos (i.e. movie files).

State of the Mac early 2019

I landed in London sometime in January 2019, and made an appointment at the Regent Street Apple Store the same morning for that afternoon at 1pm. This is apparently a very rare thing, because Apple Store appointments are usually full up weeks in advance.

The reason was simple: my 2016 15” retina MacBook Pro was starting to wobble at the base and the battery indicator did say it was time for a service. This battery for what it is worth has only done under 200 cycles, so it did seem odd. The wobbling suggested that the battery possibly had expanded, and this was also affecting my use of of some keys – notably the left shift key, and on the right side the ? Key (it would many times skip giving me ? But instead give me /).

I arrived for my Apple Store appointment a little early and was told that I could only check in at 12:50pm. Fair enough, I would just wait it out at the store. The Genius Bar was packed full. I was finally told to take a seat upon checking in and a genius would be with me shortly.

I met a friendly genius, who told me that it is likely the battery expanded and they would have to change the whole top cover as this was all integrated, meaning I would also get a new keyboard. Then he said that I would need to typically leave it there for up to 7 days, but since I was travelling all around, they would try to do it within 24 hours. 

As luck would have it, they did not have the parts available in store, and then checked stock to see that Covent Garden had 2 units. Upon calling, they would take 2 weeks (yes, a whole 14 days) to fix it. This was unacceptable. The genius wrote up a report about how they were willing to do it at Regent Street and how this was odd that Covent Garden would not in a timely fashion; he also encouraged me to get this fixed ASAP as it was not a good idea to continue using said laptop. This is great news to hear when travelling, clearly.

So it is clear: Apple laptops are still not made for Enterprise use. Fast forward a couple of weeks later and I order a Mac Mini to my home in Malaysia. I figure it is a computer I have wanted to get for sometime and I would use a desktop for the one week or so that I would be in town.

I make a Time Machine backup of my MacBook Pro, and restore it to my 12” MacBook (2016) that I have not sold from a previous engagement. The restore takes many hours, and when it is finally done, the one thing that I consider quite important – Mail – is not fully migrated. All the local folders are not converting, and maybe this is a Mojave bug (I was coming from High Sierra). So I am thankful to start exporting Mail in the MBOX format. In addition, Chrome seemed to be missing all the plugins that I had installed, so this was further manual work.

This leads me to believe that when I do setup the Mac Mini and also when the MacBook Pro comes back from a service, I will set it up fresh (or hopefully, the MacBook Pro just needs an update, and the data remains intact; this is apparently true according to the genius – nowadays Apple does not even ask for your password any longer). After all, I do have iCloud sync turned on (so Keychain is synced), Dropbox seems to be doing more work than expected, and passwords are managed in 1Password. I’ll have to sync my Mail manually, which seems like some bandwidth will be used, but that seems fine. But maybe I won’t be needing all the applications that I have. And what about my home directory? (The Linux advantage is just moving your home directory; I am uncertain if this is true with macOS as I have always relied on Time Machine).

Today I visited the service centre. I’m told that it would be there possibly for the 7 day period, so I may be able to get it back next Saturday. If this were my only Mac, I would be out of commission for a whole work week. If I had purchased a Dell or a Lenovo, I would have all this fixed by the next business day. Alas, I am still “locked into” macOS.

Initial Mojave thoughts? Kind of silly that when I fire up Terminal I can’t even do a ls in ~/Library/Mail unless I give Terminal all disk access. What a mess, all this lockdown is, if you ask me. 

I’ll hope to have a positive update later this week. The Mac Mini I ordered only comes with 8GB of RAM, since the Apple uplift for 2 16GB sticks (32GB of RAM) would have added RM2,640. I asked the Apple Service Centre how much it would cost, and they too said about RM2,000 since they have to order it from Apple (at first they said it could not even be upgraded!). I’ll go the after-market route, where each stick is only RM490, so getting it all for RM980 seems like a better choice. I’m going to guess that the Mac Mini 2018 model isn’t selling all too well in Malaysia, judging by many saying they haven’t upgraded it yet…

GPGTools Support Subscription – in-situ license change

Not brave enough to upgrade to macOS Mojave on my main workhorse yet, I did however click update on GPGTools which only required me restarting Apple Mail. I was very shocked when I saw the following pop-up:

GPGMail Popup

This was an in-situ upgrade from what was free/open source software, to a sudden pop-up nag telling me that I would need to get a license to continue to encrypt/decrypt my mail with ease. I checked out the support plan, which is USD$23.90, and might be something I have to pay for yearly, since a major version coincides with a macOS release according to the FAQ.

Being in the open source industry for 22 years (longer than the term has been around; so let’s call it free software), I’ve seen many license kerfuffles, and I think one of the worst ways to surprise someone is a license change in-situ. In a world where we do git pull’s and just move on, the license is sacrosanct. I’m glad that these developers didn’t focus on mucking with the license and if you choose not to pay USD$23.90 yearly, you can still compile the software yourself.

Am I still allowed to compile my own version of GPG Mail / GPG Suite removing any code regarding the trial or activation?

You absolutely are, the GPL enforces that. You will find the source code on this website and on Github.
We would kindly like to ask you not to use our names or icons if you plan to publish a binary for others to use.

Am I going to compile from source? If this was infrastructure software, definitely, yes. Am I going to pay these developers? I do not know, I still have 30 days to decide.

They clearly learned their lesson, do read the open letter to their users (yes, they’ve had this as a plan for a while, but maybe it wasn’t clear enough). These people aren’t a big evil corp neither did that raise venture capital from what I can tell. They’re independent developers, and if there is something a Mac user tends to do, is that they tend to support indie developers.

If I already pay an Apple tax, the question then becomes: do I pay for yet another app, that seems to basically be a subscription, or do I compile the software? Comes back to the old adage of, spend money to save time, or spend time to save money.

Thumb drive data recovery

I haven’t done any data recovery or data rescue work in sometime (the last time was on Linux, with a combination of dd, ddrescue, and some throwaway code to parse JPGs – it was a Compact Flash card that needed saving). This time, all I had was macOS, a 16GB thumb drive, and the files were someone’s life’s work, which were more than just JPGs but also AI (adobe illustrator), DOC, XLS, PDF, TTF, etc. files.

So via Homebrew, I installed ddrescue again. A command like ddrescue -v -n -c 4096 /dev/disk2 helena.dmg helena.log seemed to work. On macOS, fdisk totally couldn’t get me anything useful and if I ran diskutil list the output would be as follows:

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                                                   *15.5 GB    disk2

For good measure I wanted to also make an image via dd, dd if=/dev/disk2 conv=sync,noerror bs=4096 of=helena.img. It was clearly throwing many errors, an example of which:

13399375872 bytes transferred in 1263.864380 secs (10601910 bytes/sec)
dd: /dev/disk2: Input/output error
dd: /dev/disk2: Input/output error

The real problem was mounting either the DMG or the IMG. On Linux you have this option to loopback mount a file; on macOS this isn’t quite there. There is hdiutil but frankly, this doesn’t work if there is no partition record. I tried to mount it using hdiutil attach -noverify -nomount helena.img but that didn’t work to then do a diskutil mountDisk.

Then… I found a tool: PhotoRec. I wouldn’t have to write something to parse the magic numbers and extract files. PhotoRec just works. It parsed the IMG file, and spat out plenty of files to look at. Recovery was generally full.

For reference, on Linux, there are some good resources: Mounting a raw partition file made with dd or dd_rescue in Linux, and Guide to Using DDRescue to Recover Data. From a forensic standpoint, Disk-Arbitrator looks like a good tool as well.

Updating the locate database on macOS

Today I uninstalled CrashPlan on my macOS laptop since on August 22 2017 they announced they were exiting the home user market. I think the party is close to being over as even Amazon CloudDrive is now limited to 1TB of storage.

I wanted to ensure I removed any traces of CrashPlan. I use the locate command a lot. Ever wondered how to run the equivalent of updatedb on macOS? Its locate.updatedb (comes with a man page too). Run sudo /usr/libexec/locate.updatedb and that updates the locate database.

Pleased to say CrashPlan went away quite cleanly.

Keybase and FUSE on macOS

I like the concept of Keybase, have had an account there for sometime (https://keybase.io/bytebot). I also installed the Keybase app on macOS which has kbfs, the FUSE-based filesystem for Keybase users to share files with encryption (read more).

However, I also tend to spend time offline, and sometimes on restricted networks where I use TripMode. I realised very quickly that a simple ls or df could take some 20 seconds to complete (timeouts at work).

After poking around I realised it was Keybase. So this is what I do now:

keybase ctl stop
pkill Keybase

I used to have to also unmount the /keybase directory but this seems to be taken care of by newer clients. A macOS annoyance. I can’t always just have it running. There is a github issue #971. I think their iOS app is quite well done and have no complaints thus far.


i