threads / patch / 15644

patchAdd OS X support to the pre-auto-gc example hook

Subject: [PATCH] Add OS X support to the pre-auto-gc example hook

## tl;dr

5 messages between Sep 23, 2008 and Sep 30, 2008. Diffs are folded; open one to read it.

replies: 4people: 2as markdown or json

Jonathan del Strother· Sep 23, 2008, 22:43 UTC · lore
Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv>
---

Darwin / OS X has a pmset tool for getting power management information. How about adding OS X support to the auto-gc hook? Shell scripting isn't my forté, suggestions for improvements would be welcome.

 contrib/hooks/pre-auto-gc-battery |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)
Show changes to contrib/hooks/pre-auto-gc-battery +6 −3
diff --git a/contrib/hooks/pre-auto-gc-battery b/contrib/hooks/pre-auto-gc-battery
index 0096f57..0b7bcde 100644
--- a/contrib/hooks/pre-auto-gc-battery
+++ b/contrib/hooks/pre-auto-gc-battery
@@ -1,9 +1,9 @@
 #!/bin/sh
 #
 # An example hook script to verify if you are on battery, in case you
-# are running Linux. Called by git-gc --auto with no arguments. The hook
-# should exit with non-zero status after issuing an appropriate message
-# if it wants to stop the auto repacking.
+# are running Linux or OS X. Called by git-gc --auto with no arguments.
+# The hook should exit with non-zero status after issuing an appropriate
+# message if it wants to stop the auto repacking.
 #
 # This hook is stored in the contrib/hooks directory. Your distribution
 # may have put this somewhere else. If you want to use this hook, you
@@ -30,6 +30,9 @@ then
 elif grep -q '0x01$' /proc/apm 2>/dev/null
 then
 	exit 0
+elif test -x /usr/bin/pmset && (! /usr/bin/pmset -g batt | grep -q 'Battery Power' )
+then
+	exit 0
 fi
 
 echo "Auto packing deferred; not on AC"
-- 
1.6.0.2.308.gd442a.dirty
Miklos Vajna· Sep 25, 2008, 23:20 UTC · re: Jonathan del Strother · lore

Re: [PATCH] Add OS X support to the pre-auto-gc example hook

On Tue, Sep 23, 2008 at 11:43:23PM +0100, Jonathan del Strother <jon.delStrother@bestbefore.tv> wrote:
> Shell scripting isn't my fortĂŠ, suggestions for improvements would be
> welcome.
> 
> +elif test -x /usr/bin/pmset && (! /usr/bin/pmset -g batt | grep -q 'Battery Power' )
What about
+elif test -x /usr/bin/pmset && /usr/bin/pmset -g batt | grep -q 'AC Power'
?
Jonathan del Strother· Sep 27, 2008, 09:53 UTC · re: Miklos Vajna · lore

Re: [PATCH] Add OS X support to the pre-auto-gc example hook

On Fri, Sep 26, 2008 at 12:20 AM, Miklos Vajna <vmiklos@frugalware.org> wrote:
Show 11 quoted lines
> On Tue, Sep 23, 2008 at 11:43:23PM +0100, Jonathan del Strother <jon.delStrother@bestbefore.tv> wrote:
>> Shell scripting isn't my fortĂŠ, suggestions for improvements would be
>> welcome.
>>
>> +elif test -x /usr/bin/pmset && (! /usr/bin/pmset -g batt | grep -q 'Battery Power' )
>
> What about
>
> +elif test -x /usr/bin/pmset && /usr/bin/pmset -g batt | grep -q 'AC Power'
>
> ?

I was trying to handle pmset reporting anything other than Battery Power (currently it reports either Battery, UPS, or AC), but thinking about it, if you're on UPS, you probably don't want git gc eating into your remaining power... I'll post an updated version on Monday.

Jonathan del Strother· Sep 29, 2008, 23:36 UTC · re: Jonathan del Strother · lore

[PATCH v2] Add OS X support to the pre-auto-gc example hook

Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv>
---
Second attempt - this simplifies the test while making it more specific (it will only pack when on AC power, rather than, say, UPS).
 contrib/hooks/pre-auto-gc-battery |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)
Show changes to contrib/hooks/pre-auto-gc-battery +7 −3
diff --git a/contrib/hooks/pre-auto-gc-battery b/contrib/hooks/pre-auto-gc-battery
index 0096f57..b0a8caa 100644
--- a/contrib/hooks/pre-auto-gc-battery
+++ b/contrib/hooks/pre-auto-gc-battery
@@ -1,9 +1,9 @@
 #!/bin/sh
 #
 # An example hook script to verify if you are on battery, in case you
-# are running Linux. Called by git-gc --auto with no arguments. The hook
-# should exit with non-zero status after issuing an appropriate message
-# if it wants to stop the auto repacking.
+# are running Linux or OS X. Called by git-gc --auto with no arguments.
+# The hook should exit with non-zero status after issuing an appropriate
+# message if it wants to stop the auto repacking.
 #
 # This hook is stored in the contrib/hooks directory. Your distribution
 # may have put this somewhere else. If you want to use this hook, you
@@ -30,6 +30,10 @@ then
 elif grep -q '0x01$' /proc/apm 2>/dev/null
 then
 	exit 0
+elif test -x /usr/bin/pmset && /usr/bin/pmset -g batt |
+	grep -q "Currently drawing from 'AC Power'"
+then
+	exit 0
 fi
 
 echo "Auto packing deferred; not on AC"
-- 
1.6.0.2.308.gd442a.dirty
Miklos Vajna· Sep 30, 2008, 15:00 UTC · re: Jonathan del Strother · lore

Re: [PATCH v2] Add OS X support to the pre-auto-gc example hook

On Tue, Sep 30, 2008 at 12:36:28AM +0100, Jonathan del Strother <jon.delStrother@bestbefore.tv> wrote:
> Second attempt - this simplifies the test while making it more
> specific (it will only pack when on AC power, rather than, say, UPS).
Acked-by: Miklos Vajna <vmiklos@frugalware.org>
Thanks.

← back to recent threads