From b2daed584d6f8b737cc2b500eb19a38d02dbc8a6 Mon Sep 17 00:00:00 2001 From: Markus Reiter Date: Fri, 16 Jun 2017 17:01:30 +0200 Subject: [PATCH] Add support for `uninstall/zap :trash`. --- .../Homebrew/cask/lib/hbc/artifact/uninstall_base.rb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb b/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb index 7dc7723806..96243d201a 100644 --- a/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb +++ b/Library/Homebrew/cask/lib/hbc/artifact/uninstall_base.rb @@ -224,9 +224,14 @@ module Hbc end def uninstall_trash(*paths) - # :trash functionality is stubbed as a synonym for :delete - # TODO: make :trash work differently, moving files to the Trash - uninstall_delete(*paths) + return if paths.empty? + + ohai "Trashing files:" + each_resolved_path(:trash, paths) do |path, resolved_paths| + puts path + resolved_paths.each { |resolved_path| Utils.gain_permissions(resolved_path, ["-R"], @command) } + @command.run!("/usr/bin/xargs", args: ["-0", "--", HOMEBREW_LIBRARY_PATH/"utils/trash.swift"], input: resolved_paths.join("\0")) + end end def uninstall_rmdir(*directories)