Skip to content

fix(nix-darwin): add battery sleep policy - #1258

Merged
shunkakinoki merged 1 commit into
mainfrom
fix/darwin-battery-sleep-policy
Mar 23, 2026
Merged

fix(nix-darwin): add battery sleep policy#1258
shunkakinoki merged 1 commit into
mainfrom
fix/darwin-battery-sleep-policy

Conversation

@shunkakinoki

@shunkakinoki shunkakinoki commented Mar 22, 2026

Copy link
Copy Markdown
Owner

Add a dedicated nix-darwin battery policy service that keeps AC sleep disabled while making battery sleep depend on the current battery percentage.

The implementation now lives under nix-darwin/services/pmset-battery-policy/, with the pmset logic extracted into a standalone shell script and injected with concrete paths and thresholds via pkgs.replaceVars. This matches the repo pattern of keeping substantive shell logic in standalone scripts instead of embedding it inline in Nix modules.

The default macOS lid-close path is hardware-driven, so this change configures the truthful pmset knobs instead of pretending the idle sleep timer can keep a closed laptop awake. On battery, the service defaults to a conservative 30-minute sleep window and only extends it to 300 minutes when the battery is at least 30%.

Added ShellSpec coverage for the standalone battery policy script and updated the shell coverage inventory. The new tests also caught and fixed a parsing bug where the script could accidentally treat the battery line digits from id=... as part of the battery percentage.

Verified with make shell-test, nix build .#checks.aarch64-darwin.eval-darwin-default .#checks.aarch64-darwin.eval-darwin-runner, and nix eval --raw .#darwinConfigurations.aarch64-darwin.config.system.activationScripts.pmsetBatteryPolicy.text | bash -n.

@coderabbitai

coderabbitai Bot commented Mar 22, 2026

Copy link
Copy Markdown

Warning

Rate limit exceeded

@shunkakinoki has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 4 minutes and 23 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: df2621bf-844f-458f-a1f1-ec2ac5ba1d06

📥 Commits

Reviewing files that changed from the base of the PR and between a02b2ac and 2ddf78c.

📒 Files selected for processing (7)
  • Makefile
  • nix-darwin/default.nix
  • nix-darwin/services/default.nix
  • nix-darwin/services/pmset-battery-policy/default.nix
  • nix-darwin/services/pmset-battery-policy/power-policy.sh
  • spec/coverage_spec.sh
  • spec/pmset_battery_policy_spec.sh
📝 Walkthrough

Walkthrough

Adds a services module loader to nix-darwin and a new pmset battery-policy service that installs an activation script and a launchd daemon to adjust macOS sleep and powernap settings based on battery percentage.

Changes

Cohort / File(s) Summary
Module integration
nix-darwin/default.nix, nix-darwin/services/default.nix
Import a serviceModules set from ./services and append it to the top-level imports, exposing service modules with { lib, isRunner, pkgs }.
Power policy service
nix-darwin/services/pmset-battery-policy/default.nix, nix-darwin/services/pmset-battery-policy/power-policy.sh
Add a Nix module that (when !isRunner) renders power-policy.sh into system.activationScripts and registers launchd.daemons."com.shunkakinoki.pmset-battery-policy" to run at load and daily; script queries pmset and applies sleep/powernap settings.
Tests / coverage
spec/coverage_spec.sh, spec/pmset_battery_policy_spec.sh
Add coverage entry and a new shell test suite that syntax-checks the rendered script and verifies behavior for battery thresholds using a fake pmset wrapper.

Sequence Diagram(s)

sequenceDiagram
    participant System as System Startup
    participant Activation as Activation Scripts
    participant Launchd as launchd Daemon
    participant Script as power-policy.sh
    participant Pmset as pmset Utility

    System->>Activation: Trigger activation scripts
    Activation->>Script: Execute pmsetBatteryPolicy script
    System->>Launchd: Load daemon (com.shunkakinoki...)
    Launchd->>Launchd: Schedule daily (StartInterval: 86400)

    rect rgba(200,150,255,0.5)
    Launchd->>Script: Execute on schedule / RunAtLoad
    Script->>Pmset: Query battery percentage (-g batt)
    Pmset-->>Script: Return battery data
    Script->>Script: Parse %, decide high/low policy
    Script->>Pmset: Apply -b sleep <minutes>
    Script->>Pmset: Apply -b powernap <0|1>
    end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Suggested labels

