Hacker News new | past | comments | ask | show | jobs | submit | binaryapparatus's comments login

Found somewhere on stackoverflow many years ago and being my shell banner ever since:

    .-------.
    |  Hi   |
    '-------'
        ^      (\_/)
        '----- (O.o)
               (> <)


I am happy zsa/ergodox ez user for many years and was waiting for something like this from zsa, since moonlander wasn't for my hands. My current ergodox layout doesn't use keys that are removed on voyager, so everything plays perfectly. I can vouch for the zsa product quality, since my ergodox didn't hiccup for many years with lots of typing.

It is hard to explain to people who never tried qmk layers that more keys doesn't mean better keyboard, having proper layers on home row is many times more ergonomic. One of the things that don't click unless you try I guess.


> How does it deal with interrupted backups?

Any new backup is hardlinked against previous in temporary 'in-progress' directory, then renamed to proper name at the end. If backup breaks, new 'saf backup' by default first removes 'in-progress' than starts things again (linking with latest good one) but you can 'saf backup --resume' to try to finish interrupted one. I prefer clean try again (which is the default) but --resume works well too.

> Can it automatically prune backups older than N days?

Yes, manually by 'saf prune' on top of 'saf backup' doing prune itself. Prune periods are defined in each .saf.conf, per backup source location, with the defaults of 2/30/60/730/3650 days, for all/daily/weekly/monthly/yearly backups. All defaults are easy to change per source.

> I don’t see anything about encryption.

saf doesn't deal with encryption, only with transport. I prefer to use other specialized tool for the encryption if I have such backup target that needs one.


With me that's absolutely okay. We all need more choice and HN is a great way to learn about alternatives. Few nice things I borrowed from those two scripts mentioned in readme (credit given) wouldn't be possible without alternatives and open source.


Those same questions always bug me, and I did try all from very smart to very brute force solutions. I love ZFS but then we can question ZFS and OS bugs in the same manner as saf or rsync -- that rabbit hole is deep and quickly becomes expensive since ZFS may need ECC ram and other more expensive components.

Lately, in last few years, I am leaning towards using many cheap backups instead of clever and more expensive ones, with the idea that many of them can't all break at the same time. Yes occasional checks are good but safety in numbers seems as a good strategy.

It is not an accident that saf tag line says "one backup is saf, two are safe, three are safer" ;)


"saf bugs, rsync bugs/misconfiguration"

On top of many cheap backups, I am also trying not to rely on any single peace of technology (I know, it is not ideal that hardware and OS remains the same on any computer no matter what backup is used). If I use saf as my preferred rsync based solution I will also use Borg or duply/duplicity as a additional backup to avoid rsync bugs.

Having two or more rsync based backups, so they all go trough the same rsync pipe, makes much less sense than mixing completely different backup solutions, right?


In my understanding, rsnapshot is equivalent of 'saf backup' which is only one bit of saf functionality. saf has few more commands to be able to see and analyze what's on the backup target side.

rsnapshot uses centralized rsnapshot.conf, saf has git style .saf.conf per each backup source location.

Apart from using rsync, there are more differences than similarities between rshapshot and saf.


Author here. Yes, I am also the one that loves to see alternatives on topic of interest to me on HN. However putting an effort to publish different take on something already 'solved' is either because I want my own solution no matter what (I don't) or because other solutions didn't fully cover all my use cases (they didn't). I would gladly use somebody else code instead of my own, if that was possible.

Two scripts linked at the bottom of README.md are almost perfect and I used one or another for years, but one of them sometimes misses to hard link with previous backup, creating new full backup and wasting resources -- not something that's easy to detect since they all look correct before 'du' or similar analysis.

saf solves few of the problems I faced during the years in a elegant way: multiple targets, target related commands, reliability. Why not XY? Why not saf?


Two+ years in Algarve, with registered activity and paying all the taxes here. Having foreign income all my taxes fall within sweet NHR regime. Can't say anything bad about bureaucracy, with proper lawyer help it is slow-ish but very decent process.

Lease prices are driven by taxes and tourism, short term (AL) accommodation is taxed at 6%, long term lease contracts go from 30% (for 1+ year contracts) down to 10% (for 10+ years contracts). Obviously landlords are pushed into short term accommodation which creates lack of long term offers. Matter of getting taxes more fair over long/short term categories would fix the market immediately.

Quality of life and nice people are above anything else so I wouldn't change a thing from this current setup.


Huge Tridactyl fan here, it works beautifully. I am using it for over a year, ever since I spotted its mention at Suckless 'rocks' page: https://suckless.org/rocks/


> Weight: 67g bottom out if using Panda springs, 100gf bottom out if using Halo True springs

That means they require more force than Model M? Too much I think.


Bottom-out, not actuation.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: