From 20a200bdb73855767daa4d322bb49267151de45d Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Sat, 7 Jan 2023 19:44:44 +0000 Subject: [PATCH 1/2] cask/installer: ensure config_path exists. I encountered this when installing `microsoft-edge`. Perhaps `HOMEBREW_INSTALL_FROM_API` related. --- Library/Homebrew/cask/installer.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/Library/Homebrew/cask/installer.rb b/Library/Homebrew/cask/installer.rb index 5c92615e9e..7a4b2eb76a 100644 --- a/Library/Homebrew/cask/installer.rb +++ b/Library/Homebrew/cask/installer.rb @@ -388,6 +388,7 @@ module Cask end def save_config_file + @cask.config_path.dirname.mkpath @cask.config_path.atomic_write(@cask.config.to_json) end From 3c4f60c604f6b1ae2f2580ea5b80da105d1f4c07 Mon Sep 17 00:00:00 2001 From: Rylan Polster Date: Sun, 8 Jan 2023 02:45:56 -0500 Subject: [PATCH 2/2] Create metadata subdirectory when needed --- Library/Homebrew/cask/installer.rb | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Library/Homebrew/cask/installer.rb b/Library/Homebrew/cask/installer.rb index 7a4b2eb76a..87c481a082 100644 --- a/Library/Homebrew/cask/installer.rb +++ b/Library/Homebrew/cask/installer.rb @@ -377,18 +377,21 @@ module Cask self.class.caveats(@cask) end + def metadata_subdir + @metadata_subdir ||= @cask.metadata_subdir("Casks", timestamp: :now, create: true) + end + def save_caskfile old_savedir = @cask.metadata_timestamped_path return if @cask.source.blank? - savedir = @cask.metadata_subdir("Casks", timestamp: :now, create: true) - (savedir/"#{@cask.token}.rb").write @cask.source + (metadata_subdir/"#{@cask.token}.rb").write @cask.source old_savedir&.rmtree end def save_config_file - @cask.config_path.dirname.mkpath + metadata_subdir @cask.config_path.atomic_write(@cask.config.to_json) end