enhancement

Poem

🐰 I hopped in at dawn to check the charge,
A script and a daemon now guard at large,
When juice runs high I stretch sleep and cheer,
When low I tuck in, cozy and near,
Hooray for neat power—my batteries charge! ⚡️

🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Description check ❓ Inconclusive No pull request description was provided by the author; the description field is empty. Add a pull request description explaining the motivation, implementation details, and testing approach for the battery sleep policy module.
✅ Passed checks (1 passed)
Check name Status Explanation
Title check ✅ Passed The title 'fix(nix-darwin): add battery sleep policy' clearly and specifically describes the main change—adding a battery sleep policy module to nix-darwin.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/darwin-battery-sleep-policy

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces a new Nix-Darwin configuration module designed to intelligently manage macOS sleep settings based on the device's battery level. It aims to optimize power consumption and user experience by dynamically adjusting sleep timers and Power Nap behavior, ensuring the system sleeps for longer periods when sufficient battery is available and more aggressively when the battery is low.

Highlights

  • Dynamic Battery Sleep Policy: Implemented a new Nix-Darwin module to configure macOS sleep behavior based on battery percentage, allowing for longer sleep times when the battery is high and shorter when low.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@mesa-dot-dev

mesa-dot-dev Bot commented Mar 22, 2026

Copy link
Copy Markdown

Mesa Description

TL;DR

Added a dedicated nix-darwin battery policy service that keeps AC sleep disabled while making battery sleep depend on the current battery percentage. The pmset logic is extracted into a standalone shell script, and ShellSpec coverage was added for the script, which caught and fixed a parsing bug.

What changed?

  • nix-darwin/default.nix: Imports and integrates new serviceModules from the ./services directory into the main system configuration.
  • nix-darwin/services/default.nix: New file, introduces a Nix module that serves as an entry point for the pmset-battery-policy service, enabling its configuration and integration within the Nix Darwin environment.
  • nix-darwin/services/pmset-battery-policy/default.nix: New NixOS module introduces a service to manage pmset battery policies, allowing configuration of high/low battery thresholds and sleep intervals. It uses a shell script with variable substitution and registers a launchd daemon (com.shunkakinoki.pmset-battery-policy) to execute the policy daily, conditionally enabled if isRunner is false.
  • nix-darwin/services/pmset-battery-policy/power-policy.sh: The Nix-darwin service script responsible for applying power management (pmset) battery policies on macOS has been updated.
  • spec/coverage_spec.sh: Updated to include nix-darwin/services/pmset-battery-policy/power-policy.sh in its coverage checks and now includes a new test case to ensure a corresponding spec file exists for it.
  • spec/pmset_battery_policy_spec.sh: New file introduces a shell specification (test) for the power-policy.sh script, verifying its behavior under different battery conditions. It uses a mocked pmset command to test the script's logic for configuring display sleep, powernap, and battery sleep duration based on whether the battery percentage is above or below a defined threshold.## TL;DR
    Added a dedicated nix-darwin battery policy service that keeps AC sleep disabled while making battery sleep depend on the current battery percentage. The pmset logic is extracted into a standalone shell script, and ShellSpec coverage was added for the script, which caught and fixed a parsing bug.

What changed?

  • nix-darwin/default.nix: Imports and integrates new serviceModules from the ./services directory into the main system configuration.
  • nix-darwin/services/default.nix: New file, introduces a Nix module that serves as an entry point for the pmset-battery-policy service, enabling its configuration and integration within the Nix Darwin environment.
  • nix-darwin/services/pmset-battery-policy/default.nix: New NixOS module introduces a service to manage pmset battery policies, allowing configuration of high/low battery thresholds and sleep intervals. It uses a shell script with variable substitution and registers a launchd daemon (com.shunkakinoki.pmset-battery-policy) to execute the policy daily, conditionally enabled if isRunner is false.
  • nix-darwin/services/pmset-battery-policy/power-policy.sh: The Nix-darwin service script responsible for applying power management (pmset) battery policies on macOS has been updated.
  • spec/coverage_spec.sh: Updated to include nix-darwin/services/pmset-battery-policy/power-policy.sh in its coverage checks and now includes a new test case to ensure a corresponding spec file exists for it.
  • spec/pmset_battery_policy_spec.sh: New file introduces a shell specification (test) for the power-policy.sh script, verifying its behavior under different battery conditions. It uses a mocked pmset command to test the script's logic for configuring display sleep, powernap, and battery sleep duration based on whether the battery percentage is above or below a defined threshold.

