Doa’s preset - Some from GoldenChaos, some from others, some I made myself

Updated again
To use it fully requires editing a lot of widgets to suit your own computer. iStats is needed to enable cpu temp, fan speeds & battery stats. The folder in the zip file below needs to either be saved to your user library folder (Macintosh HD:Users:"YOUR USERNAME":Library) , or widgets that use those icons need to be altered to reflect the new path.

Updated version ( 5th October 2018 ) - calling it V3:
https://share.folivora.ai/sharedPreset/29bd5bbb-1bec-4db3-9771-5c501e476fd9

Includes fixes for:

  • PIA Toggle - Long press checks whether utun1 or utun2 is being used for VPN connection.
  • Spotify ad skip has been moved to a seperate widget
  • Gestures altered/added

BTTFilesKEEP.zip (2.0 MB)

Screenshots :
Main:

  • Media buttons are green when Spotify is running, blue if iTunes is.
  • 3rd icon is volume, 4th is Now Playing, 5th is song duration. Full bar is 0% listened to, empty is %100.
  • Red microphone button will appear if microphone isn't muted. Disable if you don't want it there.
  • Press Note to type in a new note. It will display on the BTT. Visible length is limited but can easily be changed.
  • Long press Note to access full length note + 2 others
  • External hard drive/time machine buttons (show up when drives are plugged in). Time Machine one shows percentage complete of backup when TM is backing up.
  • Green book is a group with URL bookmarks.
  • Long press calendar to open group of next up calendar outputs.
  • Mail, Messages, & Facetime (not visible unless there's a missed call) turn green and show number of unread
  • Reddit needs to be edited to have your own JSON Url added
  • Long press weather to open 7 day forecast
  • PIA VPN - requires PIA client installed, server location changed, and may require utun 1/2 change.
  • Battery changes colour as it discharges. Charger icon on it means Macbook is plugged in.

Shift:

  • First part is the same as main screen, but Player Position includes remaining time (top) & player position & track length.
  • Rainbow icon is displays the current playlist (provided you use BTT to select playlist). If you press it, it chooses a random playlist from the list under predefined actions. Remove/add playlists as you want.
  • Next 5 buttons are playlists. Change to the ones you want to listen to.
  • Button that currently says favourites is the currently playing iTunes playlist. Expand out to see a couple playlist buttons & a rating group.

Option:

  • Volume icon with actual volume level
  • Microphone button (press to mute)
  • If you've set your background to rotate through various backgrounds, Press the screen button to change background instantly.
  • Next ones are various display toggles (night mode, true tone, do not disturb) May or may not change icon if activated/deactivated.
  • Flag displays the current language. Long press opens a group with other language keyboard settings. Add/alter as needed.
  • Crossed eye toggles hidden files
  • Airdrop, Airplane mode, WiFi, Bluetooth, Siri

Control:

  • Window resizing buttons. First one hides all apps.

Command:

  • Escape
  • Eject all external drives
  • Trash - Opens on press, long press empties bin
  • Emoji widget
  • QuitExcess app - I've included the app in the folder, but you can create your own in Automator. Just quits all apps except BTT, Spotify, Mail, Safari & Messages.
  • App switcher

Shift + Command

  • Siri
  • CPU Temp - requires iStats. Pressing expands/collapes Core Temp widgets
  • Cores 1-6
  • Fan Speed
  • Mac HD used/free space
  • External hard drive/time machine used/free space (show up when drives are plugged in)
  • PIA & IP Displays PIA VPN and current IP address
  • Battery stats including cycles, temp & health.

Gestures

  • Volume
  • Microphone Volume
  • Screen Brightness
  • Track Position

BTT REMOTE

  • Includes Play/Pause, Next/Previous, Volume, Mute, Lock & Unlock, PIA

I wanted to get the PIA VPN Script but couldn't find it in https://share.folivora.ai/sharedPreset/51491595-47a6-4d6d-9b0b-48592643d7f1

Many of the labels are just Apple Script Widget. Can you point out which one is for the PIA? Thx.

Here's the json file for PIA: https://share.folivora.ai/sharedPreset/910fdf8a-eb8b-4af8-a8c9-b501644420c2

In case anyone decides to try this and is having problems, I've found that for unknown reasons PIA will sometimes switch from utun1 to utun2 or vice versa after my Macbook has been reset. Since the script works by checking for a connection to one of those, you may need to occasionally change the script to reflect the right utun.

And if anyone knows how to prevent this, please let me know.

Have any Screenshots?

⌘⇧6 to screenshot the touchbar

Changed my mind. See first post.

1 Like

Edit: Now included in full preset

Updated the PIA VPN toggles
Figured out how to almost automatically check & update which utun PIA is connected to (assuming your mac always uses utun1 or utun2 for PIA. Switch out the 2 PIA toggles for the following, and add the named trigger:

New PIA Toggle - https://share.folivora.ai/sharedPreset/d8e1efb1-62ee-4d80-a730-d1d11091ac5b
New PIA IP Address Toggle - https://share.folivora.ai/sharedPreset/c3c1b8f1-1a92-4949-955d-b96ca809a3bf
Named Trigger - Tunnel Switch: https://share.folivora.ai/sharedPreset/25a67731-1128-453d-9980-d95de9b1c2a8

Long press on either toggle and it will run a check to see if utun1 or utun2 is being used. I put it as a named trigger because the launch "After Launch on Mac with Serial number" doesn't always work for me, but you can try that too if you want it to be fully automatic. If PIA connects through something other than utun1 or 2, you'll need to edit the scripts to match.

Great work. I'm having a number of issues but I'm not sure it's not caused by the BTTFilesKeep folder being in the wrong place. When you say "user library", do you mean the folder needs to be placed at the root of ~/Library? Also, with PIA, I took a look at the AppleScript and it's looking for PIATunnel in Applications which doesn't exist. There's an app called "Private Internet Access" and inside that package there is something called nwjs. Regarding the directory with the tunnel name, it's not clear what needs to be set where. The script looks like it's looking for a file inside of PIATunnel called utun1 or utun2 but that's not clearly spelled out.

I fixed the PIA problem. The script was creating a folder in ~/Library. I moved the folder to ~/Library/BTTFilesKEEP/ and created a file called utun2 which works now. istats stuff isn't working so I'm trying to figure that out now.

Sorry about the PIA issue. It’s supposed to be creating a folder in with the others BTT files, it’s just a reference file for the widget to keep track of which network interface PIA is using. Forgot I fixed that after uploading the preset.
By library folder I mean /Users/“your username”/Library. I might go through and check mine for any other fixes/updates I’ve made since uploading and update the above links.

edit: Updated the preset in the orginal comment. Thanks for pointing out the PIA issue.

I also had to change the font size for most of the widgets to 13 to get them to display. At 15pt they wrap and the font is too large which caused the bottom line to not display. I did this with pretty much all the two line widgets.

Strange. I have them set to 11pt (except for the clock which is 20 so I can read it without my glasses). Not sure why they show up as 15pt for you.
This is the settings I'm showing for Now Playing (Spotify).
Is anything else different on yours?

The font rendering has unfortunately changed on Mojave, so probably that's the issue!

I've been using the PIA toggle from your preset and for some reason I ended up with yet another interface called utun3. I looked into other ways to possibly check if PIA is running since I didn't want to just add a ton of checks for utun0, utun1, utun2, utun3... etc. I found out that PIA saves the PID of openvpn in ~/.pia_manager/log/openvpn.pid so checking for that file is enough to test if PIA is running. Here's my applescript for the icon:

set VPNtest to do shell script "if [[ -e /Users/harry/.pia_manager/log/openvpn.pid ]]; then echo On; else echo Off; fi"

return VPNtest

This seems more lightweight and reliable than checking for a bunch of different interfaces. Enjoy!

Oh and obviously you need to swap out my name for the name of your home directory.

1 Like

@harryg - is this still working for you with the new PIA interface? can't seem to get it to work for me and im having the same issue with utun1, utun2, utun3, etc.. so im looking for a simplified way to solve the problem.

I couldn't find a way to do it with the new PIA interface. It doesn't seem to be scriptable. So I've downgraded back to the old one, and I guess I'll just keep using it.

The script harryg posted does work better than the utun1 one I made, so I use that now.

this is what i'm using now. i found it was bouncing between utun1, utun2, and utun3 on reboot, wake, etc.

i dont know the first thing about scripting so it might be crazy redundant, but it works. anyone wants to take a stab at condensing it, be my guest!

-- Requires PIA client. If the toggle is saying PIA is connected/disconnected when it isn't, try change utun2 to utun1. Or run ifconfig in terminal with both PIA connected and disconnected. Have a look for the difference. Sometimes when I reset my Macbook, PIA switches to utun1, and then back after the next reset.


set VPNtest1 to do shell script "ifconfig"
set VPNTunnel1 to "utun1"

if VPNtest1 contains VPNTunnel1 then
	set PIAstatus1 to "On"
else
	set PIAstatus1 to "Off"
	
end if

set VPNtest2 to do shell script "ifconfig"
set VPNTunnel2 to "utun2"
if VPNtest2 contains VPNTunnel2 then
	set PIAstatus2 to "On"
else
	set PIAstatus2 to "Off"
	
end if

set VPNtest3 to do shell script "ifconfig"
set VPNTunnel3 to "utun3"
if VPNtest3 contains VPNTunnel3 then
	set PIAstatus3 to "On"
else
	set PIAstatus3 to "Off"
	
end if

if PIAstatus1 & PIAstatus2 & PIAstatus3 contains "On" then
	return "On"
else
	return "Off"
end if

Sorry for the sudden name change @Doa! There was another “My Preset” by someone else which didn’t work too well :-/