-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
home-cursor: modernize #6492
home-cursor: modernize #6492
Conversation
db7301a
to
a57eb96
Compare
79c7a05
to
ec5280c
Compare
See 797fbbf for a prior example of introducing an |
ec5280c
to
4378fc5
Compare
4378fc5
to
df5bd38
Compare
Sorry, I've been slow to respond because I've been thinking through the silent But, maybe this is a good approach to not confuse / burden users with internal details and only new configurations have to deal with the new schema... just worried about tech debt longterm if we have to gate every change and keep it backwards compatible like that. |
The tech debt is great in my opinion too. See https://github.com/catppuccin/nix/blob/b1ff2a638afa827f1473498190a2c1cae1cf41cf/modules/home-manager/swaylock.nix#L13-L26. I see the point of |
👍 this would be my expectation, and the easiest way to on-board users onto the new options.
You can (and you should), much the same NixOS does it: support the legacy option for one release, while deprecating it loudly, and removing it at the next branch-off. Given that home manager follows NixOS' release schedule and |
Yes, sorry if I wasn't clear. I meant I'd like a loud deprecation with a stable release support. But, not gate everything silently forever with I think the main thing we want here is a warning when we detect an option default priority of null for the Something like this? Not sure if we need to even check that closely or we can just check for null. options.enable.highestPrio == (lib.mkOptionDefault null).priority |
Since its a submodule you cannot access outside of the submodule the |
df5bd38
to
50aba5b
Compare
b7eb33b
to
43f2b0c
Compare
43f2b0c
to
c07f95f
Compare
66c4ab3
to
b817af1
Compare
337f7e0
to
fa5bdd2
Compare
fa5bdd2
to
5f1eee1
Compare
5f1eee1
to
b8b506b
Compare
Check if a user explicitly set option to null and warn that they should just disable instead.
b8b506b
to
a26ef76
Compare
Alright, sorry about delay. Kept forgetting to come back and do the loud deprecation instead of all the state checks. I think this will be easier to transition away from. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Appreciate the work, thanks!
Description
Added the
.enable
pattern tohome.pointerCursor
for the selfish reason that is https://github.com/catppuccin/nix/blob/24dac16e6babd41961d985eef3dce6a30dab2e91/modules/home-manager/cursors.nix#L26-L27.And made the
.icons
directory "toggleable" viahome.pointerCursor.doticons.enable
. Which in my opinion is easier than writing:partially addresses #6268
And removing the top-level
with lib
Checklist
Change is backwards compatible.
Code formatted with
./format
.Code tested through
nix-shell --pure tests -A run.all
or
nix build --reference-lock-file flake.lock ./tests#test-all
using Flakes.Test cases updated/added. See example.
Commit messages are formatted like
See CONTRIBUTING for more information and recent commit messages for examples.
If this PR adds a new module
Maintainer CC