104 Commits

Author SHA1 Message Date
Mitchell Hashimoto
b222cf33bd ci: swap magic-nix-cache with cachix
Cachix doesn't have rate limit issues like GitHub Actions does and I'd
love to support the Nix community. Plus, I have experience with Cachix
before and they've been so great.
2023-12-22 14:36:28 -08:00
Mitchell Hashimoto
98abf0d186 ci: build-nix depends on test like other package builds 2023-12-22 14:29:37 -08:00
Mitchell Hashimoto
18ada8d118 ci: move nix build to dedicated job 2023-12-22 14:20:27 -08:00
Jeffrey C. Ollie
d8e1aebfcd enable magic nix cache to improve build times 2023-12-22 14:28:27 -06:00
Jeffrey C. Ollie
a995b6dbb0 fix nix package and add ci test for nix package build 2023-12-22 13:43:06 -06:00
Mitchell Hashimoto
d1b90e1689 ci: uncomment the release-to-github code 2023-12-19 09:38:02 -08:00
Mitchell Hashimoto
8218c96cc6 ci: manually codesign since --deep is deprecated 2023-12-19 08:04:21 -08:00
Mitchell Hashimoto
79416cc0a7 ci: codesign nested frameworks 2023-12-18 22:45:22 -08:00
Mitchell Hashimoto
b5aaad9d34 ci: correct filename for appcast 2023-12-18 21:32:22 -08:00
Mitchell Hashimoto
3baa6213b0 ci: disable releases temporarily 2023-12-18 21:25:26 -08:00
Mitchell Hashimoto
c352d88afd ci: generate appcast, upload it 2023-12-18 21:18:52 -08:00
Mitchell Hashimoto
51fa5ea3d4 ci: setup sparkle binaries in release 2023-12-18 20:18:46 -08:00
Mitchell Hashimoto
68a23e786d macos: put build numbers back into info.plist, other metadata
This adds more metadata back into the Info.plist for a build. This
metadata is used with the About window. The reason I want the build
number back is so that we have a monotonically increasing number to do
self-updating with (i.e. Sparkle).
2023-12-18 18:56:34 -08:00
Jeffrey C. Ollie
c4ed1f1b80 Use Alejandra to format Nix modules. 2023-12-12 11:38:39 -06:00
Mitchell Hashimoto
f12371ec1c Revert "Revert "ci: use Cirrus macOS VMs (#985)""
This reverts commit 7022fe86d52bece810a4b15354dc693cc1483ae1.
2023-12-04 11:01:19 -08:00
Mitchell Hashimoto
7022fe86d5 Revert "ci: use Cirrus macOS VMs (#985)"
This reverts commit 0da12bd10eb81090d9b6ed919befd7bdd37caf6d.

Secret access failed, we'll add this back once that is fixed.
2023-12-03 21:18:26 -08:00
Mitchell Hashimoto
0da12bd10e ci: use Cirrus macOS VMs (#985) 2023-12-03 20:46:01 -08:00
dependabot[bot]
191c4a061a build(deps): bump cachix/install-nix-action from 23 to 24
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 23 to 24.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v23...v24)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-29 00:46:10 +00:00
Chris Marchesi
47c249cc30 workflows: disable nix build job
Unfortunately building LLVM/Zig is much too slow on default GHA, so we
will need to keep this off until we don't need to do that.
2023-11-25 10:55:44 -08:00
Chris Marchesi
c3b44020f4 nix: add GitHub Actions workflow
This adds a nix workflow that does the following:

* Checks to see if the Zig cache fixed derivation needs its hash
  updated. It does this by downloading a new cache, calculating the
  hash, and comparing it against what has already been set. If the hash
  is different, the workflow fails.
* Runs a Nix build if the hash is OK, testing the build of
  packages.ghostty (using "nix build .")

The cache workflow we use in the build job comes from:
  https://github.com/DeterminateSystems/magic-nix-cache-action/

Fixes #937.
2023-11-24 17:07:55 -08:00
Mitchell Hashimoto
76353415a3 ci: release-tip only works on this repository 2023-11-14 08:41:59 -08:00
Mitchell Hashimoto
a864bfdd1d ci: style 2023-11-05 18:09:51 -08:00
Mitchell Hashimoto
59a3e22d39 ci: enable windows cross-compile build 2023-11-05 18:04:30 -08:00
hanna
3bee252389 Correct the option on the ci workflow 2023-11-02 22:05:28 -07:00
hanna
5a161719cc Update gtk build test to use libadwaita 2023-11-02 21:58:56 -07:00
Gregory Anders
72f754c6cf macos: use commit hash in version info instead of build number
Using the "build number" (i.e. the commit number) did not seem to work
correctly anyway (it always showed '1' for releases built in CI).
Presumably this is because GitHub performs a shallow clone so it does
not have full access to the Git history.

Instead of the build number, use the Git commit hash of HEAD, which
works even for shallow clones and is more useful for debugging.
2023-10-23 07:43:55 -05:00
Mitchell Hashimoto
b0f95263fc ci: don't specify -gnu on test triple 2023-10-17 13:07:18 -07:00
Mitchell Hashimoto
c708b5a384 ci: do not checkout submodules, because none exist 2023-10-07 14:53:17 -07:00
Mitchell Hashimoto
7f3c2fa375 prettier 2023-10-01 19:00:23 -07:00
Mitchell Hashimoto
6fb08f8a0f ci: remove tests for macos cross-compile 2023-10-01 18:55:15 -07:00
Curt Bushko
71d14f5dff create script and dump logs 2023-09-29 10:41:28 -04:00
Curt Bushko
54bbcd875a run prettier 2023-09-29 00:54:19 -04:00
Curt Bushko
837afab98f inital windows build support 2023-09-29 00:43:01 -04:00
Mitchell Hashimoto
779611c04b nix: install prettier, also ignore zig-cache/out 2023-09-28 15:16:12 -07:00
Patrick Fong
1cb6b50331 add Prettier step to check formatting 2023-09-28 10:56:53 -07:00
Patrick Fong
9d2a85d9cd lint all Yaml files 2023-09-28 10:42:38 -07:00
Mitchell Hashimoto
90b5fdeede ci: don't run gtk tests in CI 2023-09-18 15:46:57 -07:00
Mitchell Hashimoto
d94cf2f124 remove flatpak
Flatpak support has been a HUGE pain to keep working, the builds take
forever and cost me real money, and there are very few users. Ideally,
we want to just use native system packagers for each distro. I thought
Flatpak would make it easy to support many distros but that ended up
being false.
2023-09-13 11:41:16 -07:00
dependabot[bot]
d9cce27ab9 build(deps): bump docker/setup-qemu-action from 2 to 3
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 2 to 3.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-13 00:18:51 +00:00
Mitchell Hashimoto
f9eaab21a1 ci: upload tip releases to blob storage 2023-09-12 09:22:47 -07:00
Mitchell Hashimoto
342df1e994 Merge pull request #407 from mitchellh/dependabot/github_actions/cachix/install-nix-action-23
build(deps): bump cachix/install-nix-action from 22 to 23
2023-09-06 10:21:06 -07:00
dependabot[bot]
af36a49148 build(deps): bump cachix/install-nix-action from 22 to 23
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 22 to 23.
- [Release notes](https://github.com/cachix/install-nix-action/releases)
- [Commits](https://github.com/cachix/install-nix-action/compare/v22...v23)

---
updated-dependencies:
- dependency-name: cachix/install-nix-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-05 00:35:08 +00:00
dependabot[bot]
025fffbcfd build(deps): bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-05 00:35:05 +00:00
Mitchell Hashimoto
7c6bbae6a6 ci: disable wasm build for now 2023-08-23 11:45:46 -07:00
Mitchell Hashimoto
68a9110d8e build: make glfw opt-in on all platforms, default to GTK on Linux
The GLFW build has grown farther and farther in feature parity with GTK
on Linux. And on macOS, the GLFW build has been unstable (crashes) for
months.

I still find the GLFW build useful for testing some core terminal work,
but it is increasingly user-hostile in case someone just downloads the
project and does a `zig build`.

I keep GLFW as up to date as I can, but the features that are missing
are due to fundamental limitations:

  - GLFW has no tabs, splits, etc. because it has no UI elements.
    I am not interested in painting UI widgets from scratch.

  - GLFW cannot support keyboard layouts robustly because it has no
    hooks to detect keyboard layouts or functions to get keymaps.

  - GLFW cannot support the Kitty keyboard protocol because the
    key/char API is too high level and it provides no low-level
    alternatives.

  - GLFW crashes on macOS under certain scenarios (this is my problem).
    I'm not interested in fixing it because the AppKit-based build
    is highly recommended.

To build or run the GLFW build you must now explicitly pass in
`-Dapp-runtime=glfw` to `zig build`.
2023-08-17 16:27:03 -07:00
Mitchell Hashimoto
923df53825 ci: use custom token for release so it isn't rate limited 2023-08-12 11:41:22 -07:00
Mitchell Hashimoto
a74a38b9de ci: release process must preserve symlinks
The code signature on mac builds uses the symlink so we have to preserve
it
2023-06-25 09:40:15 -07:00
Mitchell Hashimoto
f9978e8524 build: Copy terminfo resources from xcodeproj
This should fix #158. Instead of manually copying the resources, we
create a relative dependency from the xcodeproj directly so that
xcodebuild should handle this for us.
2023-06-25 09:09:23 -07:00
Mitchell Hashimoto
629f8f93d6 ci: during release builds, copy terminfo db into mac app bundle 2023-06-24 11:50:17 -07:00
Mitchell Hashimoto
0044776700 update cachix action for macos 12 2023-06-17 13:59:44 -07:00