Open rmtsrc opened 3 years ago
same for macOS Catalina (10.15.7)
HOMEBREW_EDITOR=vim brew edit tmignore
write
class Tmignore < Formula
desc "Exclude development files from Time Machine backups"
homepage "https://github.com/samuelmeuli/tmignore"
url "https://github.com/samuelmeuli/tmignore/releases/download/v1.2.2/tmignore"
sha256 "80a8b0e3e05dc30113b9a4db1997b39fadfabbe2a58fa7f63ac4f757b2de9012"
head "https://github.com/samuelmeuli/tmignore.git"
depends_on :macos => :high_sierra
def install
bin.install "./tmignore"
system "curl", "-L","-o", "#{prefix}/homebrew.tmignore.plist", "https://github.com/samuelmeuli/tmignore/raw/master/homebrew.tmignore.plist"
end
test do
system "#{bin}/tmignore", "version"
end
end
brew install tmignore
brew services start samuelmeuli/tap/tmignore
The above didn’t work for me. Running brew services start samuelmeuli/tap/tmignore
returned the following error:
Error: Formula `tmignore` has not implemented #plist, #service or installed a locatable service file
Adding mv "#{prefix}/homebrew.tmignore.plist", plist_path
(as recommended here) got it working again:
NOTE: This only works after first trying the install script from the previous comment. So the steps are:
brew edit tmignore
- Replace with @cjahv’s script
brew install tmignore
brew edit tmignore
- Add “mv to plist_path” line like below
brew reinstall tmignore
brew services start tmignore
class Tmignore < Formula
desc "Exclude development files from Time Machine backups"
homepage "https://github.com/samuelmeuli/tmignore"
url "https://github.com/samuelmeuli/tmignore/releases/download/v1.2.2/tmignore"
sha256 "80a8b0e3e05dc30113b9a4db1997b39fadfabbe2a58fa7f63ac4f757b2de9012"
head "https://github.com/samuelmeuli/tmignore.git"
depends_on :macos => :high_sierra
def install
bin.install "./tmignore"
system "curl", "-L","-o", "#{prefix}/homebrew.tmignore.plist", "https://github.com/samuelmeuli/tmignore/raw/master/homebrew.tmignore.plist"
mv "#{prefix}/homebrew.tmignore.plist", plist_path
end
test do
system "#{bin}/tmignore", "version"
end
end
This is effective on Mac OS 12.3.1
class Tmignore < Formula
desc "Exclude development files from Time Machine backups"
homepage "https://github.com/samuelmeuli/tmignore"
url "https://github.com/samuelmeuli/tmignore/releases/download/v1.2.2/tmignore"
sha256 "80a8b0e3e05dc30113b9a4db1997b39fadfabbe2a58fa7f63ac4f757b2de9012"
head "https://github.com/samuelmeuli/tmignore.git"
depends_on :macos => :high_sierra
def install
bin.install "./tmignore"
system "curl", "-L","-o", plist_path, "https://github.com/samuelmeuli/tmignore/raw/master/homebrew.tmignore.plist"
end
test do
system "#{bin}/tmignore", "version"
end
end
The above didn’t work for me. Running
brew services start samuelmeuli/tap/tmignore
returned the following error:Error: Formula `tmignore` has not implemented #plist, #service or installed a locatable service file
Adding
mv "#{prefix}/homebrew.tmignore.plist", plist_path
(as recommended here) got it working again:NOTE: This only works after first trying the install script from the previous comment. So the steps are:
brew edit tmignore
- Replace with @cjahv’s script
brew install tmignore
brew edit tmignore
- Add “mv to plist_path” line like below
brew reinstall tmignore
brew services start tmignore
class Tmignore < Formula desc "Exclude development files from Time Machine backups" homepage "https://github.com/samuelmeuli/tmignore" url "https://github.com/samuelmeuli/tmignore/releases/download/v1.2.2/tmignore" sha256 "80a8b0e3e05dc30113b9a4db1997b39fadfabbe2a58fa7f63ac4f757b2de9012" head "https://github.com/samuelmeuli/tmignore.git" depends_on :macos => :high_sierra def install bin.install "./tmignore" system "curl", "-L","-o", "#{prefix}/homebrew.tmignore.plist", "https://github.com/samuelmeuli/tmignore/raw/master/homebrew.tmignore.plist" mv "#{prefix}/homebrew.tmignore.plist", plist_path end test do system "#{bin}/tmignore", "version" end end
thank,it work on Mac OS 12.3.1 Xcode 13.3.1
On Ventura 13.4.1 with Homebrew 4.1.23 I had to slightly modify the script mentioned by elstgav and use launchd_service_path
instead of plist_path
:
class Tmignore < Formula
desc "Exclude development files from Time Machine backups"
homepage "https://github.com/samuelmeuli/tmignore"
url "https://github.com/samuelmeuli/tmignore/releases/download/v1.2.2/tmignore"
sha256 "80a8b0e3e05dc30113b9a4db1997b39fadfabbe2a58fa7f63ac4f757b2de9012"
head "https://github.com/samuelmeuli/tmignore.git"
depends_on :macos => :high_sierra
def install
bin.install "./tmignore"
system "curl", "-L","-o", "#{prefix}/homebrew.tmignore.plist", "https://github.com/samuelmeuli/tmignore/raw/master/homebrew.tmignore.plist"
mv "#{prefix}/homebrew.tmignore.plist", launchd_service_path
end
test do
system "#{bin}/tmignore", "version"
end
end
I found a project that can replace this tool. It has GUI and complete functions. https://github.com/PhotonQuantum/tmexclude
On macOS Big Sur (11.1) the tmignore installation step from the README.md file fails with the following error:
Possibly related to:
Workaround
However, checking out this repo and running
make
manually does correctly buildbin/tmignore
successfully.Setup Xcode
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -license accept
Manually build and Install tmignore
git clone https://github.com/samuelmeuli/tmignore.git && cd tmignore
make
cp bin/tmignore /usr/local/bin/
crontab -l | { cat; echo "0 10 * * * /usr/local/bin/tmignore run &>> /tmp/tmignore.log"; } | crontab -