Description generated by Mesa. Update settings

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Code Review

This pull request adds a new power management configuration for macOS, which adjusts sleep settings based on the battery level. The implementation uses a shell script managed by a launchd daemon. My review has identified a significant issue in how the battery percentage is parsed within this script, which could lead to incorrect behavior. I've provided a more robust solution to ensure the power policy functions correctly on various systems.

Comment thread nix-darwin/config/power.nix Outdated
set -eu

# Idle sleep timers do not override the hardware lid-close sleep path.
batteryPercentage="$(${pmsetBin} -g batt | ${awkBin} -F';' 'NR == 2 { gsub(/[^0-9]/, "", $1); print $1; exit }')"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

The current awk command to parse the battery percentage is not robust. The use of gsub(/[^0-9]/, "", $1) can lead to incorrect values by concatenating all digits present in the line, such as battery IDs, instead of just the percentage. For example, on some systems, an output like -InternalBattery-0 (id=5046371) 100% would incorrectly result in 05046371100.

A more reliable approach is to specifically extract the number that is followed by a % symbol.

    batteryPercentage="$(${pmsetBin} -g batt | ${awkBin} -F';' 'NR == 2 { sub(/.*[ \t]/, "", $1); sub(/%/, "", $1); print $1; exit }')"

@shunkakinoki
shunkakinoki force-pushed the fix/darwin-battery-sleep-policy branch 2 times, most recently from 587dff1 to ba63d47 Compare March 23, 2026 00:15
@shunkakinoki
shunkakinoki marked this pull request as ready for review March 23, 2026 00:17
Copilot AI review requested due to automatic review settings March 23, 2026 00:17
@mesa-dot-dev

mesa-dot-dev Bot commented Mar 23, 2026

Copy link
Copy Markdown

You do not have enough credits to review this pull request. Please purchase more credits to continue.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds a dedicated nix-darwin power-management module to enforce a battery-percentage-based pmset sleep/powernap policy, applied both at activation time and periodically via a launchd daemon.

Changes:

  • Import a new power module from nix-darwin/config/power.nix in the main nix-darwin module list.
  • Introduce an activation script and a daily launchd daemon to apply pmset settings for AC and battery, with battery behavior conditional on charge level.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
nix-darwin/default.nix Wires the new power module into the nix-darwin imports list.
nix-darwin/config/power.nix Implements the pmset battery/AC policy and schedules periodic refresh via launchd.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread nix-darwin/config/power.nix Outdated
set -eu

# Idle sleep timers do not override the hardware lid-close sleep path.
batteryPercentage="$(${pmsetBin} -g batt | ${awkBin} -F';' 'NR == 2 { gsub(/[^0-9]/, "", $1); print $1; exit }')"

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

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

batteryPercentage parsing is incorrect: stripping all non-digits from the entire first field will also capture digits from strings like InternalBattery-0 and (id=1234567), producing values like 0123456795 instead of 95. This will make the -ge comparison almost always true and apply the high-battery policy even when the battery is low. Please extract just the number immediately preceding % (e.g., via an awk regex match on /([0-9]+)%/).

Suggested change
batteryPercentage="$(${pmsetBin} -g batt | ${awkBin} -F';' 'NR == 2 { gsub(/[^0-9]/, "", $1); print $1; exit }')"
batteryPercentage="$(${pmsetBin} -g batt | ${awkBin} -F';' 'NR == 2 { if (match($0, /[0-9]+%/)) { print substr($0, RSTART, RLENGTH-1); } exit }')"

Copilot uses AI. Check for mistakes.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

No issues found across 2 files

@shunkakinoki
shunkakinoki force-pushed the fix/darwin-battery-sleep-policy branch 2 times, most recently from 6c9636c to a02b2ac Compare March 23, 2026 00:43

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (2)
nix-darwin/services/pmset-battery-policy/default.nix (1)

7-9: Consider documenting the threshold and sleep values.

