From 2540f3a8eb671ffa3e0174dd79c5f2a4df1d0d21 Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Mon, 20 Nov 2023 09:02:55 +0000 Subject: [PATCH] fix(casks): manually ensure casks are correct again --- Casks/emacs-app-good.rb | 1 + Casks/emacs-app-monthly.rb | 74 ++++++++++++++++++++++++++++++ Casks/emacs-app-nightly-28.rb | 1 + Casks/emacs-app-nightly-29.rb | 1 + Casks/emacs-app-nightly.rb | 23 +++++++--- Casks/emacs-app-pretest.rb | 1 + Casks/emacs-app.rb | 1 + templates/_helpers.tpl | 6 +-- templates/emacs-app-nightly.rb.tpl | 2 +- 9 files changed, 99 insertions(+), 11 deletions(-) create mode 100644 Casks/emacs-app-monthly.rb diff --git a/Casks/emacs-app-good.rb b/Casks/emacs-app-good.rb index 75fb2e9d..e3e2105e 100644 --- a/Casks/emacs-app-good.rb +++ b/Casks/emacs-app-good.rb @@ -21,6 +21,7 @@ cask 'emacs-app-good' do conflicts_with( cask: %w[ emacs-app + emacs-app-monthly emacs-app-nightly emacs-app-nightly-28 emacs-app-nightly-29 diff --git a/Casks/emacs-app-monthly.rb b/Casks/emacs-app-monthly.rb new file mode 100644 index 00000000..2b86d128 --- /dev/null +++ b/Casks/emacs-app-monthly.rb @@ -0,0 +1,74 @@ + +# frozen_string_literal: true + +cask 'emacs-app-monthly' do + name 'Emacs' + desc 'GNU Emacs text editor (monthly build)' + homepage 'https://github.com/jimeh/emacs-builds' + + version '2023-11-19.16ac377.master' + + on_arm do + sha256 '1776a451375a512066b86b0e3018efac8e40f58f0a6109393cd3bc30177d77eb' + url 'https://github.com/jimeh/emacs-builds/releases/download/Emacs.2023-11-19.16ac377.master/Emacs.2023-11-19.16ac377.master.macOS-13.arm64.dmg' + depends_on macos: '>= :ventura' + end + + on_intel do + sha256 'ce34dbbd9f3086e58da234eb7ab24c41896c19c54c8fa87a0cde528950b7e039' + url 'https://github.com/jimeh/emacs-builds/releases/download/Emacs.2023-11-19.16ac377.master/Emacs.2023-11-19.16ac377.master.macOS-12.x86_64.dmg' + depends_on macos: '>= :monterey' + end + + livecheck do + url 'https://github.com/jimeh/emacs-builds.git' + strategy :git do |tags| + tags.map do |tag| + m = /^Emacs\.(\d{4}-\d{2}-01\.\w+\.master)$/.match(tag) + next unless m + + m[1] + end.compact + end + end + + conflicts_with( + cask: %w[ + emacs-app + emacs-app-good + emacs-app-nightly-28 + emacs-app-nightly-29 + emacs-app-pretest + emacs + emacs-nightly + emacs-pretest + emacs-mac + emacs-mac-spacemacs-icon + ], + formula: %w[ + emacs + emacs-mac + ] + ) + + app 'Emacs.app' + binary "#{appdir}/Emacs.app/Contents/MacOS/bin/ebrowse" + binary "#{appdir}/Emacs.app/Contents/MacOS/bin/emacs" + binary "#{appdir}/Emacs.app/Contents/MacOS/bin/emacsclient" + binary "#{appdir}/Emacs.app/Contents/MacOS/bin/etags" + binary "#{appdir}/Emacs.app/Contents/Resources/include/emacs-module.h", + target: "#{HOMEBREW_PREFIX}/include/emacs-module.h" + binary "#{appdir}/Emacs.app/Contents/Resources/site-lisp/subdirs.el", + target: "#{HOMEBREW_PREFIX}/share/emacs/site-lisp/subdirs.el" + + manpage "#{appdir}/Emacs.app/Contents/Resources/man/man1/ebrowse.1.gz" + manpage "#{appdir}/Emacs.app/Contents/Resources/man/man1/emacs.1.gz" + manpage "#{appdir}/Emacs.app/Contents/Resources/man/man1/emacsclient.1.gz" + manpage "#{appdir}/Emacs.app/Contents/Resources/man/man1/etags.1.gz" + + zap trash: [ + '~/Library/Caches/org.gnu.Emacs', + '~/Library/Preferences/org.gnu.Emacs.plist', + '~/Library/Saved Application State/org.gnu.Emacs.savedState' + ] +end diff --git a/Casks/emacs-app-nightly-28.rb b/Casks/emacs-app-nightly-28.rb index 15ad0f5d..8c07736c 100644 --- a/Casks/emacs-app-nightly-28.rb +++ b/Casks/emacs-app-nightly-28.rb @@ -26,6 +26,7 @@ cask 'emacs-app-nightly-28' do cask: %w[ emacs-app emacs-app-good + emacs-app-monthly emacs-app-nightly emacs-app-nightly-29 emacs-app-pretest diff --git a/Casks/emacs-app-nightly-29.rb b/Casks/emacs-app-nightly-29.rb index 55899a88..f16a3657 100644 --- a/Casks/emacs-app-nightly-29.rb +++ b/Casks/emacs-app-nightly-29.rb @@ -26,6 +26,7 @@ cask 'emacs-app-nightly-29' do cask: %w[ emacs-app emacs-app-good + emacs-app-monthly emacs-app-nightly emacs-app-nightly-28 emacs-app-pretest diff --git a/Casks/emacs-app-nightly.rb b/Casks/emacs-app-nightly.rb index b45f7c3e..fc5cfef2 100644 --- a/Casks/emacs-app-nightly.rb +++ b/Casks/emacs-app-nightly.rb @@ -1,15 +1,25 @@ + # frozen_string_literal: true cask 'emacs-app-nightly' do - version '2023-11-19.16ac377.master' - - sha256 '1776a451375a512066b86b0e3018efac8e40f58f0a6109393cd3bc30177d77eb' - url 'https://github.com/jimeh/emacs-builds/releases/download/Emacs.2023-11-19.16ac377.master/Emacs.2023-11-19.16ac377.master.macOS-13.arm64.dmg' - name 'Emacs' desc 'GNU Emacs text editor (nightly build)' homepage 'https://github.com/jimeh/emacs-builds' + version '2023-11-19.16ac377.master' + + on_arm do + sha256 '1776a451375a512066b86b0e3018efac8e40f58f0a6109393cd3bc30177d77eb' + url 'https://github.com/jimeh/emacs-builds/releases/download/Emacs.2023-11-19.16ac377.master/Emacs.2023-11-19.16ac377.master.macOS-13.arm64.dmg' + depends_on macos: '>= :ventura' + end + + on_intel do + sha256 'ce34dbbd9f3086e58da234eb7ab24c41896c19c54c8fa87a0cde528950b7e039' + url 'https://github.com/jimeh/emacs-builds/releases/download/Emacs.2023-11-19.16ac377.master/Emacs.2023-11-19.16ac377.master.macOS-12.x86_64.dmg' + depends_on macos: '>= :monterey' + end + livecheck do url 'https://github.com/jimeh/emacs-builds.git' strategy :git do |tags| @@ -26,6 +36,7 @@ cask 'emacs-app-nightly' do cask: %w[ emacs-app emacs-app-good + emacs-app-monthly emacs-app-nightly-28 emacs-app-nightly-29 emacs-app-pretest @@ -41,8 +52,6 @@ cask 'emacs-app-nightly' do ] ) - depends_on macos: '>= :big_sur' - app 'Emacs.app' binary "#{appdir}/Emacs.app/Contents/MacOS/bin/ebrowse" binary "#{appdir}/Emacs.app/Contents/MacOS/bin/emacs" diff --git a/Casks/emacs-app-pretest.rb b/Casks/emacs-app-pretest.rb index 335ac178..453eeef9 100644 --- a/Casks/emacs-app-pretest.rb +++ b/Casks/emacs-app-pretest.rb @@ -26,6 +26,7 @@ cask 'emacs-app-pretest' do cask: %w[ emacs-app emacs-app-good + emacs-app-monthly emacs-app-nightly emacs-app-nightly-28 emacs-app-nightly-29 diff --git a/Casks/emacs-app.rb b/Casks/emacs-app.rb index a221bfd7..778710e2 100644 --- a/Casks/emacs-app.rb +++ b/Casks/emacs-app.rb @@ -25,6 +25,7 @@ cask 'emacs-app' do conflicts_with( cask: %w[ emacs-app-good + emacs-app-monthly emacs-app-nightly emacs-app-nightly-28 emacs-app-nightly-29 diff --git a/templates/_helpers.tpl b/templates/_helpers.tpl index 780ba177..fa794b13 100644 --- a/templates/_helpers.tpl +++ b/templates/_helpers.tpl @@ -1,8 +1,8 @@ {{ define "sources" -}} {{ $arm64SHA := (.SHA256 "macOS-13" "arm64") -}} {{ $arm64URL := (.DownloadURL "macOS-13" "arm64") -}} -{{ $x86_64SHA := (.SHA256 "macOS-11" "x86_64") -}} -{{ $x86_64URL := (.DownloadURL "macOS-11" "x86_64") -}} +{{ $x86_64SHA := (.SHA256 "macOS-12" "x86_64") -}} +{{ $x86_64URL := (.DownloadURL "macOS-12" "x86_64") -}} {{ if (and (ne $arm64URL "") (ne $x86_64URL "")) }} on_arm do sha256 '{{ $arm64SHA }}' @@ -13,7 +13,7 @@ on_intel do sha256 '{{ $x86_64SHA }}' url '{{ $x86_64URL }}' - depends_on macos: '>= :big_sur' # macOS 11 + depends_on macos: '>= :monterey' end {{- else if ne $arm64URL "" }} sha256 '{{ $arm64SHA }}' diff --git a/templates/emacs-app-nightly.rb.tpl b/templates/emacs-app-nightly.rb.tpl index 18ed2c50..0cded0b0 100644 --- a/templates/emacs-app-nightly.rb.tpl +++ b/templates/emacs-app-nightly.rb.tpl @@ -6,7 +6,7 @@ cask 'emacs-app-nightly' do homepage 'https://github.com/jimeh/emacs-builds' version '{{ .Version }}' -{{ template sources . }} +{{ template "sources" . }} livecheck do url 'https://github.com/jimeh/emacs-builds.git'