text:
Idle iPhone and iPad hog upload bandwidth
There are 2 iPhones and 2 iPads in our house and every now and then, when no one is using them, they will consume all of the available upload bandwidth of our internet connection for quite a long period of time.
I normally just turn them off or kick them from the wifi when this starts because I don't believe they're doing anything important, I have no idea what could require them to upload so much data.

The iPhones are both running iOS 11.2.6
iCloud backup is turned off on all devices
they upload both when they are plugged into a charger and when they are not.

I have a router running LuCI lede-17.01 branch (git-17.152.82987-7f6fc16) / LEDE Reboot 17.01.2 r3435-65eec8bd5f.
This is a huge problem because once anything is being uploaded all other internet drops (we don't have a great connection), e.g. pings and download speeds for every other device worsen considerably.
I want to prevent the deterioration of internet access for all other devices.

Perhaps iCloud backups (these only occur when the iPhones are plugged in) or Photo Stream? In order to stop this, you can likely set QoS settings on your router to limit the available upload bandwidth to each device connected.

Which version of iOS are you running? If you open iCloud in settings app, is iCloud backup turned on?

@EthanH I am using an LEDE router, is there a QoS package for that?

For iCloud, try Settings/ Accounts & Passwords.  iCloud might be shown there as an Account.  If so, select it, and iCloud Backup should be on the list that comes up, showing whether it is on or off.  Other apps that share with iCloud are also listed.

Turning off this option hasn't changed anything

Also, as I state in the question, the phones hog the upload bandwidth even when unplugged from chargers.


text:
disable two-finger scrolling
Can I set up a keyboard shortcut to toggle two-finger scrolling on my trackpad?
In some situations, like when watching videos on youtube, VLC, or playing video games, accidental trackpad scrolling is a real pain.
I'd like to disable scrolling in these situations.

Have you gone to System Preferences/Trackpad?

@jmh yeah of course, there's no options there to turn it off. If there were I could map some keyboard shortcut to an AppleScript to select them, but Apple doesn't seem to provide any options to disable trackpad scrolling in the GUI at least.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

sort: votes


text:
Is it possible to stop the High Sierra Mail app from grouping messages?
I recently upgraded to a 13-inch MacBook Pro (2017 model) and installed macOS High Sierra version 10.13.2.  The new Mail app is grouping e-mails into "conversations", which has the net effect of making e-mails from my clients disappear under my replies.  I use Google mail (on the web),  the Apple Mail app on my MacBook, and the Mail app on my iPhone 6S.  My goal is to have all three of these apps simply display the e-mails in the order that they were sent and/or received.  I don't want some "helpful" feature on one platform adding to the overall cognitive burden.
The problem seems to have started with the last set of upgrades.  Does anyone know how it can be addressed, short of switching to Android?

Go to View and disable Organize by Conversation.

This solves the immediate problem.  However, the real problem is Apple's endless monkeying with the UI, against which a change in platform looks like the only defence.

@user Conversation view was introduced in 2011, a very welcome option for many and with a prominent checkbox to disable it if not.

The problem is that Apple has scattered the view settings into multiple locations, and only some of these persist across upgrades.  However, the basic answer here is that nothing can prevent Apple from randomly changing the settings of installed apps, so after an upgrade the user just has to check everything.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
iOS 11.3.1 Mail app doesn't shown new mail until the iPhone is rebooted - any cure?
I have an iPhone 6s running iOS 11.3.1.  The Mail app is able to download and display e-mail from my GMail account.  However, e-mail to my account at register.com is frequently not displayed until I have powered off the phone and powered it back on.  The webmail service at register.com shows that the e-mails have been received, and the iPhone actually shows a little message saying "Downloading 5 of 5" or whatever, but the e-mails never appear.
We all know that 11.3.1 is something of a failed release, but has anyone else experienced this problem and found a solution that doesn't involve turning the phone off and on to receive new mail?

I have 11.3.1 on 6 iOS devices in my family and none of them have this problem with any email provider using the stock Mail app.  I don't see this as being 'failed release' or related to the release at all.

A couple of things to try

Delete the Account from your phone and re add it.
Go into Settings > General > Reset and reset the network settings

You will lose the WiFi networks you have already been on and authenticated to but all you have to do is re-connect and re-authenticate.

Failing the above I would back up the phone (password protect the backup so you don't lose your saved passwords.) Wipe it (Settings > General > Reset > Erase all content and settings) and then restore from the backup you just made.

if the on-board erase fails to address the issue, then connecting the device to iTunes (Mac or PC) and restoring to factory settings will be more likely to address these issues, and will update the device to a newer iOS in the process.


text:
Weird issue with Safari and some of my web services
I have very weird issue with Safari which I have experienced for a long time now. I have a few servers which I actively manage, and sometimes I can't access these through Safari. I can access via Opera, Chrome, Firefox, curl and wget. Only Safari returns "unexpectedly dropped connection" and similar error messages.
At first this issue only occurred with one domain, and the server still worked fine via IP and still does. It happened after changing SSL certificate for that domain. (but I haven't heard that other people have this issue with Safari and this domain)
However, recently I have moved 15 domains out of Cloudflare and I did set up new SSL certificates (these are set correctly, checked via online tool, full cert bundles) but now I cannot connect only via safari to one server via:

Direct server IP
Any of 15 domains
http or https does not matter, both are not working

What is interesting though, that when I enable web debugging proxy on macOS (Charles Proxy) and enable this proxy to forward all system http and https connections - then all these websites and domains are working again in Safari! As well as in other browsers, this remains unchanged.
As soon I disable Charles macOS proxy, Safari stops working with these sites.
What I have tried already:

Updating all homebrew packages, including but not limited to openssl
Updating all macOS and applications updates, including Safari which is currently Version 11.1 (13605.1.33.1.4) but I've had this issue since El Capitan version of Safari or maybe earlier
I cleaned up some expired and weird looking certificates from keychain, but I can't tell that I removed all up until newly set system.
I did tried to clean all Safari data, many times, via Safari preferences, and with CleanMyMac.
I did removed all Safari data from ~/Library/Safari and then relaunch
I tried to access all these websites with direct ip from Safari on other macOS. This other machine did only actively work with one domain out of these 15. Only this one is broken and fails with the same exact issue while other works fine with all browsers on that machine.

I would highly appreciate help in resolving this weird issue as this is highly annoying, not sure whether I did something wrong or this is clearly bug in Safari?


text:
Messages in iCloud Won’t Delete from macOS
If I delete a message from Messages on my iPhone or iPad connected to Messages in iCloud, it gets deleted from all my other devices. However if I do the same from my Mac also connected to Messages in iCloud, the message/conversation only gets deleted from the Mac.
How do I make message deletion work correctly from a Mac?

As of macOS 10.13.5 High Sierra, it appears you need to disable Save history when conversations are closed for message deletion to function as advertised over iCloud.
To do this, open Messages, then from the menu bar navigate to Messages → Preferences… → General. Uncheck this box:

It’s unclear whether this is the expected behavior, but it sure looks like a bug.


text:
Macbook not updating time zone
I flew from Washington DC to Devon (UK) roughly 9 hours ago.
My MacBook knows that I am in the UK, but won't update the timezone.

How do I make sure that the MacBook keeps updating the time zone automatically?

I assume you 'unlocked' the pref pane with the icon at the bottom left.
You could try using the Terminal command sudo ntpdate -u time.euro.apple.com.
If the command returns errors such as Can't find host or no servers can be used, the network you're connecting to might have a firewall block on ntp servers.

Running that command seems to update it to the American time


text:
Just announced MacOS Mojave: what level of support for Metal is required?
The general consensus is that older Macs can run Mojave if they have a graphic card supporting Metal (c.f. appleinsider for example). But Metal-readiness comes in different degrees. Has Apple disclosed what is the lowest bar yet?

The link in your question lists the minimum Mac models that can run Mojave.  What exactly are you looking for?

The last line, "Mac Pro (2010 or later with Metal-compatible GPU)", mean it won't work with the graphic card those machines were shipped with. One needs to install a newer one. That's already true for High Sierra and maybe even Sierra, I don't remember.

The question might be "What is considered to be a 'Metal-compatible GPU'? I've two 2010 Mac Pros I may need to update.

@Tetsujin iiuc you would need to update the graphic card only. I am in the same boat: I have a 2010 Mac Pro too!

"update the graphic card only" ... to what, precisely. I think finding a list of 'recommended' cards would be the priority here. I found a 'metal test' app, but it crashes.

@Tetsujin That's precisely my question! Have you tried GFXBench Metal? It displays a list of all Metal features available on a machine. Available on the Mac App Store.

Ah - that's what I was looking for, something at least to say "this works with Metal, this doesn't" My 7950 seems to be OK, an older 5770 is OpenGL only.

The article Apple Outlines Metal-Capable Cards goes into the detail needed.
From linked article --

According to Apple, the following graphics cards are known to be
  Metal-capable and compatible with macOS Mojave on the mid-2010 and
  mid-2012 Mac Pro models:

MSI Gaming Radeon RX 560 128-bit 4GB GDDR5

SAPPHIRE Radeon PULSE RX 580 8GB GDDR5
SAPPHIRE Radeon HD 7950 Mac Edition
NVIDIA Quadro K5000 for Mac
NVIDIA GeForce GTX 680 Mac Edition

Metal is required to run the OS. Apple has deprecated OpenGL and OpenCL and additionally is now using Metal exclusively to render the GUI.

If your Mac does not support Metal, the user interface will not be able to run, and as a result Mojave will not boot.

As stated in my question I knew that. But Metal 1 or 2 for a start?

If any of the compatible models don't support Metal 2, then I guess it needs Metal 1. If that isn't the case, Metal 2.

From Metal (API) - Wikipedia:

Metal 2 is not a separate API from Metal and is supported by the same hardware. Metal 2 enables more efficient profiling and debugging in Xcode, accelerated machine learning, lower CPU workload, support for virtual reality on macOS, and specificities of the Apple A11 GPU, in particular.


text:
Keyboard shortcut to move tabs left or right?
Is there a Safari keyboard shortcut to move a tab?
If not, how can I make one?
I wouldn't even know how to write an AppleScript for this, the only method I see of moving tabs is to drag them.

Here are two AppleScripts for moving tabs one position right or left. The AppleScript gets the current tab index, checks if it can be moved, then moves it and ensures it's still active. This does refresh the page though but this appears to be a limitation of the AppleScript since it uses the Standard Suite's move.

Move tab one to the right
tell application "Safari" to tell front window
    set currentindex to index of current tab
    if currentindex is equal to number of tabs then return
    move tab currentindex to after tab (currentindex + 1)
    set current tab to tab (currentindex + 1)
end tell

Move tab one to the left
tell application "Safari Technology Preview" to tell front window
    set currentindex to index of current tab
    if currentindex is 1 then return
    move tab currentindex to before tab (currentindex - 1)
    set current tab to tab (currentindex - 1)
end tell

You can assign keyboard shortcuts to these by creating a service to run these scripts and assigning a shortcut to the service, or with a third-party app.

Pretty good, but as you say it refresh the page. Nice trick though!

do you think that this might be possible to do generically, not only for safari? Like tell front application, rather than tell Safari ... thanks!

Also, would be good with a module total windows, that would move it to first if at last and last if at first and moved left.

I am working on it, but I have never played with applescripts :S


text:
Recording iPhone screen (iOS 11.4) using QuickTime on macOS 10.13.4
I launch QuickTime, select New Screen Recording, select my iPhone from the practically hidden dropdown list of sources

Nothing shows up (don't remember what it use to do). I click the red button and the window disappears into the menu bar and for a few moments QuickTime is locked up. If it comes back I click stop but there is no screen capture.
How do I get this to work again?

The option you are looking for is New Movie Recording.

To record iPhone screen:

Select New Movie Recording.
Click on the dropdown besides the red circular record button.
Select iPhone under Camera (and Microphone if required).
Hit the record button.
Voila! you are recording your iPhone's screen now!
Once done, hit stop and save the recording at the desired location on your Mac. Note that the recording is saved on disk on Mac and not in the iPhone.

"New Movie Recording" does not give me options to capture the screen. It only gives me options to use the iPhone's camera and microphone

The terminology is misleading. When selecting iPhone under Camera, you are not choosing to record via iPhone camera but recording the iPhone screen.


text:
See upload and download speeds of each process
Is there a way I can see the internet bandwidth being used by each process on my MacBook?

iStat Menus has this functionality in the Network menu bar item. Each process bandwidth is shown in the Processes section. This is calculated by keeping track of the sent/received bytes (something you can see in Activity Monitor for each process) since the last time period and calculating the bandwidth from this.

Why is iStat menu itself using bandwidth?

@theonlygusti To put the public IP at the top when you show this menu, it makes a connection over the network very briefly when the menu is opened. Due to the way the values are calculated, tiny bandwidth values are over-represented. You can disable the Public IP section of the menu in iStat Menus if you don't wish to use it.


text:
Search spotlight for iTunes music?
Can I play a song from spotlight?
Maybe not default Apple feature, but is there a flashlight plugin for this or something?

Yes, you can do this natively.
Just open Spotlight as you normally would (e.g. use the commandspace shortcut) and start entering the name of the song. Spotlight will find it and you can just press enter to play it.
Notes:

You don't need to have iTunes running at the time you conduct the Spotlight search, but you do have to have the song stored locally (i.e. not in iCloud), otherwise you'll get web search results etc instead of an iTunes result.
You also have to ensure you have Music selected in the Search Results tab within Apple > System Preferences > Spotlight

This doesn't work for me

nvm it's a thing I had to turn on in Preferences > Spotlight

No worries, it prompted me to add an additional note to my answer! :)


text:
Bandwidth limit downloads in Safari
My browser is Safari.
If I want to download something, is there a way I can limit the download speed?
Doesn't necessarily have to use the Safari downloader (although that would be ideal), I assume I could copy/paste links into third party apps that may do this.

Possible duplicate of How to simulate slow internet connections on the mac

@Josh want it only for one application


text:
Can I change the resolution of a display in recovery mode?
Booted to High Sierra recovery HD, I’m not able to open the system preferences and choose a different resolution.
Can terminal be used from the utilities menu to change the resolution?
I have a Mac mini and Emerson TV connected over HDMI cable.

Please edit the question to add additional details (there is a link for this at the bottom of the text), adding a comment doesn't help. Editing the question will place it into the review queue for reopenings.

This is censorship. Stop please.

@M3553N63R I’ve cleared all the comments except for the one needed to move this forward and yours equating moderation with censorship. Have a look at the edit control and the tour in help for how to get this temporary hold released. Your call to action of “Please reply and share” is an excellent thing for a discussion forum, it’s the opposite of what we do here. That’s why the hold to let you or someone else to edit the main post is correct.

Does that edit help you? Hopefully I captured your objective question correctly. I voted +1 to help get this back on track

Oh great(sarcastic), censorship,  judgment, post editorship. And your bs answers is... (drum rolls)..."NO"....!

Sorry I wasn’t able to help. You are free to edit again or roll back my edits. I’m not trying to be sarcastic or judgemental. More than three people had issues with your post, so please don’t shoot the volunteer messengers about close reasons.

First off, let me speak my thoughts...."be used from the utilities menu"?....its called recovery mode. Secondly, I been knowing I can use terminal in recovery mode to change resolution. Thirdly, that's why I asked "how" not "can I"....plus pressing shift key to boot into safe mode (which doesn't work for in my opinion 90% of mac os x owners), and forthly...I know I can Change resolution in terminal because I must (because the mac gives me only one choice if I want to keep and not lose my computer accounts and all apps, and files), and 6th thing is, I requested answers (terminal command lines)!

Reason why I decided to skip safe mode and do what the big error message on front of black screen that told me to change resolution because it said tv does not support output format, video resolution and refresh rate plus message after that told me resolution mismatch change device's resolution. And join here getting censored by people who don't have answers. Dude everybody should know they can use terminal in recovery mode to change mac computer resolution and they actually know they can. Why edit my post and put "can terminal be used from the utilities menu to change the resolution"?!


text:
How can I create a AES-256 bit image using Automator?
By default Automator uses the 128 bit encryption for image creation. I do not want to open disk utility all the time to create encrypted images. Thus, I though about using hdiutil within Automator.
How do I define the source folder path in my workflow? How can I create image with the highest encryption using Automator?

You don't need Automator to do this. Just use Automators cousin, AppleScript.

Open Script Editor in /Applications/Utilities
Copy and Paste the code below
Go to File>Export
File Format: Application
Drag files and folders onto the icon (you can even add the icon to the doc for easy access
Enter your password
Files will be created in the same directory with an added _EncryptedDMG.dmg

Code:
on open myFiles
    set theCount to 1
    display dialog "Enter the password to encrypt" default answer "" with hidden answer
    set myPassword to the text returned of the result as text
    set d to "•"
    set td to ""
    repeat length of myPassword times
        set td to td & d
    end repeat
    display dialog "Verify the password: " & td default answer "" with hidden answer
    set theVerify to the text returned of the result
    if myPassword is theVerify then
        tell application "System Events"
            repeat with myFile in myFiles
                set myPath to the POSIX path of myFile
                set myName to the characters 1 thru ((offset of "." in (name of myFile as text)) - 1) of (name of myFile as text)
                set myContainer to (the POSIX path of (container of myFile))
                do shell script "printf  \"" & myPassword & "\" |  hdiutil create -encryption AES-256 -stdinpass -srcfolder '" & myPath & "' '" & myContainer & "/" & myName & "'"
                do shell script "mv '" & myPath & "' ~/.Trash"
                display notification "File created at " & myContainer & "/" & myName & ".dmg. Original file deleted." with title "Encryption Complete" subtitle "File " & theCount & " of " & (length of myFiles) sound name "glass"
            end repeat
        end tell
    else
        display dialog "Error: Passwords did not match"
    end if
end open

If you would like to add to context menu copy and paste the following code in to a "Run Apple Script" Action.
on run {myFiles, parameters}
    set theCount to 1
    display dialog "Enter the password to encrypt" default answer "" with hidden answer
    set myPassword to the text returned of the result as text
    set d to "•"
    set td to ""
    repeat length of myPassword times
        set td to td & d
    end repeat
    display dialog "Verify the password: " & td default answer "" with hidden answer
    set theVerify to the text returned of the result
    if myPassword is theVerify then
        tell application "System Events"
            repeat with myFile in myFiles
                set myPath to the POSIX path of myFile
                set myName to the characters 1 thru ((offset of "." in (name of myFile as text)) - 1) of (name of myFile as text)
                set myContainer to (the POSIX path of (container of myFile))
                do shell script "printf  \"" & myPassword & "\" |  hdiutil create -encryption AES-256 -stdinpass -srcfolder '" & myPath & "' '" & myContainer & "/" & myName & "'"
                do shell script "mv '" & myPath & "' ~/.Trash"
                display notification "File created at " & myContainer & "/" & myName & ".dmg. Original file deleted." with title "Encryption Complete" subtitle "File " & theCount & " of " & (length of myFiles) sound name "glass"
            end repeat
        end tell
    else
        display dialog "Error: Passwords did not match"
    end if
end run

When opening Automator select Context Menu and then select these settings

Note: You  will be happy to hear, macOS Mojave will bring similar functionality natively. There is a add password in context menu that zips and encrypts the file similar to how this application does it, but still there is not progress bar.
Note[2]: This script will not worked if the folder contains locked files (File>Info>Locked).

So using a "Shell Script" action in Automator would work as well? :-)

Josh, thank you. This is exactly what I was looking for.
The reason why I would like to use Automator is that I can add it to the services folder as contextual menu (right click). Also Automator shows the encryption progress the menu bar. How can I use the AppleScript within Automator workflow?

@howdytom Showing progress in AppleScript and Automator are both possible, but impossible when using so she’ll script. It’s just a limit of both. For the the contextual menu I will edit answer soon.

@howdytom I edited

FANTASTIC!! This works like a charm! Thank you. Is there any chance to move the original folder/file to the trash afterwards? Using the Automator Action "Move Finder Items to Trash" doesn't work. I guess it has be added to the AppleScript Code.
I have noticed that using AppleScript Droplet is much faster than embedding into the AppleScript into Automator workflow. Hopefully Apple will add a prebuilt solution into macOS Mojave.

Move the original files or folder to Trash would be great. I'll empty my trash manually. It doesn't make sense to delete the new, encrypted file ;-)

Can’t test right now but you should be able to add just below to “do shell script” the following: “tell application "Finder" to move (myFile) to trash”. If this doesn’t work I’ll add in a couple hours when I can edit.

No need to hurry. Take your time. This workflow is already soo good.

@howdytom Thanks. I will probably not edit the actual answer but just add as comment (others may want script without it so it may be easier this way).

We should also remove _EncryptedDMG title suffix.

For security reason, a additional password check would be useful. So, you have to type in the password twice.

@howdytom I was going to add but didn’t for speed. I will add the check when I edit.

@howdytom Updates have been added with some bonus features. Tell me if you need anything else.

Let us continue this discussion in chat.

@Josh: Absolutely fantastic! It's working great. I really like the notification addon! The password check is a great improvement. Now, It's also possible to copy and paste passwords. I really appreciate that you spent so much time and effort into this. I wish I could give you a extra bounty. Once again, well done! Thanks.

@howdytom Glad I could help :)  Should work will multiple file selection too.

