Feek's macOS useful tools, utilities and applications thread

SoundSource 6 is out now. $25 to upgrade if you own the previous version. One of my major apps so paid up straight away.

Looks neat!

I cant tell if it does voice isolation though, like if i want to suppress background music in a playing video to preserve the voice, or when on a video call. It says i can add effects but i cant see what they are. Does anyone know?
 
Just found this. Looks good.

MySQL, PostgreSQL and SQLite database tool. Free and open source.


Edit: Not open source. They seem to be using a funky custom license.

Is it not open source? Their pages and GitHub seems to say so, seems to be AGPL3.
 
Last edited:
Just found this. Open source alternative to CleanMyMac.

Will keep an eye on this as it looks to be a handy app to have to help with MacOS littering.
 
Whats MacOS littering?
Originally Mac apps were self containing, which is great. But apps now have a tendency to dump associated resources and data to userspace (~/Library) and systemspace which get orphaned when removing or "uninstalling" through the usual method, ie - dragging the app to your bin, not so great.
It's in the same vein to Microsoft Windows in that you'll find random registry entries or profile files for an application you uninstalled months or years beforehand.

Sometimes this can be a few kilobytes, like preference files as Feek mentions, other times it can be an app like XCode that dumps a few gigabytes in your ~/Library.

As always, it's each to their own and up to you to determine if it's worth doing but in the 15/16 years of using apps like AppCleaner (https://freemacsoft.net/appcleaner/), i can't say i've had any issue removing orphaned app data.
 
Hey guys... I'm looking for an personal accounting application to replace quicken 2017.
macOS is going to drop rosetta support in the next macOS and it's the only x86 application that I still use and need a replacement.

Application needs to be quick and easy to use; I've just tried manger io and it was a PITA.
local base, no cloud
and be able to handle mulitple accounts including investment accounts.

TIA...
 
Hey guys... I'm looking for an personal accounting application to replace quicken 2017.
macOS is going to drop rosetta support in the next macOS and it's the only x86 application that I still use and need a replacement.

Application needs to be quick and easy to use; I've just tried manger io and it was a PITA.
local base, no cloud
and be able to handle mulitple accounts including investment accounts.

TIA...
So the two that I'm aware of, though I've not personally used as my money strategy is to just spend it within seconds of getting it, are Banktivity & Moneydance...I believe both are Apple Silicon native and are also available via the App Store :)
 
Hey guys... I'm looking for an personal accounting application to replace quicken 2017.
macOS is going to drop rosetta support in the next macOS and it's the only x86 application that I still use and need a replacement.

Application needs to be quick and easy to use; I've just tried manger io and it was a PITA.
local base, no cloud
and be able to handle mulitple accounts including investment accounts.

TIA...
You could try GNU Cash. It is free and open source.

 
Originally Mac apps were self containing, which is great. But apps now have a tendency to dump associated resources and data to userspace (~/Library) and systemspace which get orphaned when removing or "uninstalling" through the usual method, ie - dragging the app to your bin, not so great.
It's in the same vein to Microsoft Windows in that you'll find random registry entries or profile files for an application you uninstalled months or years beforehand.

Sometimes this can be a few kilobytes, like preference files as Feek mentions, other times it can be an app like XCode that dumps a few gigabytes in your ~/Library.

As always, it's each to their own and up to you to determine if it's worth doing but in the 15/16 years of using apps like AppCleaner (https://freemacsoft.net/appcleaner/), i can't say i've had any issue removing orphaned app data.

xcode has a clear cache feature.. If needed you can use fsmonitor to track what files an app uses or put on, it's main purpose is for repackaging apps or troubleshooting.

Personally I've never needed to be that bothered about orphaned files.. heck you can pretty much dump your whole profile and create a new one and start from day zero.
I guess I'm lucky as I have test devices but if your the kinda person that likes to try stuff, why not create a test profile before using the app on your main one... and ditch and recreate that once in a while.
 
Two little utilities which I use regularly. These should be part of the OS.

us2date and date2us

The first converts convert UNIX seconds to UTC ISO date and the second converts ISO date to UNIX seconds.

Code:
#!/usr/bin/perl
# convert UNIX seconds to UTC ISO date, either command line args or first col of stdin.
# value also be sum eg 1688865975+414251

use strict;
use warnings;

if (@ARGV == 0) {
    while(<>) {
        my @f = split;
        &prUNIX($f[0]) if (@f > 0);
    }
} elsif ($ARGV[0] =~ m/^-/) {
    &usage();
} else {
    foreach my $us (@ARGV) {
        &prUNIX($us);
    }
}

exit 0;



sub usage
{
    $0 =~ s:.*/::;
    print STDERR "Purpose: convert UNIX seconds to UTC date YYYY-MM-DDTHH:MM:SS\n";
    print STDERR "Usage: $0 [secs ...] [secs+more ...]\n";
    print STDERR "Convert args else first col of stdin\n";
    exit 1
}

sub prUNIX
{
    my $us = shift;
    if (index($us,'+') > 0) {
        my @f = split ('\+', $us);
        die "bad + usage: $us\n" unless (@f == 2);
        $us = $f[0] + $f[1];
    }
    my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($us);
    printf "%4d-%02d-%02dT%02d:%02d:%02d\n", $year+=1900, $mon+1, $mday, $hour, $min, $sec;
}


Code:
#!/usr/bin/perl
# convert ISO date to UNIX seconds, from args else stdin

use strict;
use warnings;
use POSIX qw(mktime);

$ENV{TZ}="UTC0";

# convert args else stdin
if (@ARGV > 0) {
    &usage() if ($ARGV[0] =~ m/^-/);
    while (@ARGV > 0) {
        &convert (shift);
    }
} else {
    while(<>) {
        &convert ($_);
    }
}

sub convert
{
    my $date = shift;
    my ($yr, $mo, $dy, $hr, $mn, $sc) =
                ($date =~ m/^(\d{4})[\/-](\d{2})[\/-](\d{2})T?(\d{2})?:?(\d{2})?:?(\d{2})?$/);
    die "$date bad format\n" unless (defined($dy));
    $hr = $hr // 0;
    $mn = $mn // 0;
    $sc = $sc // 0;
    printf "%d\n", mktime ($sc, $mn, $hr, $dy, $mo-1, $yr-1900, -1, -1, -1);
}

sub usage
{
    $0 =~ s:.*/::;
    print STDERR "Purpose: convert UTC ISO date to UNIX seconds from args else stdin\n";
    print STDERR "Usage: $0 [YYYY-MM-DD[THH:MM:SS] ... ]\n";
    exit 1
}



Save each one with the corresponding filename in /usr/local/bin, make them executable with chmod +x and you can call them from anywhere in the terminal.

Code:
feek@shackbookairm2 ~ % us2date 959468542
2000-05-27T23:02:22
feek@shackbookairm2 ~ % date2us 2026-05-04T04:14:20
1777868060
feek@shackbookairm2 ~ %
 
Back
Top Bottom