feat(cask): add emacs-app-nightly-28 cask

This cask provides nightly builds of the "emacs-28" release branch. Once
Emacs 28.x receives a stable release, this cask will be deprecated.
This commit is contained in:
2021-10-23 14:16:45 +01:00
parent 98a70d0cd8
commit 3e37b20a2e
8 changed files with 136 additions and 0 deletions

View File

@@ -21,6 +21,7 @@ cask 'emacs-app-good' do
conflicts_with(
cask: %w[
emacs-app-nightly
emacs-app-nightly-28
emacs-app
emacs
emacs-nightly

View File

@@ -0,0 +1,65 @@
# frozen_string_literal: true
cask 'emacs-app-nightly-28' do
version '2021-10-22.efdffd8.emacs-28'
sha256 'f56ed51454ffa74076d8ea176a9fc00a673c64b092a590e7a8520af4e2fcbc00'
url 'https://github.com/jimeh/emacs-builds/releases/download/Emacs.2021-10-22.efdffd8.emacs-28/Emacs.2021-10-22.efdffd8.emacs-28.macOS-10-15.x86_64.dmg'
name 'Emacs'
desc 'GNU Emacs text editor (nightly build of emacs-28 branch)'
homepage 'https://github.com/jimeh/emacs-builds'
livecheck do
url 'https://github.com/jimeh/emacs-builds.git'
strategy :git do |tags|
tags.map do |tag|
m = /^Emacs\.(\d{4}-\d{2}-\d{2}\.\w+\.emacs-28)$/.match(tag)
next unless m
m[1]
end.compact
end
end
conflicts_with(
cask: %w[
emacs-app
emacs-app-nightly
emacs-app-good
emacs
emacs-nightly
emacs-pretest
emacs-mac
emacs-mac-spacemacs-icon
],
formula: %w[
emacs
emacs-mac
]
)
depends_on macos: '>= :catalina'
depends_on formula: 'gcc'
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

View File

@@ -25,6 +25,7 @@ cask 'emacs-app-nightly' do
conflicts_with(
cask: %w[
emacs-app
emacs-app-nightly-28
emacs-app-good
emacs
emacs-nightly

View File

@@ -25,6 +25,7 @@ cask 'emacs-app' do
conflicts_with(
cask: %w[
emacs-app-nightly
emacs-app-nightly-28
emacs-app-good
emacs
emacs-nightly

View File

@@ -21,6 +21,7 @@ cask 'emacs-app-good' do
conflicts_with(
cask: %w[
emacs-app-nightly
emacs-app-nightly-28
emacs-app
emacs
emacs-nightly

View File

@@ -0,0 +1,65 @@
# frozen_string_literal: true
cask 'emacs-app-nightly-28' do
version '{{ .Version }}'
sha256 '{{ .SHA256 "macOS-10-15" "x86_64" }}'
url '{{ .DownloadURL "macOS-10-15" "x86_64" }}'
name 'Emacs'
desc 'GNU Emacs text editor (nightly build of emacs-28 branch)'
homepage 'https://github.com/jimeh/emacs-builds'
livecheck do
url 'https://github.com/jimeh/emacs-builds.git'
strategy :git do |tags|
tags.map do |tag|
m = /^Emacs\.(\d{4}-\d{2}-\d{2}\.\w+\.emacs-28)$/.match(tag)
next unless m
m[1]
end.compact
end
end
conflicts_with(
cask: %w[
emacs-app
emacs-app-nightly
emacs-app-good
emacs
emacs-nightly
emacs-pretest
emacs-mac
emacs-mac-spacemacs-icon
],
formula: %w[
emacs
emacs-mac
]
)
depends_on macos: '>= :catalina'
depends_on formula: 'gcc'
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

View File

@@ -25,6 +25,7 @@ cask 'emacs-app-nightly' do
conflicts_with(
cask: %w[
emacs-app
emacs-app-nightly-28
emacs-app-good
emacs
emacs-nightly

View File

@@ -25,6 +25,7 @@ cask 'emacs-app' do
conflicts_with(
cask: %w[
emacs-app-nightly
emacs-app-nightly-28
emacs-app-good
emacs
emacs-nightly