@Josh: Yes, you can encrypt multiple files or folders at once. I really like that. Great!

@Josh: So far your script is working excellent! I have stumpled upon one issue, though. When you try to encrypt a folder which contains one or multiple locked files or folders, the workflow shows an error message.

@howdytom Whats the message? And do you mean locked like File>Info>Locked?

@Josh: Exactly locked finder files (File>Info>Locked). The error message is: The action “Run AppleScript” encountered an error.

@howdytom Will fix soon.

@howdytom Ok. I can fix it but it will take a while to run. May I just suggest unlocking every file/folder beforehand. The idea of locked files is to prevent anything from happening to them.

@Josh: no problem. I though it might be worth mentioning. I don't think it's a "must-have feature". These locked files are some old leftovers. No big deal.

I felt there were enough differences between my solution and the other posted answer, as to offer this script as another answer to the original post.
Save this script as an application in ScriptEditor app
This script allows the user to drop multiple files or folders, directly onto this application's icon...  And also gives the user of the option whether to keep or delete the original files or folders.
If this script application is run in the normal fashion by double-clicking on the application, the user is given the option whether to choose single or multiple files or to choose single or multiple folders, to be processed.  In addition, the user is given the option to delete or keep the original files.
This has been tested using the latest version of macOS High Sierra
UPDATE:  This Code Has Been Edited To Deal With Files Or Folders That Are Locked
use AppleScript version "2.4" -- Yosemite (10.10) or later
use scripting additions

