Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nix "nightly" build #5979

Merged
merged 3 commits into from
Sep 20, 2024
Merged

Nix "nightly" build #5979

merged 3 commits into from
Sep 20, 2024

Conversation

thomascft
Copy link
Contributor

Summary

I've created an action that does a scheduled build of WezTerm with the Nix flake, and pushes the outputs to a binary cache.

The Problem

I find myself having to build WezTerm from source on occasion when Hyprland releases updates. The version of WezTerm currently in nixpkgs doesn't include various Hyprland/Wayland bugfixes because there hasn't been a release in a while.

My Solution

We can push to a Cachix with a scheduled build of WezTerm using the flake. People can add this binary cache to their configurations to avoid building WezTerm from source if they're using the flake. There's a couple more things that need to be done before this action will work though.

  • Setup https://wezterm.cachix.org (This is a super quick process, and the login is just read email access for your GitHub account.)
  • Generate an auth token for that cache and add it to WezTerm's repo secrets so it can be used in the GitHub action

I've got a working version here https://github.com/thomascft/wezterm-nightly-flake/blob/main/flake.nix. The actions are a touch more complicated because I wanted nightly lockfile updates as well.

Here are some examples of Cachix being used for other projects

I've also added some basic install documentation for Nix/NixOS which can be improved on if you'd like.

Copy link
Owner

@wez wez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this; I've set up a cache and added the auth token to the repo secrets.
I've added a suggestion for the public key portion.
Is there anything else we need for this before I merge?

docs/install/linux.md Outdated Show resolved Hide resolved
@thomascft
Copy link
Contributor Author

Everything looks great. Thanks!

@wez wez merged commit abfc0b4 into wez:main Sep 20, 2024
1 check passed
@wez
Copy link
Owner

wez commented Sep 20, 2024

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants