mirror of
https://github.com/jimeh/emacs-builds.git
synced 2026-02-19 13:06:40 +00:00
Compare commits
11 Commits
Emacs.2025
...
Emacs-30.2
| Author | SHA1 | Date | |
|---|---|---|---|
|
1878f3bac6
|
|||
|
fb2956c35c
|
|||
|
97721f45df
|
|||
|
4142f78ed1
|
|||
|
0bdcc26ff7
|
|||
|
f77bef8017
|
|||
|
2304c38620
|
|||
| d8ad016739 | |||
|
b8192fb788
|
|||
|
51fba0905b
|
|||
|
f73c57be55
|
6
.github/workflows/_build.yml
vendored
6
.github/workflows/_build.yml
vendored
@@ -20,6 +20,10 @@ on:
|
||||
required: false
|
||||
default: ""
|
||||
type: string
|
||||
build_variant:
|
||||
description: "Optional build number used as version suffix"
|
||||
required: false
|
||||
type: string
|
||||
test_build_name:
|
||||
description: "Test build name"
|
||||
required: false
|
||||
@@ -65,6 +69,7 @@ jobs:
|
||||
git_ref: ${{ inputs.git_ref }}
|
||||
git_sha: ${{ inputs.git_sha }}
|
||||
build_args: ${{ inputs.builder_args }}
|
||||
build_variant: ${{ inputs.build_variant }}
|
||||
test_build_name: ${{ inputs.test_build_name }}
|
||||
test_release_type: ${{ inputs.test_release_type }}
|
||||
secrets: inherit
|
||||
@@ -104,6 +109,7 @@ jobs:
|
||||
git_ref: ${{ inputs.git_ref }}
|
||||
git_sha: ${{ inputs.git_sha }}
|
||||
build_args: ${{ inputs.builder_args }}
|
||||
build_variant: ${{ inputs.build_variant }}
|
||||
test_build_name: ${{ inputs.test_build_name }}
|
||||
test_release_type: ${{ inputs.test_release_type }}
|
||||
secrets: inherit
|
||||
|
||||
21
.github/workflows/_build_emacs.yml
vendored
21
.github/workflows/_build_emacs.yml
vendored
@@ -34,6 +34,10 @@ on:
|
||||
description: Custom arguments passed to build script
|
||||
type: string
|
||||
required: false
|
||||
build_variant:
|
||||
description: "Optional build number used as version suffix"
|
||||
type: string
|
||||
required: false
|
||||
test_build_name:
|
||||
description: "Test build name"
|
||||
type: string
|
||||
@@ -66,8 +70,8 @@ jobs:
|
||||
path: bin
|
||||
- name: Ensure emacs-builder is executable
|
||||
run: chmod +x bin/emacs-builder
|
||||
- uses: nixbuild/nix-quick-install-action@v29
|
||||
- uses: nix-community/cache-nix-action@v5
|
||||
- uses: nixbuild/nix-quick-install-action@v32
|
||||
- uses: nix-community/cache-nix-action@v6
|
||||
with:
|
||||
primary-key: nix-${{ runner.arch }}-${{ hashFiles('**/flake.*') }}
|
||||
- name: Install dependencies
|
||||
@@ -77,6 +81,11 @@ jobs:
|
||||
if: inputs.test_build_name != ''
|
||||
run: >-
|
||||
echo "args=--test-build '${{ inputs.test_build_name }}' --test-release-type '${{ inputs.test_release_type }}'" >> "$GITHUB_OUTPUT"
|
||||
- name: Prepare build variant args
|
||||
id: build_variant_args
|
||||
if: inputs.build_variant != ''
|
||||
run: >-
|
||||
echo "args=--build-variant ${{ inputs.build_variant }}" >> "$GITHUB_OUTPUT"
|
||||
- name: Set git SHA override
|
||||
id: emacs_sha
|
||||
if: inputs.git_sha != ''
|
||||
@@ -87,6 +96,7 @@ jobs:
|
||||
nix develop --command
|
||||
bin/emacs-builder -l debug plan --output build-plan.yml
|
||||
--output-dir '${{ github.workspace }}/builds'
|
||||
${{ steps.build_variant_args.outputs.args }}
|
||||
${{ steps.test_plan_args.outputs.args }}
|
||||
${{ steps.emacs_sha.outputs.sha }}
|
||||
'${{ inputs.git_ref }}'
|
||||
@@ -122,8 +132,8 @@ jobs:
|
||||
repository: jimeh/build-emacs-for-macos
|
||||
ref: ${{ inputs.builder_ref }}
|
||||
path: builder
|
||||
- uses: nixbuild/nix-quick-install-action@v29
|
||||
- uses: nix-community/cache-nix-action@v5
|
||||
- uses: nixbuild/nix-quick-install-action@v32
|
||||
- uses: nix-community/cache-nix-action@v6
|
||||
with:
|
||||
primary-key: nix-${{ runner.arch }}-${{ hashFiles('**/flake.*') }}
|
||||
- name: Download build-plan artifact
|
||||
@@ -148,6 +158,9 @@ jobs:
|
||||
--plan build-plan.yml
|
||||
--native-full-aot
|
||||
--no-self-sign
|
||||
--icon-uri 'https://github.com/jimeh/emacs-liquid-glass-icons/releases/download/v1.0.1/EmacsLG1-Default.icns'
|
||||
--tahoe-icon-uri 'https://github.com/jimeh/emacs-liquid-glass-icons/releases/download/v1.0.1/Assets.car'
|
||||
--tahoe-icon-name EmacsLG1
|
||||
${{ inputs.build_args }}
|
||||
working-directory: builder
|
||||
env:
|
||||
|
||||
2
.github/workflows/_prepare.yml
vendored
2
.github/workflows/_prepare.yml
vendored
@@ -26,7 +26,7 @@ jobs:
|
||||
- name: Default git ref check
|
||||
id: ref
|
||||
run: |
|
||||
DEFAULT_BUILDER_REF="v0.6.57"
|
||||
DEFAULT_BUILDER_REF="v0.6.63"
|
||||
BUILDER_REF="${{ inputs.builder_ref }}"
|
||||
echo "ref=${BUILDER_REF:-$DEFAULT_BUILDER_REF}" >> "$GITHUB_OUTPUT"
|
||||
- name: Checkout build-emacs-for-macos repo
|
||||
|
||||
4
.github/workflows/_release.yml
vendored
4
.github/workflows/_release.yml
vendored
@@ -49,11 +49,11 @@ jobs:
|
||||
name: ${{ inputs.dmg_artifact }}
|
||||
path: builds
|
||||
- name: Publish disk images to a GitHub Release
|
||||
if: steps.dmg.outputs.result != 'fail'
|
||||
if: steps.dmg.outcome != 'failure'
|
||||
run: >-
|
||||
bin/emacs-builder -l debug release --plan build-plan.yml publish
|
||||
$(find builds -name '*.dmg' -or -name '*.sha256')
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: echo 'No DMG artifact available, was there a new commit to build?'
|
||||
if: steps.dmg.outputs.result == 'fail'
|
||||
if: steps.dmg.outcome == 'failure'
|
||||
|
||||
5
.github/workflows/build.yml
vendored
5
.github/workflows/build.yml
vendored
@@ -26,6 +26,10 @@ on:
|
||||
description: "prerelease or draft"
|
||||
required: false
|
||||
default: ""
|
||||
build_variant:
|
||||
description: "Optional build number used as version suffix"
|
||||
required: false
|
||||
type: string
|
||||
x86_64:
|
||||
description: "Build x86_64 version of Emacs"
|
||||
required: false
|
||||
@@ -46,6 +50,7 @@ jobs:
|
||||
git_sha: ${{ inputs.git_sha }}
|
||||
builder_ref: ${{ inputs.builder_ref }}
|
||||
builder_args: ${{ inputs.builder_args }}
|
||||
build_variant: ${{ inputs.build_variant }}
|
||||
test_build_name: ${{ inputs.test_build_name }}
|
||||
test_release_type: ${{ inputs.test_release_type }}
|
||||
x86_64: ${{ inputs.x86_64 }}
|
||||
|
||||
93
README.md
93
README.md
@@ -1,27 +1,21 @@
|
||||
<p align="center">
|
||||
<img width="192px" src="https://github.com/emacs-mirror/emacs/raw/emacs-27.2/etc/images/icons/hicolor/scalable/apps/emacs.svg" alt="Logo">
|
||||
</p>
|
||||
<div align="center">
|
||||
|
||||
<h1 align="center">
|
||||
Emacs Builds
|
||||
</h1>
|
||||
<img width="196px" src="https://raw.githubusercontent.com/jimeh/emacs-liquid-glass-icons/main/Icons/Exports/EmacsLG1-Default.iconset/icon_512x512.png" alt="Logo">
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/jimeh/emacs-builds/releases/latest"><img alt="GitHub release (stable)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app%2Fshield.json"></a>
|
||||
<a href="https://github.com/jimeh/emacs-builds/releases?q=pretest&expanded=true"><img alt="GitHub release (pretest)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-pretest%2Fshield.json"></a>
|
||||
<a href="https://github.com/jimeh/emacs-builds/releases?q=master&expanded=true"><img alt="GitHub release (nightly)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-nightly%2Fshield.json"></a>
|
||||
<a href="https://github.com/jimeh/emacs-builds/releases?q=master&expanded=true"><img alt="GitHub release (monthly)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-monthly%2Fshield.json"></a>
|
||||
<a href="https://github.com/jimeh/emacs-builds/issues/7"><img alt="GitHub release (known good nightly)" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Fhomebrew-emacs-builds%2Fmeta%2FCasks%2Femacs-app-good%2Fshield.json"></a>
|
||||
<a href="https://github.com/jimeh/emacs-builds/issues"><img alt="GitHub issues" src="https://img.shields.io/github/issues-raw/jimeh/emacs-builds?style=flat&logo=github&logoColor=white"></a>
|
||||
<a href="https://github.com/jimeh/emacs-builds/pulls"><img alt="GitHub pull requests" src="https://img.shields.io/github/issues-pr-raw/jimeh/emacs-builds?style=flat&logo=github&logoColor=white"></a>
|
||||
<a href="https://github.com/jimeh/emacs-builds/releases"><img alt="GitHub all releases" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjimeh%2Femacs-builds%2Fmeta%2Ftotal-downloads%2Fshield.json"></a>
|
||||
</p>
|
||||
# Emacs Builds
|
||||
|
||||
<p align="center">
|
||||
<strong>
|
||||
Self-contained Emacs.app builds for macOS, with native-compilation support.
|
||||
</strong>
|
||||
</p>
|
||||
[](https://github.com/jimeh/emacs-builds/releases/latest)
|
||||
[](https://github.com/jimeh/emacs-builds/releases?q=pretest&expanded=true)
|
||||
[](https://github.com/jimeh/emacs-builds/releases?q=master&expanded=true)
|
||||
[](https://github.com/jimeh/emacs-builds/releases?q=master&expanded=true)
|
||||
[](https://github.com/jimeh/emacs-builds/issues/7)
|
||||
[](https://github.com/jimeh/emacs-builds/issues)
|
||||
[](https://github.com/jimeh/emacs-builds/pulls)
|
||||
[](https://github.com/jimeh/emacs-builds/releases)
|
||||
|
||||
**Self-contained Emacs.app builds for macOS, with native-compilation support.**
|
||||
|
||||
</div>
|
||||
|
||||
## Features
|
||||
|
||||
@@ -82,37 +76,32 @@ for at least a day or two without any obvious issues.
|
||||
|
||||
### Homebrew Cask
|
||||
|
||||
1. Install the
|
||||
[`jimeh/emacs-builds`](https://github.com/jimeh/homebrew-emacs-builds)
|
||||
Homebrew tap:
|
||||
```
|
||||
brew tap jimeh/emacs-builds
|
||||
```
|
||||
2. Install one of the available casks:
|
||||
- `emacs-app` — Latest stable release of Emacs.
|
||||
```
|
||||
brew install --cask emacs-app
|
||||
```
|
||||
- `emacs-app-pretest` — Latest pretest build of Emacs.
|
||||
```
|
||||
brew install --cask emacs-app-pretest
|
||||
```
|
||||
- `emacs-app-nightly` — Build of Emacs from the `master` branch, updated
|
||||
every night.
|
||||
```
|
||||
brew install --cask emacs-app-nightly
|
||||
```
|
||||
- `emacs-app-monthly` — Build of Emacs from the `master` branch, updated on
|
||||
the 1st of each month. These includes native Apple Silicon support.
|
||||
```
|
||||
brew install --cask emacs-app-monthly
|
||||
```
|
||||
- `emacs-app-good` for the latest known good nightly build listed on [#7][7]:
|
||||
```
|
||||
brew install --cask emacs-app-good
|
||||
```
|
||||
The [`jimeh/emacs-builds`](https://github.com/jimeh/homebrew-emacs-builds)
|
||||
Homebrew Tap provides the following casks:
|
||||
|
||||
[7]: https://github.com/jimeh/emacs-builds/issues/7
|
||||
- `jimeh/emacs-builds/emacs-app` — Latest stable release of Emacs.
|
||||
```bash
|
||||
brew install --cask jimeh/emacs-builds/emacs-app
|
||||
```
|
||||
- `jimeh/emacs-builds/emacs-app-pretest` — Latest pretest build of Emacs.
|
||||
```bash
|
||||
brew install --cask jimeh/emacs-builds/emacs-app-pretest
|
||||
```
|
||||
- `jimeh/emacs-builds/emacs-app-nightly` — Build of Emacs from the `master`
|
||||
branch, updated every night.
|
||||
```bash
|
||||
brew install --cask jimeh/emacs-builds/emacs-app-nightly
|
||||
```
|
||||
- `jimeh/emacs-builds/emacs-app-monthly` — Build of Emacs from the `master`
|
||||
branch, updated on the 1st of each month.
|
||||
```bash
|
||||
brew install --cask jimeh/emacs-builds/emacs-app-monthly
|
||||
```
|
||||
- `jimeh/emacs-builds/emacs-app-good` for the latest known good nightly build
|
||||
listed on [#7][7]:
|
||||
```bash
|
||||
brew install --cask jimeh/emacs-builds/emacs-app-good
|
||||
```
|
||||
|
||||
## Apple Silicon
|
||||
|
||||
@@ -192,8 +181,6 @@ All builds also come with a SHA256 checksum file, which itself can be double
|
||||
checked against the SHA256 checksum log output from the packaging step of the
|
||||
GitHub Actions workflow run which produced the build.
|
||||
|
||||
[emacs-mirror/emacs]: https://github.com/emacs-mirror/emacs
|
||||
|
||||
## Issues / To-Do
|
||||
|
||||
Please see [Issues][] for details of things to come, or to report issues.
|
||||
|
||||
Reference in New Issue
Block a user