global deleteFiles, isTrue, theCount, myPassword, theName

on open theFiles
    --HANDLE THE CASE WHERE THE SCRIPT IS LAUNCHED BY DROPPING FILES ONTO APP ICON
    repeat with i from 1 to count of theFiles
        set thisItem to item i of theFiles
        tell application "Finder"
            if locked of (get properties of thisItem) then
                set locked of thisItem to false
            end if
        end tell
        set isTrue to missing value
        set theCount to 0
        set theName to missing value
        set theFolder to thisItem
        tell application "Finder"
            set theContainer to container of theFolder as alias
            set theName to name of (get properties of theFolder)
        end tell
        run my setPassword
        run my keepOriginals
        set myPath to POSIX path of theFolder
        set theContainer to POSIX path of theContainer
        do shell script "printf  \"" & myPassword & "\" |  hdiutil create -encryption AES-256 -stdinpass -srcfolder '" & ¬
            myPath & "' '" & theContainer & theName & "_Encrypted'"
        if deleteFiles = true then
            tell application "Finder" to delete theFolder
        end if
    end repeat
end open

on run
    --HANDLE THE CASE WHERE THE SCRIPT IS LAUNCHED  DROPPED FILES
    activate
    set theChoice to display dialog ¬
        "WOULD YOU LIKE TO CHOOSE FILES OR FOLDERS?" buttons {"Cancel", "Choose Files", "Choose Folders"} ¬
        default button ¬
        "Choose Folders" cancel button ¬
        "Cancel" with title ¬
        "Make Your Choice" with icon 1 ¬
        giving up after 20
    if button returned of theChoice is "Choose Files" then
        run my chooseFiles
    else if button returned of theChoice is "Choose Folders" then
        run my chooseFolders
    else if button returned of theChoice is "" then
        return
    end if
end run

script chooseFiles
    activate
    set theFiles to (choose file with multiple selections allowed)
    repeat with i from 1 to count of theFiles
        set thisItem to item i of theFiles
        tell application "Finder"
            if locked of (get properties of thisItem) then
                set locked of thisItem to false
            end if
        end tell
        set isTrue to missing value
        set theCount to 0
        set theName to missing value
        set theFolder to thisItem
        tell application "Finder"
            set theContainer to container of theFolder as alias
            set theName to name of (get properties of theFolder)
        end tell
        run my setPassword
        run my keepOriginals
        set myPath to POSIX path of theFolder
        set theContainer to POSIX path of theContainer
        do shell script "printf  \"" & myPassword & "\" |  hdiutil create -encryption AES-256 -stdinpass -srcfolder '" & ¬
            myPath & "' '" & theContainer & theName & "_Encrypted'"
        if deleteFiles = true then
            tell application "Finder" to delete theFolder
        end if
    end repeat
end script

script chooseFolders
    activate
    set theFiles to (choose folder with multiple selections allowed)
    repeat with i from 1 to count of theFiles
        set thisItem to item i of theFiles
        try
            tell application "Finder"
                set locked of every item of entire contents of thisItem to false
            end tell
        end try
        set isTrue to missing value
        set theCount to 0
        set theName to missing value
        set theFolder to thisItem
        tell application "Finder"
            set theContainer to container of theFolder as alias
            set theName to name of (get properties of theFolder)
        end tell
        run my setPassword
        run my keepOriginals
        set myPath to POSIX path of theFolder
        set theContainer to POSIX path of theContainer
        do shell script "printf  \"" & myPassword & "\" |  hdiutil create -encryption AES-256 -stdinpass -srcfolder '" & ¬
            myPath & "' '" & theContainer & theName & "_Encrypted'"
        if deleteFiles = true then
            tell application "Finder" to delete theFolder
        end if
    end repeat
end script

script failedPassVerify
    activate
    display dialog ¬
        "You Have Unsuccessfully Verified Your Password 3 Times In A Row... Please Try Again Later" buttons {"OK"} ¬
        default button ¬
        "OK" with title ¬
        "UNSUCCESSFUL PASSWORD VERIFICATION" with icon 0 ¬
        giving up after 10
    quit me
end script

script keepOriginals
    set keepOrDelete to display dialog ¬
        ("Would You Like To Delete The Original Item... " & theName & "?") buttons {"DELETE ORIGINALS", "KEEP ORIGINALS"} ¬
        default button 2 ¬
        with title ¬
        "KEEP OR DELETE ORIGINALS?" with icon 0 ¬
        giving up after 30
    if button returned of keepOrDelete is "DELETE ORIGINALS" then
        set deleteFiles to true
    else if button returned of keepOrDelete is "KEEP ORIGINALS" then
        set deleteFiles to false
    else if button returned of keepOrDelete is "" then
        set deleteFiles to false
    end if
end script

script setPassword
    repeat until isTrue = true
        activate
        set myPassword to text returned of (display dialog ¬
            ("ENTER THE PASSWORD TO ENCRYPT DISK IMAGE " & theName) default answer "" with hidden answer)
        activate
        set myPassword2 to text returned of (display dialog ¬
            "PLEASE VERIFY YOUR PASSWORD" default answer "" with hidden answer)
        set isTrue to myPassword2 = myPassword
        if isTrue = false then
            set theCount to theCount + 1
            if theCount = 3 then
                run my failedPassVerify
            end if
            activate
            display alert ¬
                "PASSWORDS DO NOT MATCH" message ¬
                "PASSWORDS DO NOT MATCH" giving up after 3
        end if
    end repeat
end script

My answer has the option for a droplet. But I do like the ability to drop and open! Very cool idea.

Thanks :-) If I really wanted to go overboard I would have set each dialog box to mention the name of the file or folder It will be processing.  Your solution was solid... +1 BTW... All of the commands you have wrapped inside of  the System Events tell blccks are actually handled by standard additions... Using System Events is not necessary

thanks! Yeah I had a different plan that required it and when I didn’t do that I  forgot to delete it. Thanks though.

Code Has Been Edited To Deal With Files Or Folders That Are Locked

Fancè (fancy) :)

Does this work recursively? (Folder>Folder>Locked File)

It does not work recursively. It only works on the top level element. But it does not make a difference because unless the locked file is not a top level element, my code will not draw an error

Oooo. I may just have to make mine recursive. :) May  I steal some of your code to do so?

Updated the code to handle recursively In the script object chooseFolders Of my code


text:
How to forward local DNS queries to a VM when macOS is in offline mode?
For a project I need to intercept/redirect DNS queries to a VM, which in turn runs dnsmasq. This VM is hosted by xhyve and when connected to the network, the setup works well; I have an file in /etc/resolver.conf/test.io which has:

nameserver 192.168.64.20
search_order 1

