Austin Horstman
426b405d97
ci: add validation workflow for maintainers list
...
We need to make sure that we don't insert invalid maintainers otherwise
it breaks the RFC39 invite workflow. Check that we have valid nix and
the required attributes are able to be parsed properly.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 22:25:47 -05:00
Austin Horstman
66de606f48
ci: update all-maintainers on merge
...
We want to update the master list for RFC39 invites on master after a
change is merged in.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 22:25:47 -05:00
Austin Horstman
25f003f8a9
ci: tag maintainers automatically for PR reviews ( #6921 )
...
Want to create an easier way to notify maintainers that someone is
working on their module. Added a workflow for requesting a review from any maintainers that have joined the `home-manager-maintainers` team in the organization.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 14:45:27 -05:00
Austin Horstman
9347c61bc0
ci: use GITHUB_TOKEN when app config missing ( #7374 )
...
Allow testing workflows more on forks when app configuration missing.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 12:17:42 -05:00
Matt Sturgeon
a7820832c6
ci: fix update-maintainers indentation ( #7372 )
...
Fixes a regression from be8f7e100f
2025-07-02 11:44:16 -05:00
Matt Sturgeon
bafcf33687
ci: use env in update-maintainers changes summary
...
Use env variables in the changes summary, to avoid string escape issues
with injecting template strings directly into the script.
2025-07-02 11:25:16 -05:00
Matt Sturgeon
be8f7e100f
ci: move update-maintainers commit/pr to env
...
Define the commit & PR title and body in env variables to make the
script itself more readable and avoid any string escape issues.
2025-07-02 11:25:16 -05:00
Matt Sturgeon
7241b18a7b
ci: make update-maintainers check-changes multiline
...
Use yaml's multiline string syntax for check-changes's run script.
2025-07-02 11:25:16 -05:00
Austin Horstman
3d243d4a16
ci: fix which branch to show on pr ( #7368 )
...
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 08:45:36 -05:00
Austin Horstman
77027882a7
ci: prefix flake update prs ( #7366 )
...
Make it easier to distinguish which flake.lock update a pr is for.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 08:41:10 -05:00
Austin Horstman
4bd4634525
ci: fix update-flake branch inputs ( #7345 )
...
Help with allowing multiple Prs from actions to different branches.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 08:25:53 -05:00
Austin Horstman
29d717aab5
ci: tests fetch nixpkgs from flake.lock rev
...
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 23:03:57 -05:00
Austin Horstman
212f4a4fb2
ci: update-maintainers fetch nixpkgs from flake.lock rev
...
We need a nixpkgs on NIX_PATH. Right now we have been using the latest
from channel. But, we can actually just fetch the nixpkgs from our
flake.lock by parsing the flake.lock.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 23:03:57 -05:00
Austin Horstman
e96a8a325c
ci: conditional test step runs ( #7358 )
...
Not every PR requires the overhead of spinning up runners and running
our entire test suite. Filter on paths affected and only run the
relevant steps.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 18:11:29 -05:00
Austin Horstman
5d2f3e3e7f
ci: fix update-maintainers reference location ( #7357 )
...
Moved from scripts to lib/python and forgot to update action
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 16:59:53 -05:00
Austin Horstman
77bb9e033b
ci: add update-maintainers.yml
...
Create workflow for updating maintainers list.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 16:30:06 -05:00
Austin Horstman
951f0b30c5
ci: schedule release flake lock updates ( #7325 )
...
Currently only running on the master branch. But, we can schedule on the
release branch, as well.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-24 14:54:56 -05:00
Austin Horstman
05b8c95064
ci: home-manager switch test aginst codebase
...
Right now, we grab the latest home-manager pushed to remote. We need to
test against the code we are pushing out.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-23 09:59:09 -05:00
Austin Horstman
4c9e99e8e8
ci: disable home-manager install tests on darwin
...
nix broken on latest channel update
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-22 23:58:37 -05:00
Austin Horstman
83030f0e4a
ci: labeler issues permission ( #7278 )
...
Should resolve issue with needing to create labels.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-15 18:38:09 -05:00
Austin Horstman
5adc1a51a2
ci: use flake lock for tests
...
Ensure we don't have surprise breakages and can test against a specific
lock file.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-02 22:58:05 -05:00
Matt Sturgeon
6abf27943b
ci: set a more useful update PR body
...
The default body contains instructions for triggering GitHub Actions,
which aren't relevant when pushing the PR as a GitHub App.
2025-06-01 16:03:59 -05:00
Matt Sturgeon
9882f43f9b
ci: switch to a GitHub App
...
This will do actions as a bot user, but will still trigger CI.
Its tokens are short lived, so more secure than a PAT that doesn't
expire.
2025-06-01 16:03:59 -05:00
Austin Horstman
cc8896c321
ci: remove literalExpression step
...
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-05-31 00:01:48 -05:00
Matt Sturgeon
6d09fd37a7
ci: alternative fix for backport if condition ( #7169 )
...
Can't access secrets from if condition, so we'll explicitly check this
isn't a fork.
2025-05-30 20:28:34 -05:00
Austin Horstman
b65126fa71
ci: fix backport if condition ( #7167 )
...
Can't access secrets from if condition.
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-05-30 19:26:52 -05:00
Matt Sturgeon
7c60ea0296
ci: add 'GitHub App' TODO to update workflow
...
Using a GitHub App is more secure and idiomatic than using a
Personal Access Token or SSH Deploy Key.
See https://github.com/peter-evans/create-pull-request/blob/main/docs/concepts-guidelines.md#triggering-further-workflow-runs
and https://github.com/peter-evans/create-pull-request/blob/main/docs/concepts-guidelines.md#authenticating-with-github-app-generated-tokens
2025-05-30 18:40:49 -05:00
Matt Sturgeon
9d2ae59579
ci: add backport workflow
...
Based on the workflow used by nixpkgs and others.
2025-05-30 18:40:49 -05:00
awwpotato
3f591550a9
formatter: remove script, add treefmt.toml + keep-sorted ( #7056 )
...
currently ./format does a bunch of stuff with git that was only necessary for nixfmt but not nixfmt-tree, so I deleted it (just use treefmt command directly instead). I also added keep sorted to keep the really long module lists sorted (already used in nixpkgs).
2025-05-20 12:42:51 -05:00
dependabot[bot]
45c2985644
ci: bump DeterminateSystems/update-flake-lock from 24 to 25 ( #7091 )
...
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock ) from 24 to 25.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases )
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v24...v25 )
---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
dependency-version: '25'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-19 16:07:18 -05:00
Andrew Marshall
708074ae6d
treewide: Prevent IFD by default
...
Import-from-derivation (IFD) has problematic performance, and is disabled in
Nixpkgs by policy. It is arguably good practice for libraries to avoid
it whenever possible, as it has poor ergonomics in some cases,
especially with dry builds, as it requires multiple eval+build phases.
As such, prevent its use in Home Manager by default by putting existing
tests that use IFD behind a config. In CI, run a first pass with IFD
disabled, skipping tests without the config. Then run a second pass with
IFD enabled and including tests with the config. This second pass will
also run tests without the config, but they should be cached from the
previous run, so the cost is not double (only eval time should be paid
twice). It’s necessary to change from using NMT’s `run` to `build` as
`run` itself uses IFD.
Of the tests that have the config:
- kitty/theme-to-themeFile: this is a test for deprecated config, and so
should be removed eventually anyway
- podman: the implementation relies on IFD to create individual systemd
units from the derivation output, and so it is not straightforward to
remove the IFD; doing so would require rethinking how the module works
to instead have the systemd unit files included as-is rather than as
individually configured units in the Nix config.
2025-05-07 10:34:18 -05:00
awwpotato
59de2dfb0a
workflows: only run conflicts and update flake on main repo ( #6893 )
2025-04-23 11:25:45 -05:00
Austin Horstman
ae84885d9b
workflows/conflicts: init ( #6845 )
...
Add labeler for merge conflicts
2025-04-18 22:23:32 -05:00
Austin Horstman
760eed5959
flake.nix: remove treefmt-nix input ( #6782 )
...
Removing input until I have time to migrate usage to a dev flake for all
the dev dependencies.
2025-04-08 13:52:13 -05:00
Austin Horstman
5df48c4255
flake.nix: add formatter check
2025-04-08 08:50:05 -07:00
dependabot[bot]
18e7d54899
ci: bump cachix/cachix-action from 15 to 16 ( #6644 )
...
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action ) from 15 to 16.
- [Release notes](https://github.com/cachix/cachix-action/releases )
- [Commits](https://github.com/cachix/cachix-action/compare/v15...v16 )
---
updated-dependencies:
- dependency-name: cachix/cachix-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-17 15:24:45 -05:00
dependabot[bot]
eae06a96af
ci: bump cachix/install-nix-action from 30 to 31 ( #6643 )
...
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action ) from 30 to 31.
- [Release notes](https://github.com/cachix/install-nix-action/releases )
- [Commits](https://github.com/cachix/install-nix-action/compare/v30...v31 )
---
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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-17 14:53:43 -05:00
Austin Horstman
91f88408cc
.github/workflows/test.yml: enable darwin tests
2025-03-09 00:44:11 -06:00
Robert Helgesson
c5c2cbc866
ci: tweak test command slightly
...
Specifically, increase initial GC heap size and allow parallel build
jobs.
2025-02-04 23:44:07 +01:00
dependabot[bot]
bc623830e6
ci: bump cachix/install-nix-action from 27 to 30
...
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action ) from 27 to 30.
- [Release notes](https://github.com/cachix/install-nix-action/releases )
- [Commits](https://github.com/cachix/install-nix-action/compare/v27...v30 )
---
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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 11:44:28 +02:00
Robert Helgesson
21c021862f
ci: disable the tests for macos
...
They have been broken for a long time now and makes the PR flow quite
cumbersome. Thus we disable them until somebody is able to get them to
work again.
2024-09-23 19:15:45 +02:00
dependabot[bot]
6b1912380e
ci: bump DeterminateSystems/update-flake-lock from 23 to 24
...
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock ) from 23 to 24.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases )
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v23...v24 )
---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-20 09:43:17 +02:00
dependabot[bot]
ef74bacbb4
ci: bump DeterminateSystems/update-flake-lock from 22 to 23
...
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock ) from 22 to 23.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases )
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v22...v23 )
---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-01 11:49:15 +02:00
Sumner Evans
07b2c41d2d
ci: bump all actions versions ( #5496 )
...
* cachix/install-nix-action: v23 -> v27
Release: https://github.com/cachix/install-nix-action/releases/tag/v27
* actions/labeler: v4 -> v5
Release: https://github.com/actions/labeler/releases/tag/v5.0.0
* DeterminateSystems/update-flake-lock: v21 -> v22
Release: https://github.com/DeterminateSystems/update-flake-lock/releases/tag/v22
Signed-off-by: Sumner Evans <me@sumnerevans.com>
2024-06-03 22:41:47 -06:00
dependabot[bot]
6a35d1969e
ci: bump cachix/cachix-action from 13 to 15
...
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action ) from 13 to 15.
- [Release notes](https://github.com/cachix/cachix-action/releases )
- [Commits](https://github.com/cachix/cachix-action/compare/v13...v15 )
---
updated-dependencies:
- dependency-name: cachix/cachix-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-26 10:13:35 +02:00
dependabot[bot]
1c43dcfac4
ci: bump peaceiris/actions-gh-pages from 3 to 4
...
Bumps [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages ) from 3 to 4.
- [Release notes](https://github.com/peaceiris/actions-gh-pages/releases )
- [Changelog](https://github.com/peaceiris/actions-gh-pages/blob/main/CHANGELOG.md )
- [Commits](https://github.com/peaceiris/actions-gh-pages/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: peaceiris/actions-gh-pages
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 09:42:51 +02:00
Robert Helgesson
3c7bacf1d4
ci: remove cachix action
...
All the extra binary cache lookups and uploads to Cachix make the
build quite a bit slower than necessary.
2024-03-06 08:42:21 +01:00
dependabot[bot]
23ff9821bc
ci: bump DeterminateSystems/update-flake-lock from 20 to 21
...
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock ) from 20 to 21.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases )
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v20...v21 )
---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-04 19:50:43 +01:00
Robert Helgesson
7403ed4980
home-manager: internalize uninstall
...
This adds a Boolean option `uninstall`. When enabled this option will
reset side-effecting configurations to their "empty" state. The intent
is that this will cause the activation script to remove all managed
files and packages.
Doing it this way should hopefully be more robust than the previous
solution. It also allows a somewhat more convenient uninstall process
when using Flakes; put `uninstall = true` in your existing
configuration and then do a switch.
Also add simple uninstall test in CI test job.
2024-01-13 00:32:31 +01:00
dependabot[bot]
9a00befa13
ci: bump cachix/cachix-action from 12 to 13
...
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action ) from 12 to 13.
- [Release notes](https://github.com/cachix/cachix-action/releases )
- [Commits](https://github.com/cachix/cachix-action/compare/v12...v13 )
---
updated-dependencies:
- dependency-name: cachix/cachix-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-10 09:08:54 +01:00