The magic numbers would benefit from inline comments explaining the rationale:

  • highBatteryThreshold = 30 - Why 30%?
  • highBatterySleepMinutes = 300 - 5 hours idle sleep when battery is healthy
  • lowBatterySleepMinutes = 30 - 30 minutes when battery is low

This aids future maintainability.

📝 Suggested documentation
 let
+  # Battery percentage at or above which we use relaxed sleep settings
   highBatteryThreshold = 30;
+  # Idle sleep after 5 hours when battery is >= threshold
   highBatterySleepMinutes = 300;
+  # Aggressive 30-minute idle sleep when battery is < threshold
   lowBatterySleepMinutes = 30;
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@nix-darwin/services/pmset-battery-policy/default.nix` around lines 7 - 9, The
three magic-number settings (highBatteryThreshold, highBatterySleepMinutes,
lowBatterySleepMinutes) lack explanation; add brief inline comments next to each
declaration describing the rationale and units (e.g., "30 = 30% battery
threshold for 'healthy' state", "300 = 300 minutes (5 hours) idle sleep when
battery >= threshold", "30 = 30 minutes idle sleep when battery < threshold") so
future readers understand why these specific values were chosen and what units
they represent.
nix-darwin/services/pmset-battery-policy/power-policy.sh (1)

11-11: Consider adding resilience for varying pmset output formats.

The awk pattern assumes a specific pmset -g batt output format. macOS versions may vary in output structure. If the percentage extraction fails (empty string), the script silently defaults to low-battery settings, which may be unexpected behavior on AC power or when the battery format changes.

Consider adding a fallback or logging when batteryPercentage is empty:

💡 Suggested improvement
 batteryPercentage="$($pmset_bin -g batt | $awk_bin -F';' 'NR == 2 { gsub(/[^0-9]/, "", $1); print $1; exit }')"
+
+if [ -z "$batteryPercentage" ]; then
+  echo "Warning: Could not determine battery percentage, using conservative defaults" >&2
+fi
+
 batterySleepMinutes=$low_battery_sleep_minutes
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@nix-darwin/services/pmset-battery-policy/power-policy.sh` at line 11, The
batteryPercentage extraction using batteryPercentage="$($pmset_bin -g batt |
$awk_bin -F';' 'NR == 2 { gsub(/[^0-9]/, "", $1); print $1; exit }')" is brittle
for varying pmset output; update the script to detect and handle an empty or
missing batteryPercentage: run a more robust parse (e.g., search for the first
numeric percentage token from $pmset_bin -g batt or fall back to checking "Now
drawing from" / "AC Power" text), and if batteryPercentage is empty set a safe
default or skip applying low-battery policy while logging a warning via the
existing logger/echo so the script doesn’t silently apply low-power settings on
AC power; reference the batteryPercentage variable and the $pmset_bin/$awk_bin
parsing pipeline when making this change.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@nix-darwin/services/pmset-battery-policy/default.nix`:
- Around line 7-9: The three magic-number settings (highBatteryThreshold,
highBatterySleepMinutes, lowBatterySleepMinutes) lack explanation; add brief
inline comments next to each declaration describing the rationale and units
(e.g., "30 = 30% battery threshold for 'healthy' state", "300 = 300 minutes (5
hours) idle sleep when battery >= threshold", "30 = 30 minutes idle sleep when
battery < threshold") so future readers understand why these specific values
were chosen and what units they represent.

In `@nix-darwin/services/pmset-battery-policy/power-policy.sh`:
- Line 11: The batteryPercentage extraction using
batteryPercentage="$($pmset_bin -g batt | $awk_bin -F';' 'NR == 2 {
gsub(/[^0-9]/, "", $1); print $1; exit }')" is brittle for varying pmset output;
update the script to detect and handle an empty or missing batteryPercentage:
run a more robust parse (e.g., search for the first numeric percentage token
from $pmset_bin -g batt or fall back to checking "Now drawing from" / "AC Power"
text), and if batteryPercentage is empty set a safe default or skip applying
low-battery policy while logging a warning via the existing logger/echo so the
script doesn’t silently apply low-power settings on AC power; reference the
batteryPercentage variable and the $pmset_bin/$awk_bin parsing pipeline when
making this change.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 477a70a1-814f-4fcb-a953-2d017c36e81c

📥 Commits

Reviewing files that changed from the base of the PR and between 4b8399f and 6c9636c.

📒 Files selected for processing (4)
  • nix-darwin/default.nix
  • nix-darwin/services/default.nix
  • nix-darwin/services/pmset-battery-policy/default.nix
  • nix-darwin/services/pmset-battery-policy/power-policy.sh

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
spec/pmset_battery_policy_spec.sh (1)

54-68: Add an exact-threshold test case (BATTERY_PERCENTAGE=30).

Line 54 and Line 63 validate above/below, but not the >= boundary itself. A dedicated equality case will lock in intended behavior and prevent off-by-one regressions.

Suggested test addition
 Describe 'percentage-based policy'
 Before 'setup_policy_script'
 After 'cleanup_policy_script'

+It 'uses high-battery policy exactly at the threshold'
+When run bash -c ': >"'"$PMSET_LOG"'"; BATTERY_PERCENTAGE=30 PMSET_LOG="'"$PMSET_LOG"'" "'"$PREPROCESSED_SCRIPT"'" >/dev/null && cat "'"$PMSET_LOG"'"'
+The status should be success
+The output should include '-b sleep 300'
+The output should include '-b powernap 1'
+End
+
 It 'extends battery sleep at or above the threshold'
 When run bash -c ': >"'"$PMSET_LOG"'"; BATTERY_PERCENTAGE=35 PMSET_LOG="'"$PMSET_LOG"'" "'"$PREPROCESSED_SCRIPT"'" >/dev/null && cat "'"$PMSET_LOG"'"'
 The status should be success
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@spec/pmset_battery_policy_spec.sh` around lines 54 - 68, Add a new spec case
in spec/pmset_battery_policy_spec.sh that sets BATTERY_PERCENTAGE=30 (using the
same bash invocation pattern with PMSET_LOG and PREPROCESSED_SCRIPT) to exercise
the exact-threshold branch; assert the status is success and that the output
includes the same pmset flags as the "extends battery sleep at or above the
threshold" case (check for '-c sleep 0', '-c powernap 1', '-b sleep 300', '-b
powernap 1') so the behavior at BATTERY_PERCENTAGE=30 is explicitly verified.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@spec/pmset_battery_policy_spec.sh`:
- Around line 54-68: Add a new spec case in spec/pmset_battery_policy_spec.sh
that sets BATTERY_PERCENTAGE=30 (using the same bash invocation pattern with
PMSET_LOG and PREPROCESSED_SCRIPT) to exercise the exact-threshold branch;
assert the status is success and that the output includes the same pmset flags
as the "extends battery sleep at or above the threshold" case (check for '-c
sleep 0', '-c powernap 1', '-b sleep 300', '-b powernap 1') so the behavior at
BATTERY_PERCENTAGE=30 is explicitly verified.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 03a11469-2d8d-417a-83ba-7c5b0dfaba14

📥 Commits

Reviewing files that changed from the base of the PR and between 6c9636c and a02b2ac.

📒 Files selected for processing (6)
  • nix-darwin/default.nix
  • nix-darwin/services/default.nix
  • nix-darwin/services/pmset-battery-policy/default.nix
  • nix-darwin/services/pmset-battery-policy/power-policy.sh
  • spec/coverage_spec.sh
  • spec/pmset_battery_policy_spec.sh
✅ Files skipped from review due to trivial changes (2)
  • nix-darwin/services/default.nix
  • nix-darwin/services/pmset-battery-policy/power-policy.sh
🚧 Files skipped from review as they are similar to previous changes (2)
  • nix-darwin/default.nix
  • nix-darwin/services/pmset-battery-policy/default.nix

Entire-Checkpoint: 60127ce9eb7b
@shunkakinoki
shunkakinoki force-pushed the fix/darwin-battery-sleep-policy branch from a02b2ac to 2ddf78c Compare March 23, 2026 01:01
@shunkakinoki
shunkakinoki enabled auto-merge (squash) March 23, 2026 01:58
@shunkakinoki
shunkakinoki merged commit 72d5afa into main Mar 23, 2026
35 checks passed
@shunkakinoki
shunkakinoki deleted the fix/darwin-battery-sleep-policy branch March 23, 2026 02:51
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