Doing dig node.test.io @192.168.64.20 or dig node.test.io give the expected results.
But when going offline, there is a problem. It seems that when macOS is not connected to a network, it only allows /etc/resolver.conf/* entries to work when they use 127.0.0.1.
I tried setting up a port-forwarding, like:

$ echo "
rdr pass inet proto udp from any to 127.0.0.1 port 53 -> 192.168.64.20 port 53
" | sudo pfctl -ef -

and changing /etc/resolver.conf/test.io to:

nameserver 127.0.0.1
search_order 1

However, the domain test.io can not be found when I try to do a nslookup or dig node.test.io @localhost. The VM is still reachable as dig node.test.io @192.168.64.20 still gets resolved.
scutil --dns gives the following:

resolver #9
  domain   : test.io
  nameserver[0] : 127.0.0.1
  flags    : Request A records, Request AAAA records
  reach    : 0x00030002 (Reachable,Local Address,Directly Reachable Address)
  order    : 1

Note: nslookup does not seem to handle resolver well, so I have also tried to use curl/wget and the browser to see if queries got resolved correctly. Also, no difference with dns-sd. All failed...

In disconnected mode there is no DNS query going at all... We solved this by adding a TUN/TAP device to the macOS node and 'pretend' with this that it is connected.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
How to change my default web browser when I'm at work?
On my Mac I use Safari for personal stuff and Chrome for work-related web browsing.  I currently have Safari set to my system's default browser, but I would love to be able to change that setting over when I connect to my office WiFi network, so that links in emails and Slack open in Chrome instead.  Is it possible to configure some triggers in Automator or some other application that would switch the default browser over to Chrome when I join my office WiFi network and switch it back when I disconnect from it?

Little unknown fact about Safari is in the Develop menu item (Safari -> Advanced -> Show develop in menu bar) is an 'Open Page With' option to open in a different installed browser.

Do you want this automatically or can it be you click and application and it will detect the network and change accordingly?


text:
Multiple Wi-Fi Services on Mac
At home, I have my own network. I have set up a DHCP fixed-address connection for that.
However, not all networks like that, and so I have set up another Service in Network preferences that just uses plain DHCP.
However, I can't set them to only connect to certain networks: changing settings in the Advanced window adjusts them for all Wi-Fi Services. This means I have both connections going.
How do I change the settings for just one Service, so I can set it to only connect to a certain network?

This is the purpose of a Location. With only one Wi-Fi service, create a new location at the top of the window. Settings such as DHCP only apply to the currently selected location. Locations can be switched from this menu or from anywhere using the Apple menu once created.


text:
Anyway to "reset" a group imesssage?
I'm having a bit of and odd problem with a group message, likely due to a bit of weird history with this groupchat. Rough outline below (this may include extraneous data)
I have a groupchat with two other people, a and b. Originally all three of us had non-apple phones. Eventually b switched to an iphone, and later myself and a did too. The groupmessage was semi-persisted through all of this, and everything seemed fine for the duration of all of us having iphones. Finally, b switched away from (the now-imessage) groupchat to an android phone. Suddenly, the groupchat no longer worked -- B was unable to receive messages, and deleting and restarting the groupchat didn't seem to help.
My intuition says that apple thinks b still has an iphone and somehow this results in him not receiving text messages, but I've been unable to fix this problem and haven't found useful data online.
Anyone experience something similar/have any suggestions? Thanks for any help.

Are you using B's phone number or email address for that chat?  Did either change when B changed devices?  Take a look at this Apple Support doc and see if it helps.  Also, make sure B deactivated their Messages.

Hey @fsb, thanks for taking the time to respond! Using phone number and no, neither changed with device. I believe he tried that, but I'll bother him to do it again. Do you have any idea on what the internals of the imessage/non-imessage boolean looks like?

No, i don't.  I just know you need to deregister your device when moving to a non-Apple phone.  If B didn't do that, it could be the root of the issue.  B needs to stop Messages from being associated with their phone number.

This seems plausible... Thanks for the help. I'll update above if this doesn't resolve anything.

Let me know if this works and I'll add it as an answer to help others.

@fsb -- ended up using your strategy, but a couple of other things were required [removing name from groupchat weirdly seemed important]. Thanks again for help!


text:
iOS Widget for turning Wi-Fi on/off
Is there a widget for turning on and off Wi-Fi? I have to open up the settings and go to Wi-Fi to switch it off. For me, this is annoying and unacceptable. Just can't live with it.
I know:

What the Wi-Fi button on Control Center does
Control Center's behaviour has changed since iOS 11 update
How to turn off Wi-Fi from the Settings app

I just want quick access to WiFi toggle like on Android.

iOS apps cannot control Wi-Fi, so it is not possible for an app to provide a Today widget to change the Wi-Fi power.
If your device is jailbroken, you can install  RealCC, which makes the toggles in Control Center for Wi-Fi and Bluetooth control the power rather than connections.

Unless your device is jailbroken this is not possible. If your device has Siri enabled you can ask Siri to enable/disable WiFi but that's about it.


text:
Restart Apache causes applications to react really weird
I have macOS High Sierra running on my Mac, and it has worked fine until now. But today I experienced something very weird. I was trying to restart Apache (a web development server), and then my apps started reacting very weird. For example, I had Activity Monitor open, and then suddenly it crashed and when I tried to open it again, it either says "Activity Monitor is not open anymore." or just doesn't respond. And when I try to use Command Tab to switch to another app, it just gives me the sound that tells me that you cannot do that, and the same with Command Q and Command W. Not many of my apps are willing to open when I try to open them. After a while my keyboard even doesn't react when I type!
If I restart my computer, it is working fine in the start but when I try to restart Apache, it does all that crab again.
UPDATE: If I have an app that is not responding, lets say the Terminal, and I go to the menu bar and click Terminal > Quit Terminal, then suddenly the menu bar disappears.
What can I do to fix my computer?

Start off by booting into Safe Mode (hold Shift while booting)  then test out to see if the symptoms persist.

I just ran into this problem myself with Mojave trying to run Apache. Did you ever find out the cause/solution?

I don't really remember if it fixed itself after some updates or something, but have you tried the suggestion by @Allan?

@HiramHibbard Check out my answer

I found a somewhat working solution.
I am using Homebrew's httpd package, so I found out that I could just reinstall it:

When it begins to do that weird stuff, restart the computer.
Then reinstall httpd with brew reinstall httpd
You're good!

EDIT:
I later found out that it was an issue with the MySQL server that was not running/having a problem.

Instead of using homebrews apache, you could also stick with the defult provided by MacOS.

The reason I do this is because I used this guide, which uses Homebrew's Apache instead of the native apache.


text:
I installed rEFIND Boot Manager, got mysterious Legacy OS thing that doesn't work
Is there a detailed way to fix and prevent this?
and how do you completely install the 0.11.2 version of rEFInd?
for further detail, it was installed on USB flash drive a few months back. and even now I still can't figure out how to completely install it the right way and keep having uninstall it to reinstall it because I'm honestly lost.
 here is a screen shot after hitting disk util list.

can you see it at bottom?

first thing I tried doing was following and doing these steps here in screenshot. and I got a message telling me at bottom copying sample files and to edit the file to configure refind. I forgot to take screenshot of that but oh well.

but that got nowhere so thought I try mountESP script right after doing step 4 because I didn't get a installation message or, nothing like it, I don't remember seeing one at all. and ESP wasn't mounted after I typed mkdir /volumes/ESP and typing sudo mount -t msdos /dev/disk0s1 /Volumes/ESP
and still didn't mount. I have screen shot showing message telling me /volumes/ESP is not currently mounted when I tried to unmount it.even tried using mounts script and that didn't even get job done, it didn't mount.I even use a MacBook Air and it's version 10.13.6 because I just a short while ago updated my OS X firmware.
I also tried these commandlines from the answers to a person's question post asking "How can I completely remove rEFInd from my Mac?" before getting that message telling me it's not currently mounted, then I decided to try LibreBowski YouTuber's method afterward thinking I got refind completely removed and uninstalled, I didn't, ran the command lines the youtuber recommended and then drag and dropped the refind-install script and got this:
Messengers-MacBook-Air:~ messengerm$ sudo mkdir /volumes/efi
Password:
Messengers-MacBook-Air:~ messengerm$ sudo mount -t msdos /dev/disk0s1 /volumes/efi
Messengers-MacBook-Air:~ messengerm$ /Users/messengerm/Downloads/refind-bin-0.11.2/refind-install
Not running as root; attempting to elevate privileges via sudo....
ShimSource is none
Installing rEFInd on OS X....
Installing rEFInd to the partition mounted at /Volumes/efi
Found rEFInd installation in /Volumes/efi/EFI/refind; upgrading it.
Copied rEFInd binary files

Notice: Backed up existing icons directory as icons-backup.
Existing refind.conf file found; copying sample file as refind.conf-sample
to avoid overwriting your customizations.

Messengers-MacBook-Air:~ messengerm$

also by the way, I did Install refind directly on OS X and still got legacy os zipper icon with an extra real OS X boot icon with small bootable disk logo over OS X(it appears as bootable X icon)

and I should add I mistakenly corrupted my internal apple hdd on Mac mini I previously used. I got other stories about it but I'm not going to mention it in this post.
I honestly used somebody's youtube video for removing refind boot manager utility then after... dumb ol me I got curious, typed
cd /volumes;ls and cd ./efi;ls just to see a minimal text editor pop up because I never saw it before.
sorry.
so my question is how can I truly completely wipe rEFInd off of OS X so I can get it installed completely and successfully so I can add things to it(optionally) and move on to installing another OS?
]9

also how do edit my question posts?

There should be an edit button at the bottom of your post.

It's probably just a non-OS hard drive or partition.

You can follow this tutorial even if you don't know how to use a terminal.
If you don't want to scan legacy operating systems, do the following:
The reason this is happening is because rEFInd scans for legacy operating systems as well by default. These steps will help you disable legacy OS scan.

Open Terminal. Search for it in spotlight.
Type diskutil list, press enter and identify your EFI partition. By default it is disk0s1, but if it is different for you, then you should use the right identifier.
Type diskutil mount disk0s1 and press enter. The EFI partition should be mounted now.
Type cd /Volumes; ls and press enter. A list of mounted partitions will appear. If you see "EFI", then continue the tutorial normally. If not, look for "ESP", "Untitled" or "Untitled X" where X is the highest number possible. Use that for the next step instead of "EFI".
Type cd ./EFI; ls and press enter. From the list, find the folder that has the word "refind" in it, and use it for the next step. It can just be "refind" too.
Type cd refind; ls where you replace "refind" with the right folder name if it is different. You will now see the files inside the rEFInd folder. Search for refind.conf. If you can find it, type nano refind.conf. If you can't find it, then there is a problem and you should reinstall rEFInd.
You will be presented with a minimal text editor. Press Control+W, type scanfor and press Enter. It will find the nearest scanfor. If the cursor is at the first or the second character of a line now, continue to the next step. If not, repeat this until the cursor is at the beginning of a line.
If the first character is #, press Backspace once.
Using the Right Arrow Key, move the cursor to the end of the line, and delete everything with Backspace key except scanfor and the space after it.
Type the following: internal,external,optical,manual.
Press the following key combinations one at a time: Control+o, Enter, Control+X.

Try rebooting now. Legacy should be gone!
(Edits are appreciated, I might not be clear enough)

So you installed rEFInd on flash drive? Then your disk will be something like disk2s1.

this is what came up when I hit diskutil list.
TYPE NAME                    SIZE       IDENTIFIER
0:      GUID_partition_scheme                        *123.0 GB   disk3
1:                        EFI EFI                     209.7 MB   disk3s1
2:       Microsoft Basic Data REFIND                  122.8 GB   disk3s2
so should I use bottom?

Please edit your question and include the output there, it's unclear when it is a comment.

ok.................

By the way, why did you install rEFInd on a flash drive? You can directly install it on your computer's SSD/HDD with the script that comes with rEFInd. If it's because of SIP, you could just install it from Recovery, no need to disable SIP.

good question. which brings me to speaking the reason why. it's because some guy from YouTube called Greg's tech Guru used the flash drive to install it and he used the recovery mode terminal. I was looking for a proper way to get something like disk3s1, or disk0s1, I was making sure that I would have a default or something like it to mount a disk in terminal. I was watching someone's tutorial to customize rEFIND. so that's my reason response to the question. is this an appropriate response or no?

It's appropriate. I recommend you to install refind to your internal disk through Recovery terminal before trying out the steps in the answer. Copy refind installation files to an empty folder in your home folder, boot to Recovery, open a terminal, issue cd /Volumes; ls, identify your macOS partition (normally Macintosh HD), issue cd ./HD/Users/UNAME/REFIND where HD is your macintosh partition, UNAME is your username and REFIND is the name of the folder, and run ./refind-install. If it is succesful, then reboot your computer.

ok, but when I tried hitting control key and w key, it didn't work. honestly it didn't, I kept hearing drum chime error sound. and I'll install it to internal disk this time.

Weird, it should work regardless of the disk, it's nano. Try running sudo su and running nano again.

Let us continue this discussion in chat.

can you resend invite? I don't have reputation of 20 yet.

Hey Pixelomer, you still there man?


text:
Difference between "diskutil mount" and "sudo mount"
I was looking for a way to mount the EFI partition on macOS when I realized there was actually two commands to mount a partition: mount and diskutil mount. What is the difference between them? I couldn't find anything about their differences online.

mount() is actually a system call, that means it's a C function offered by the system library (libSystem) to tell the system to mount a disk drive. It will talk to the operating system kernel and instruct it what to mount, where to mount it, as well as how to mount it.
The command line tool mount is just simple binary around this function call. It parses your arguments and then feeds those into the system mount() call, check the result of the operation and print an appropriate error message if it cannot parse your arguments or the mount operation failed for some reason. The presence of that tool is required by the POSIX standard and as macOS is a POSIX compliant system, it has to offer that command.
This command is also found on pretty much every UNIX system as well as on every Linux system, as that's how a user with shell access instructs the system to perform a mount call without having to write C code first and compile that code to a binary using a C compiler. Also that way you can perform mount operation from within shell scripts.
diskutil is another command provided by Apple for macOS and it's the command line version of the "Disk Utility" application. The UI version looks like this:

Of course, this application is also able to mount drives, so it also has a mount function which you can trigger by diskutil mount (in the UI application you select a disk and then either choose the mount icon from the toolbar in the upper right corner or open the context menu and select "Mount").
As you can see on the man page of diskutil, the mount call has far less options available (readOnly and an optional -mountPoint), which limits the ways how a volume can be mounted but usually the missing options are not required. Further some options are not required as diskutil will automatically figure out the correct settings for you (whereas mount is rather dumb and often requires you to specify additional settings to make it work correctly).
Also diskutil allows admin users (and sometimes even normal users) to mount volumes that otherwise require root privileges, that's why you typically have to use sudo with mount but not with diskutil (it won't allow malicious operations to begin with and as you cannot set any dangerous options, nothing can break either). For convenience and security reasons, diskutil will always mount volumes to /Volumes and to a directory named like the disk volume; you can mount a volume elsewhere with the mountPoint option but then you do require root privileges (as that's potentially a dangerous operation).
Finally mount requires to specify the mount source as disk device (something like /dev/disk1s2) but diskutil also allows you to specify a volume by its UUID (every volume has such a unique ID which looks like this 3717b1fa-e76b-11ec-9b88-7e3148d68d41), and even by volume name (e.g. "Macintosh HD"; if multiple volumes have that name, it picks the first one it finds).
So unless you have to use mount for some reason (e.g. as you require a certain option) or want to write a portable shell script, you would usually always use diskutil mount on macOS for mounting volumes. It's easier to use, provides better error messages, and won't require you to become root first. Only fall back to mount if whatever you are trying to do is not possible with diskutil.


text:
Completely uninstall Adobe CC
I want to get rid of all the services, background processes, and apps that would have been installed when I got CC.
The software has a heavy footprint from licensing daemons, always running update processes that use side channel loading and sync processes like these:

How can I uninstall everything related to Adobe CC from my computer?

If you have Homebrew installed, you can do brew uninstall --zap --cask --force adobe-creative-cloud.
Take a look at the Ruby script this command executes to see what items it deletes and what actions it takes before and after these deletions take place.

Every CC app has an uninstaller filed with the app.

These are repeated in the Utilities folder, in Adobe Installers.
The only one that doesn't is the Adobe Application Manager, for which there's an uninstaller here

Adobe also has a solution called Adobe Creative Cloud Cleaner that can be used to remove most of the Adobe software.  It will skip Acrobat (it's Adobe, don't expect it to make sense).
For enterprise level removals it also can be run from a command line.  Unfortunately Adobe doesn't document all of the switches so it can be helpful to know that adding --eulaAccepted=1 to your command line switches will allow the tool to run silently on macOS computers.  We use --removeAll=ALL as our command line switch to remove everything the tool can when running from the command line.

Another way to completely uninstall apps is to use a third party app like App Clean, Dr. Cleaner, or one of several other apps in the App Store. I've used App Cleaner and it worked fine. This app worked after I deleted the app. App Cleaner popped open a message asking if I wanted to remove other files related to my deleted app. It listed the other files and then deleted them.

I would strongly advise against using 'cleaner' apps. Adobe provides uninstallers for their products, which you should use. Cleaner apps tend to encourage excessive file deletion, and usually come with other unnecessary features like emptying caches. They are just as capable of deleting required files as you are. Most 'cruft' left behind by apps amounts to only a handful of kilobytes.

I don't understand at all the sentence "This app worked after I deleted the app." Which version of Adobe CC did you uninstall with App Cleaner? I'm skeptical as @benwiggy was that it grabs all the items the official Adobe uninstall scripts do.


text:
Why do macOS/iOS upgrades take so long?
Even on an iMac Pro, it still takes some time (maybe 15 minutes) to upgrade the OS (after everything is downloaded). During this time, I can't use the computer.
Why is that? What is it actually doing? Why is this process not a simple reboot?
Please note I'm not asking why a reboot is required. As a software developer, I'm fully aware of why a reboot is required.
Also note A clear reason why an upgrade could take a while is a filesystem migration (such as the HFS+ → APFS migration). Apple did some test migrations, even, before rolling out the final thing. However, most OS upgrades don't involve changes to the filesystem AFAIK.
This is a question is similar to Why does the OS X Software Update check take so long? about another upgrade process taking a while. There are specifics of macOS and iOS that are worth considering in answering this question. For example: both ship with drivers necessary for all supported systems.

I'm voting to close this question as 'off-topic' according to the published question guidelines. Questions that ask why Apple did, didn't, can, or can't do something are off the record because they can't be answered by this group.

@fsb Typical over-moderation that turns people off to these sites.

I didn't do it for 'over-moderation'.  The way your question was worded, originally before the edit, was asking why does Apple require a reboot.  The way I read it was off-topic.  It takes more than 1 person's vote to close a question, it takes 4 votes.  These sites help many people by ensuring questions can have, and get, accurate answers.  Please see [ask] for tips on how to ask questions that can get good answers.

@fsb It was clear before the edit. "Why aren't OS upgrades simply a reboot?" is not "Why do OS upgrades require a reboot?" Then I mentioned "Why is this process not a simple reboot?" Then I mention "and then rebooting" You misread the original question, but no worries.

@fsb Why is my question off-topic when this one presumably isn't? https://apple.stackexchange.com/questions/31495/why-does-the-os-x-software-update-check-take-so-long?rq=1

This is a perfectly valid question.  This is not a "Why Apple does X, Y, or Z" but rather "why does a process take so long?" which is technical in nature.  Nominating for reopening.

Why is this process not a simple reboot?

The overall answer here is it depends.  It depends greatly on what needs to be done.  An update that you do to your system may be vastly different than I do on mine.  The update in question may only need a service restarted or it may need updates to the actual kernel.

Why is that [I can't use the computer]?

Generally, for the same reason you can't use an app (Word, Excel, Numbers, iTerm, Adobe Photoshop, etc.) that is in the process of being upgraded. The files must be closed, read, analyzed, the appropriate patches/updates copied over and the app restarted.
When an OS is upgraded, the same thing must happen and this is typically done (when it comes to kernel level upgrades especially) in single user mode.
Typically, you'll see updates downloaded, the system will begin a shutdown, updates applied, a reboot, and a "finalization" of the updates followed by a normal boot.  You can't use the computer during any of this.

What is it actually doing?

It depends.  It could be anything from patching a config file to flashing firmware of some type.

If the system is in /System, why isn't an OS upgrade simply creating a
  /NewSystem

First off, /System is protected by SIP so to disable it, you actually need to boot from a different mount point.*  Secondly, the way you're looking at this is analogous to doing a home renovation by dumping a new house next to the old one and telling the people to just move in.  It's not the way it works.
Many things have to happen, least of which is restore points created (in case the backup fails).  So this means a copy of the working system is created, the update applied, the update checked, and (if all good) the restore point deleted.
In the case of firmware updates, images have to be verified (i.e. you don't want a Mac mini firmware on your Mac Pro), checksums validated, images backed up, applied, verified, old ones removed and the system reinitialized.  Again, none can be done with you logged in and none of it done by simply "dumping" files in a directory.
An upgrade is a process and all of this takes time.

* SIP is designed to protect the system by preventing changes to the OS.  Allowing the OS to change the system "on-the-fly" would negate the security it's trying to achieve.

Thanks for your answer Allan. Ok so I can, as root, without violating SIP, create an archive of the system directory (just tried it). Yes, you would need to disable SIP to switch to a new system dir, but that wouldn't take significant time if /NewSystem is already built.

That's not the way it works.  Besides....an installation can take half hour or more and technically that's just copying files.  An update does much, much more than just copy files.

"Again, none can be done with you logged in" Why not, exactly?

Can you update an app while an app is running?  Same concept but much more complex.    Your OS is running (files are open and protected).  You have to kill the processes, remove the protection (more than just running sudo) and patch the system.  If it's a kernel update, you have to bring everything down because nothing will be written.

No, but you can do the vast majority of the work in updating an app while the app is running. That is: unpacking, applying differential updates to build a new directory structure, and checksumming. I don't see an OS update as significantly different. We could get into the weeds here.

I don't see an OS update as significantly different.  Like I said...it depends.  When it comes to kernel updates (as described in the answer), it cannot simply write to /System as SIP is a major factor here.  To disable SIP, you need to boot off of a different mount point.  You simply cannot do that while it's running.  Besides, we're talking about an OS, not a single instance of an app.

Let us continue this discussion in chat.

Rebooting a computer for some operating system updates/upgrades is required for all operating systems, not just macOS.
Actually, in the case of an update, sometimes a reboot isn't required when it is still used as part of an update process, but this is only in instances where it's easier for most of the user population to have to undergo a reboot. For example, some system updates make changes to things like a network service and, while you could get away with just restarting that rather than the whole computer, it's just easier for most users to do a restart than go through the steps to restart the network service.
However, in most cases that a reboot is required, it's because it's actually necessary. There are many operating system resources that are used by applications, including 3rd party applications, and updating these while the user is logged in just isn't going to be an easy task and, in fact, potentially capable of causing file corruption etc.
Also, in cases of firmware updates a reboot is most definitely required. Adding to this, some years back Apple started automatically including firmware updates (if/when required) within macOS updates/upgrades, so it's not easy to check which devices had firmware updates included in an update/upgrade. Regardless though, firmware updates require a reboot, there's just no way around it.
Another example is the update of resources required to use hardware. In some cases a reboot is required, in others it isn't.
Finally, in terms of your last question about why not just create a new system and then having this become active after the next reboot, while this would technically be possible it really isn't practical. The System directory is GBs in size and this would take a lot longer to do and require a much larger amount of free space on the boot volume.

My question wasn't "why can't an OS be upgraded without rebooting?". It's why does the process take so long and lock the user out? Also, hard links (https://en.wikipedia.org/wiki/Hard_link) could be used to drastically reduce time and space required for an upgrade. (Note: I'm a software developer)

@Taylor specifically re: OTA iOS updates, they're delivered in the form of differential patches that need to be applied to existing files. Both OTA and non-OTA updates to iOS are still stored on an encrypted device and need to be encrypted as part of the installation process. Encrypting things takes time. The only people I'm aware of who know with complete certainty why those decisions were made are the development team at Cupertino.


text:
Mac Chess app crashes each time i open it
Some days ago I played a few Chess games on the built-in chess app. But now each time i open up chess it does these steps:

It makes the mouse a spinning color wheel
The app crashes
It says that 'Chess quit unexpectedly'

What can i do to fix this?

Can you post logs and software version?

My version of mac is 10.13.5 and what do you mean with logs?

This is a wonderful issue to follow the two articles Apple publishes on isolating issues (not that it's wonderful to crash, but this is a very small contained issue that should be easy to isolate and then fix):

https://support.apple.com/en-us/HT203161 - Isolating issues in Mac OS X

That sets the table for you to dive into software isolation (which this is clearly the first thing to try)

https://support.apple.com/en-us/HT201516 - Mac OS X: How to troubleshoot a software issue

In your case, making a new user account, verifying if the crash is system wide or just your account is the next step I’d take. Once that’s done, you can think about updates / verifying a backup, etc...

I don’t think the first link is correct

Yes indeed @IronCraftMan Thanks so much for pointing that out. I've added the title since the one link may be archived and that will help further fixed if these links rot in the future.

If i create a new user, Chess works fine

@VictorFink Excellent triage. So - you can move your preferences and files to the new account and delete the one with the bad settings or you can start undoing and clearing settings on the old account in hopes you learn which setting is corrupt. Which is easier for you?

At least i want to keep my account, but which settings do you mean?

Your App Setting seems to be corrupted.
to solve the problem proceed as follow:

Create a new Mac User
Log in with that user in order to initialize it
Log in again into your user
Copy the content of this Folder:
      Macintosh HD ▸ Benutzer ▸ [New User] ▸ Library ▸ Containers ▸ com.apple.Chess
into your Folder:
Macintosh HD ▸ Benutzer ▸ [Your User] ▸ Library ▸ Containers ▸ com.apple.Chess

To make hiden folders visible, just hit following keys:
CMD + Shift + DOT

Surely just deleting the Container in the original user account should suffice?


text:
Is there an app that could create a daily checklist from a template?
I'm looking for an app that could automate some of my routines at work.
Each working day I start with checking emails, new issues in bugtrack, cup of coffee and etc.
Some of the work requires step by step following a checklist (new release for example).
Each time I need to create a new document, paste there a template of the checklist and follow it.
I wonder, is there an app that could add some automation in that process? Like create a daily checklist automatically or handle a history of each day.
Thanks.

My office tracks projects on Asana. I have private, recurring daily and weekly tasks I just use myself. Many include sub-task workflows. I can't quite recommend Asana personally since the non-free packages are pricey, but would I suggest you look at some project- or time- management solutions since, while not built to your exact purpose, they may suit your need as a side-feature. E.g. Asana, Trello, BaseCamp, look around?

@JoelReid Thank you, trello actually looks very good since it allows to automate tasks of copying new boards. Thanks, If you convert your comment to answer I'll mark it as current.


text:
how to create a bootable Wndows 10 USB installer on my MBP 2017 without being asked to repartition my drive?
as title.
On my MBP2010 (which is currenty 1000s miles away), I don't get the option to repartition my drive. I just get the option to create the USB installer + download bootcamp drivers.
With the 2017 MBP, it wants to repartition the internal SSD which is not something I want to do.
Thanks!

After pressing Continue, I get this

"...With the 2017 MBP, it wants to repartition my drive..." - In this sentence, are you talking about an external drive (like a USB Flash Drive) or your internal drive?

@pixelomer internal


text:
How does Time machine handle a new startup drive?
I've been running my machine for years and using Time Machine all that time.  Now I have just decided that I needed a separate system partition for some work stuff where I wanted to have the whole system configured differently (different utilities installed, different defaults, different drivers for things, etc.)
So I did this, but now we come to turning on Time Machine.  Near as I can tell, TM appears to recognize that this is still the same computer and wants to continue backing up as always to the same TM archive it's always used.
For probably obvious reasons I don't want to do this, I want this backup to be completely different from the old one.  In fact I don't even want to back up any of the other drives/partitions connected to this machine while booted off this partition.
Is there a way to make this happen or am I stuck because it's the same physical machine and that's all TM cares about?

Backing up Multiple Drives/Partitions (on the same Mac)

OK so it appears that I want to "Back up both, from both OSX volumes, to the same volume." however that article does not appear to give any information on how exactly to accomplish this.


text:
VNC with screen disabled
Is there a way to start a VNC session but without have the remote computer (an iMac) screen turn on ?
I tried to reduce the brightness to min on the physical machine but is not good enough.

Using the Apple Remote Desktop app, you easily can. Use the “Curtain” mode

Is but I'm try to do that from an iPhone sorry I didn't mention the IOS part.


text:
How to lock an App/Game with terminal?
My son uses my iMac for school stuff and some gaming. I have caught him playing games during school hours when he isn't supposed to be playing games.
I know that I can use parental controls to set this up, but we both just use the same user. (so he knows the passwords.)
Is there a way I can use terminal to "lock" the game (or application) so that it won't open unless I unlock it via terminal?

https://apple.stackexchange.com/a/327383/263848

Yjere is a reason there can be multiple users - to allow each user different permissions. So in this case create a new user for yourself with admin rights using a new password. Then make the existing user a normal one and put it under parental control.

That would make a great answer, Mark


text:
Advanced mail filtering on mail.app
So I have been trying this for weeks but am not able to make it work optimally. Here are some screenshots of my settings: and the mail filter rules: I want to apply mail filtering for specific cases such as the mail should filter everything from gitlab as junk but not those emails that have a specific keyword in the header like the name of a repo. How can I apply such rules.
I have tried changing If any of the following conditions are met to If all of the following conditions are met but that seems logically incorrect and here are the set of rules that I applied

from ends with gitlab@mg.gitlab.com
subject does not contain keyword

but it still filters everything from gitlab

You included the gmail tag, so I'm assuming you use gmail? Why aren't you just using their web interface to filter mail?

@JBallin I am not sure if I have ever heard of the web interface but I decided to use rules instead of this web filtering thing on Mac mail and now my each and every mail goes to junk.

@JBallin yes I am using gmail. Can you provide me the link?

Web Gmail: gmail.com


text:
How to fix my external hard drive after connecting it to a pc? Possible USB 3.0 to USB 2.0 problem?
I bought an external hard drive, connected it to my MacBook, put some stuff on it, connected it to a pc, tried to transfer video files to a friend (pc owner), spinning wheel of death, friend pulls out usb without ejecting, connected external drive to my MacBook and nothing pops up. Sometimes it’ll pop up if I restart my MacBook with it plugged in. But there’s a pop up and has three options: initialize, eject, ignore. I click initialize but Disk utility doesn’t find a problem when first aid is used. System Information knows it’s there, plugged in. Both tell me partition map is “not supported” or “unknown” and I don’t know anything about this, but is that where the problem is?
Note: Okay, so I feel like this may be a usb 3.0 to usb 2.0 problem. I still have the same issue where it only shows up on MacBook after restart. But disk utility shows me more on an old MacBook (usb 2.0) than my MacBook (usb 3.0). My external hard drive is a seagate. Some information disk utility gives me is. USB Serial Number is all zeroes. Total capacity is 144.12 PB. Partition Map Scheme is unformatted.
I also would prefer if I can fix it on a MacBook. When I tried to verify it said unrecognized file system. The PC I have access to is slow and I don’t really know how to work it.

Did you try connecting it to a PC and see if it is detected there? You can format it on a PC/Linux box with ExtFAT or FAT32.

I have tried connecting it to a pc. At first glance it doesn’t appear to be there. But it’s there in device manager.

On the PC, open the run command item from Start Menu and enter the command: diskmgmt.msc. The Disk Management app will open showing your hard disk. You can re-create the partition table and new partition(s) using the app.

"With friends like that, who needs enemies?"
If you don't care about the stuff on the drive, you may still be able to erase and repartition it for use on your MacBook. In Disk Utility, select the drive in question, then click the Erase button. Choose Mac OS Extended (Journaled):

If all works as intended, then the drive will be usable again on your Mac.
If you want to be able to plug it into your friends PC to share files, you will need to erase it with a different format, this guide will help.
Essentially:

Launch Disk Utility
Connect the drive you wish to format for dual compatibility to the Mac
Click the drive name on the left side list in Disk Utility, and then click the “Erase” tab
Click the pulldown menu alongside “Format” and select “MS-DOS (FAT)”
Optionally, give the drive a name
Click the “Erase” button to format the drive for Mac & Windows PC compatibility

NOTE: MS-DOS (FAT) format disallows files over 2 or 4 Gb in size. A better choice is ExFAT, especially if you're dealing with video files:

You had me with "With friends like that, who needs enemies?" :)

I came across this in my browse on the internet. And I’m able to erase it. I have a vague idea of what’s on it and I don’t want to erase any of the content. Although, I feel like by the end of it, erasing it might be my only choice. Unless you have another idea of how to fix the problem.


text:
Locking MacBook with shortcut breaks Safari's search function
When I lock my MacBook with Command+Control+Q while Safari is open and unlock it, Safari's search function becomes broken. Before I lock my laptop, I can just type something in the url bar and Safari automatically searches it on Google. But after I unlock it, when I write something in the url bar, let's say "Hello World", after I hit Enter, it automatically turns into "Hello%20World" and it just errors out. Why is this happening? The same thing doesn't happen when I lock from the Apple Menu.
macOS Version: 10.13.6 (High Sierra)
Safari version: 11.1.2 (13605.3.8)

Please update the question to include version of macOS and Safari.

[I can't make this an answer because it's far too vague]... I've seen this happen, but I've always put it down to "lag"... normally if i type 'map' then I get google maps etc. If I'm a bit too quick for it, I get a search for 'map' or for a more complex term I get a 'failed url' or 'bad search' like hello%20world as you note. I think it's some kind of 'slowdown' not an absolute fail. Maybe test my theory & let us know... watch the URL bar as you type - does it 'fix' itself if you wait an extra second or two?

btw I rarely lock my Mac, though it will lock itself after an hour away - but I did test to see if that was directly affecting it... it isn't.


text:
How is it possible download an iOS application to Desktop?
We have an app and many user downloaded it to "Desktop". How is it possible? What does it exactly mean. I see this in AppStore Connect.

Did you try clicking on the ? ahead of the Devices title to see the help text?

This is a screenshot from App Store Connect.  To answer this question, the author would need to know how Apple defines 'desktop' in this context.

Tried ?. No relevant I found. So how Apple define 'desktop'?


text:
How to sort the special characters menu?
In order to type special characters, I long press the standard char and then I get a menu to pick exactly the one I need by pressing its number. For example, if I want to type á I need to long press a, then a menu like the following is displayed, and then I need to hit 2 in order to finally type á. However, if I want to type ó, the number is 4 instead of 2.

I want to know whether it's possible to change the sorting of these characters, so that á, é, í, ó, ú, ñ are all on number 1.

Might depend on what language your keyboard is set to - but how about opt/` then the vowel? [that's a backtick, often but not on all languages, next to z] for me that gives me à è ì ò ù in just 2 keystrokes each time.

oops, wrong accent... opt/e gives acute, sorry - á é í ó ú

@Tetsujin didn't know that :) still I find less error-prone that menu, so I keep the question open to know whether it's possible to sort it.

If you check System Prefs > Keyboard > Keyboard >  "Show Keyboard & Emoji viewer in menu bar" then open the Keyboard viewer from the menu bar & hold opt, you can see all the 'dead keys' you can use to generate accents in the same way -they highlight in orange. This used to be the only method, before the pop-up version was added a few years ago. If you're happy with that method I can add it as an answer...

@Tetsujin I'd rather the other way, but it's ok, add the answer

You may be able to do this by customizing the Accent Menu/Character Picker as described in this earlier answer here:


text:
Which OS should I downgrade to?
I recently bought a 2nd-hand iMac which has the following specifications:

iMac (27-inch, Mid 2011)
Processor: 3.4 GHz Intel Core i7
Memory: 16 GB 1067 MHz DDR3
Graphics: AMD Radeon HD 6970M 2048 MB
Storage: 1TB SATA HD

It had Sierra installed, and I used it for a couple of weeks.
I then upgraded to High Sierra and noticed that it is very slow.
It seems to lag everywhere, even when inputting text into this text field in Safari. The lag is not extreme, but it is there.
I assume this 2011 iMac has insufficient processing power to smoothly run High Sierra which was released in 2017, so I would like to downgrade to an earlier OS.
I considered downgrading to Sierra, but I wonder whether it would be even better to downgrade to an earlier OS such as El Capitan or earlier.
From the MacOS release dates on the Wikipedia page, I assume this iMac was released with Lion.
I use XCode 9 and not much else, and I assume this iMac has a 64-bit processor, and I don't know which was the first OS to support 64-bit.
I'd like to downgrade to the earliest version that I can, to ensure the smoothest experience.
So which OS should I downgrade to?

Your processor and RAM is more than good enough to run High Sierra. It is way more powerful than my tiny 12-inch MacBook that I currently use, and even it can run High Sierra just fine. Your problem is the spinning rust (aka hard drive) it's installed on. Replace that with a solid state drive and you should be good to go!

@AndréBorie Why would the speed of the hard drive affect entering text in Safari?

Considering your usage, the answer is fairly straightforward:

Xcode 9.0 to 9.2 require as a minimum macOS Sierra 10.12.6
Xcode 9.3 to 9.4.1 require macOS High Sierra 10.13.2

So you're basically limited in your options to these two versions of macOS.
You didn't specify the exact version of Xcode you have installed, but you may need to change that to go down to macOS Sierra. Also, you may need to consider your long-term usage, as Xcode 10 (still in beta) requires macOS High Sierra 10.13.6 and it won't be long before a version will require macOS Mojave.
If you decide you want to keep the iMac, then your best bet would be to upgrade to an SSD (either replacing the optical drive, or the internal HD). I suppose another option would be to get an external SSD which supports a Thunderbolt 1 connection and then install macOS on that to use as your main boot disk. While a little clumsy, it's still going to result in a better experience all around.


text:
A new macOS version exists, no update available from the App Store
I recently reinstalled macOS on my MacBook Pro which is now on macOS 10.13.5, which isn't the latest version because I used an old macOS High Sierra installer. However, when I opened the Mac App Store to update to 10.13.6, it didn't show any updates. I thought it was an issue at Apple's side, so I downloaded the macOS 10.13.6 Combo Updater, but that didn't work either. It gave an error: "This volume doesn't meet the requirements for this update". Is my installation corrupted? If not, how can I fix it without another reinstall?
This is a MacBook Pro (Retina, 13-inch, Early 2015). I have enabled FileVault after installing macOS and it is still encrypting (about 13 hours left).

Were you trying the update while FileVault was running?

I tried both updating with and without FileVault encrypting. No difference, still the same error from Combo Updater. I am waiting for encryption to finish, after that I'll retry. I am also downloading the full macOS High Sierra 10.13.6 Installer so I can try installing from a USB.

Weird. I just pressed the Install button on the macOS High Sierra Installer inside the App Store and it said something like "You already have High Sierra, use Mac App Store to update". I pressed "Continue" because I'm collecting macOS installers (because I can). I then visited the Updates page and there was no macOS update.

Why don't you rename the downloaded High Sierra installer application and redownload High Sierra from the Apps Store?

@DavidAnderson I am currently doing that. The only difference is that I didn't rename it, I moved it to trash. I'll take it out once the Installer is downloaded.

Apparently macOS doesn't allow you to install macOS Updates while FileVault is encrypting, so it blocks every possible way of installing software updates. However, it is still possible to install macOS updates from an external flash drive since there is no encryption going on when you boot from an external device, thus allowing you to install the update. You will need to follow Apple's instructions on how to create and boot from an external macOS Install USB. The only thing you need to do different is before starting the macOS installer, open Disk Utility, select your disk and mount it. You will be prompted for your disk's password since it uses FileVault. After that, simply start the Installer and install macOS onto your main partition. It will not overwrite your existing installation. It will only replace essential system files with fresh ones, thus updating your system.

I had the same problem with MacOS High Sierra.
If you don't want to use a USB stick to port your OS there just fire up the App Store and search for the OS name (in my case was Catalina): then press GET and install it from there


text:
Cannot run refind-install from Recovery because "/usr/bin/env: bad interpreter"
I have managed to change the present working directory to the folder containing downloaded rEFInd files. I have booted to Recovery Mode. The refind-bin-0.11.3 folder was downloaded to my Downloads folder.
I came across a new problem: ‘bad interpreter: no such file or directory’.

How can I fix this problem?

I've edited the question down to just the latest unresolved problem. Feel free to expand further to add some context.

the users messengerm? Lol. That could lead to some mistakes if a space is misplaced.

Yes, Messengerm, it doesn't have underscore between, thought I could add a space between the two, but couldn't. but making changes in the user name can happen. but can't get Mac OS X to keep the user name in high caps. so yeah.....no mistake in username. Mac OS X will not allow to have space between "messenger" and "m" but yeah, we all choose names and who we want to be......

but other than that Jbis......this is the problem I came across in terminal........ env is missing and I got the error message -bash: ./refind-install: /usr/bin/env: bad interpreter: No such file or directory. this terminal is from recovery mode partition.

@Jbis  A space being misplaced? I don't see where....I can see error message so maybe it's caused by some mistakes. but we need to be very serious. plus I tried two command line paths in recovery partition, one was . refind-install and other was source refind-install, both lead me to an BSing error message telling me refind binary file is missing(it's talking about refine-bin-0.11.3 file being missing)...

@M3553N63R Your message makes no sense. Whats the problem?

@Jbis  so let me explain this to you, I first typed cd "/volumes/Macintosh hd/users/messengerm/downloads/refind-bin-0.11.3  2ndly I hit enter, 3rdly I typed ls then 4thly got the pleasant good sign I was in the right directory showing the script items in Refind-bin-0.11.3 file confirming(verifying the file exists and I was in the directory to Refind-bin-0.11.3 file) then I typed ./refind-install as instructed, got error message as shown above in screen shot. then got an answer response from GRG and a comment response from fd0....so I clicked link https://apple.stackexchange.com/q/331985/37797

Run this bash ./refind-install

@Jbis getting to the part....to explain what the problem is. ......

I did run that script as shown in screen shot. Refind-bin-0.11.3 file is not missing because I can clearly see the file. I'm not sure if the file shows as blue folder on your Mac but for me it does on mine, and it's in downloads. so the computer tells me and shows me it's there but in error message after trying source refind-install, and other scripted command line . refind-install, <---- that one without the slash. however in recovery partition in terminal I will type Bash ./refind-install and see what happens....

I suspect the ‘refind-install’ script has a shebang pointing to /usr/bin/env, such as
#!/usr/bin/env bash

The Recovery environment doesn't have a /usr/bin/env, so attempting to access that path returns the error that there's ‘no such file or directory’ there.
You can manually choose a shell to execute a script with by passing the script to the shell:
bash ./refind-install

Alternatively, you should be able to edit the script to point directly at the shell. Replace the first line in the script with something like this, presuming the line above is what's in the file.
#!/bin/bash
Note the space has been removed.
I have `/usr/bin/env` in my "Macintosh HD" but not in the recovery partition. Is this normal?

If you're talking about the rEFInd-Install script, How do I edit the script? mind giving the walk through? much appreciated.

@M3553N63R See edited answer for running a script with a shell of your choice without editing the shebang by JBis

You don't want to run a script in "any" shell because each shell has its own syntax. While ksh,zsh, and bash use bourne like syntax that is the same in each shell, they also have syntax that is unique to each shell. Best practice would be to read the first line ( the shebang)- head -n1 refind-install then use  that shell within the shebang.

tried Bash ./refind-install then like always I get told "copying sample configuration file as refind.conf; edit this file to configure rEFInd.

@David Anderson Can we speak in chat room?


text:
macOS freezes. keyboard/mouse input is registered. screen freezes
I am on macOS High Sierra 10.13.6.
Macbook Pro 15" w/ Retina display, mid-2015.
The OS seems to freeze sometimes:

the screen freezes
all output sounds freeze (most of the time now, but didn't use to)
most keyboard/trackpad input is registered, and all gets displayed at once when the screen unfreezes and sounds resume
sometimes only some keyboard input is registered, or only some trackpad input (or none)

This happens seemingly at random moments, and never seems to last longer than half a minute.
How do I stop this from happening?
I'm not sure how to begin diagnosing the problem, please ask for more info that you need.
It will be tricky for me to record/time etc. the incidents because I can't predict them.


text:
Arabic Font iOS 11
Ever since I switched to an iOS device from Android, I have noticed that the Arabic font looks like this:
This font is very different from the classic Arabic font and is very annoying to read. I have noticed this not only on WhatsApp but on other websites also. Is this a setting in iOS or is this a problem specific to WhatsApp? Is there any way to fix this?

If you are seeing this:

Go to settings/general/language and double check that Arabic is higher than Urdu on the list.


text:
iTunes only plays first part of song
I downloaded an album from iTunes Store on my MacBook (macOS 10.13.6).
One of the songs, only the first 17 seconds play. Then it jumps to the next song.
The total time of the song is displayed correctly (4:06).
When I navigate to ~/Music/iTunes/iTunes Media/Music and find the album, the m4a file that the song is stored in does the same thing:
QuickTime shows it's 4:06 long, but only plays the first 17 seconds then freezes. Trying to skip with the scrubber past 0:17 in QuickTime causes the song to be unplayable, unless I put it back before 0:17.
How can I fix this? I want iTunes to play the whole song.

The file is corrupted. Delete and re-download.

You can try a different player like VLC and check whether that works.
But it's way more likely that the file is just corrupted. You can try to copy it again from the source.

What's the easiest way for me to re-download?

That depends on where you have gotten the file.

"I downloaded an album from iTunes Store"

You can delete the song from your hard drive and then redownload it from iTunes like this: https://support.apple.com/en-us/HT201272


text:
APFS - Is it possible to install 2 macOS versions inside one APFS container?
As you might already now, a single APFS container can have multiple APFS partitions inside. Their advantage is the free space is shared between partitions.
Today I decided to try out macOS Mojave Public Beta and was about to create a second APFS container, but thought "why not use an APFS partition instead?" but I didn't want to risk my main macOS High Sierra partition being erased so I decided to ask it here. Is it possible to have multiple macOS installations inside a single container with multiple APFS partitions?

Yes, it possible to have multiple macOS installations inside a single container with multiple virtual partitions, but some of the partitions will be shared.

Note: I do not think virtual partitions is the correct terminology. I believe the terminology should be APFS volumes sharing the same APFS partition.

I started  with High Sierra installed to volume labeled Macintosh HD in a APFS container. I using the Disk Utility application to add a new APFS volume labeled Macintosh HD 2. Next, I downloaded High Sierra from the App Store and installed to the Macintosh HD 2 volume. The result from diskutil list is shown below.

Note: I used a external drive, so disk2 appears below instead of the expected disk1.

/dev/disk2 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +200.0 GB   disk2
                                 Physical Store disk1s6
   1:                APFS Volume Macintosh HD            50.8 GB    disk2s1
   2:                APFS Volume Preboot                 46.1 MB    disk2s2
   3:                APFS Volume My Recovery             1.0 GB     disk2s3
   4:                APFS Volume VM                      8.6 GB     disk2s4
   5:                APFS Volume Machintosh HD 2         18.2 GB    disk2s5

While both High Sierra installations use different root volumes (disk2s1 and disk2s5), the installations share disk2s2, disk2s3 and disk2s4.
Next, I created another APFS volume labeled Mojava 1 and then downloaded Mojava Beta from this Apple website. The result after installing is shown below.
/dev/disk2 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +200.0 GB   disk2
                                 Physical Store disk1s6
   1:                APFS Volume Macintosh HD            50.8 GB    disk2s1
   2:                APFS Volume Preboot                 74.5 MB    disk2s2
   3:                APFS Volume My Recovery             1.5 GB     disk2s3
   4:                APFS Volume VM                      8.6 GB     disk2s4
   5:                APFS Volume Machintosh HD 2         18.1 GB    disk2s5
   6:                APFS Volume Mojava 1                35.8 GB    disk2s6

Mojava installed to disk2s6 and shares share disk2s2, disk2s3 and disk2s4 with the other two High Sierra installations.
So there is now three macOS Recoveries for both High Sierra and Mojava. In my case, both High Sierra macOS Recoveries are Version 1.0 (327) and the Mojava macOS Recovery is Version 1.0 (330).
I can boot to one of the three macOS Recoveries stored on disk2s3 by holding down the ⌘+R key combination at startup. If the default startup disk is a APFS volume containing macOS, then the corresponding macOS recovery will startup. For example, if the startup disk is set to the APFS volume Machintosh HD 2, then holding down the ⌘+R key combination at startup will result in the Mac booting to High Sierra macOS Recovery on APFS Volume My Recovery.

Note: macOS Recovery no longer appears in the Mac Startup Manager. However, macOS Recovery, for a given macOS installation, can be booted using the rEFInd Boot Manager.

BTW: Removing Mojave from the APFS container is covering in my answer to the question: Erase an APFS volume?

Thank you for the detailed answer! I'll try it myself and accept it if it works. By the way, I made up the virtual partition term and I think APFS partition is a better term.

I just tried it on my main drive with Mojave Public Beta 3 and it worked.

sorry to ask you directly just I'm trying to ascertain (as per my question here https://apple.stackexchange.com/questions/399534/apfs-containers-encapsulation-and-safety) - does using separate containers (instead of volumes) not seem a better way to avoid all of this clean up and mess in the first place. I want to try Big Sur to see if it resolves KPs on my MBP16, however I don't want any messing with my Catalina dev machine. None of the docs (even Apples) suggest containers, but they seem to be a really clean, easy and well encapsulated way. Why are volumes preferred?


text:
Mouse pointer enlarges for a moment
I have an iMac running macOS High Sierra. Sometimes, when I'm moving the mouse pointer around it will enlarge to 2-3 times the size for about 1 second. It happens a few times per day.
I assume I'm either pressing some key that causes it or I'm moving the pointer over something that triggers it.
What is causing this behavior? Is there a way to disable it? If yes, how do I do so?

It happens when you are cross - shaking the mouse - the system records mouse abuse !

The behaviour that you are encountering is due to an accessibility setting called Shake mouse pointer to locate.
First introduced in OS X El Capitan 10.11, it helps in locating mouse pointer for people with vision disparity. It is also widely used for easily locating the mouse pointer when using a multi-monitor setup and/or high-resolution display(s).
The setting can be enabled/disabled by going to System Preferences → Accessibility → Display.

Very useful when you have multiple monitors.


text:
Secondary display turns off when I close the flap of my MacBook pro running on High Sierra
I wanted to play some retro games, I connected a ps3 controller so that i could play on a big screen.
As soon as I close my MacBook pro's flap, monitor also mirrors it.
I saw on youtube that a person was using the mac and he closed his flap, but everything was running fine.

How is the behaviour for the lid set in system preferences?

Can you add a Link to video?

I didn't remember the video, but I don't have any external input device rather than a ps3 controller.

The mac has to be plugged in for it to still work with the lid closed.
If you have a USB-C power port, you may have to unplug the cord from both the MacBook and the brick, and then plug it in again. Sometimes it comes loose on one of the ends

hdmi is connected, are you talking about power adapter?

As documented, clamshell mode requires an external monitor and AC power.  https://support.apple.com/en-us/HT201834