powerful but friendly backup program that runs in your tray, powered by restic devins.page/restray
go restic system-tray
2

Configure Feed

Select the types of activity you want to include in your feed.

chore: mention build artifacts in readme

intergrav (Jun 28, 2026, 6:48 AM EDT) 62ae475d 237abfc6

+15 -11
+8 -4
README.md
··· 30 30 - Full Disk Access detection and prompt on macOS 31 31 - Config file hot-reloading 32 32 33 - ## Building 33 + ## Installation 34 34 35 - I'm not distributing Restray yet, but if you're on [Nix/NixOS](https://nixos.org)/nix-darwin, just run `nix build` and see `result`, or add this repo to your flake and install the package :) 35 + Check this repository's [tags](https://tangled.org/devins.page/restray/tags) for build artifacts. I currently build+package for MacOS/Windows and build for Linux. 36 36 37 - If you don't have Nix, install the dependencies from `flake.nix`'s devshell and use `just build` or `just package` to build/package for your current platform. You can also cross-compile to other platforms, for example `just build linux amd64` or `just package windows`. 37 + On MacOS you will need to [disable Gatekeeper/remove quarantine](https://disable-gatekeeper.github.io) from the `.app` as I cannot pay Apple $100 a year to get my app signed. Sorry. 38 38 39 - Disclaimer: I've only tested the Linux build on Fedora Workstation so far.. not sure if it works on NixOS or other distributions yet. If someone can let me know that'd be great. 39 + ## Compiling 40 + 41 + If you're on [Nix(OS)](https://nixos.org)/nix-darwin, just run `nix build`. Or add this repo to your flake and install the package :) 42 + 43 + If you aren't using Nix, install the dependencies from `flake.nix`'s devshell and use `just build` or `just package` to build/package for your current platform. You can also cross-compile to other platforms, for example `just build linux amd64` or `just package windows`. 40 44 41 45 ## Configuration 42 46
+7 -7
justfile
··· 57 57 darwin) 58 58 export CGO_CFLAGS="-mmacosx-version-min=11.0" 59 59 export CGO_LDFLAGS="-mmacosx-version-min=11.0" 60 - GOOS=darwin GOARCH=$arch go build -o {{bin}}/{{app}}-darwin-$arch . ;; 60 + GOOS=darwin GOARCH=$arch go build -o {{bin}}/{{app}}-{{version}}-darwin-$arch . ;; 61 61 linux) 62 62 CGO_ENABLED=1 CC="zig cc -target ${za}-linux-gnu" \ 63 - GOOS=linux GOARCH=$arch go build -o {{bin}}/{{app}}-linux-$arch . ;; 63 + GOOS=linux GOARCH=$arch go build -o {{bin}}/{{app}}-{{version}}-linux-$arch . ;; 64 64 windows) 65 65 CGO_ENABLED=1 CC="zig cc -target ${za}-windows-gnu" \ 66 - GOOS=windows GOARCH=$arch go build -ldflags -H=windowsgui -o {{bin}}/{{app}}-windows-$arch.exe . ;; 66 + GOOS=windows GOARCH=$arch go build -ldflags -H=windowsgui -o {{bin}}/{{app}}-{{version}}-windows-$arch.exe . ;; 67 67 esac 68 68 } 69 69 build_os() { ··· 104 104 _package-darwin arch: 105 105 rm -rf {{dist}}/{{app}}.app 106 106 mkdir -p {{dist}}/{{app}}.app/Contents/MacOS {{dist}}/{{app}}.app/Contents/Resources 107 - cp {{bin}}/{{app}}-darwin-{{arch}} {{dist}}/{{app}}.app/Contents/MacOS/{{app}} 107 + cp {{bin}}/{{app}}-{{version}}-darwin-{{arch}} {{dist}}/{{app}}.app/Contents/MacOS/{{app}} 108 108 cp packaging/darwin/Info.plist {{dist}}/{{app}}.app/Contents/Info.plist 109 109 cp packaging/darwin/restray.icns {{dist}}/{{app}}.app/Contents/Resources/restray.icns 110 110 cd {{dist}} && zip -r {{app}}-{{version}}-darwin-{{arch}}.zip {{app}}.app ··· 112 112 113 113 _package-windows arch: 114 114 mkdir -p {{dist}} 115 - cp {{bin}}/{{app}}-windows-{{arch}}.exe {{bin}}/{{app}}.exe 115 + cp {{bin}}/{{app}}-{{version}}-windows-{{arch}}.exe {{bin}}/{{app}}.exe 116 116 makensis -DARCH={{arch}} packaging/windows/installer.nsi 117 117 rm {{bin}}/{{app}}.exe 118 118 119 119 _package-linux arch: 120 120 mkdir -p {{dist}} 121 121 OUTPUT={{dist}}/{{app}}-{{version}}-linux-{{arch}}.AppImage linuxdeploy \ 122 - --executable={{bin}}/{{app}}-linux-{{arch}} \ 122 + --executable={{bin}}/{{app}}-{{version}}-linux-{{arch}} \ 123 123 --desktop-file=packaging/linux/restray.desktop \ 124 124 --icon-file=packaging/linux/restray.png \ 125 125 --output=appimage 126 126 127 127 run: 128 - just build && {{bin}}/{{app}}-$(go env GOOS)-$(go env GOARCH) 128 + just build && {{bin}}/{{app}}-{{version}}-$(go env GOOS)-$(go env GOARCH) 129 129 130 130 lint: 131 131 goimports -w .