diff --git a/krebs/2configs/repo-sync.nix b/krebs/2configs/repo-sync.nix
index 0f3d3326f..1ae6d6c11 100644
--- a/krebs/2configs/repo-sync.nix
+++ b/krebs/2configs/repo-sync.nix
@@ -16,14 +16,14 @@ let
       cgit.section = section;
       hooks = mkDefault {
         post-receive = pkgs.git-hooks.irc-announce {
-          nick = config.networking.hostName;
-          verbose = false;
           channel = "#xxx";
-          server = "irc.r";
-          branches = [
-            "master"
-            "newest"
+          refs = [
+            "refs/heads/master"
+            "refs/heads/newest"
           ];
+          nick = config.networking.hostName;
+          server = "irc.r";
+          verbose = false;
         };
       };
     };
diff --git a/krebs/5pkgs/simple/git-hooks/default.nix b/krebs/5pkgs/simple/git-hooks/default.nix
index 1930c7f14..0a2c84410 100644
--- a/krebs/5pkgs/simple/git-hooks/default.nix
+++ b/krebs/5pkgs/simple/git-hooks/default.nix
@@ -6,11 +6,11 @@ with import <stockholm/lib>;
   # TODO irc-announce should return a derivation
   #      but it cannot because krebs.git.repos.*.hooks :: attrsOf str
   irc-announce =
-  { branches ? []
-  , cgit_endpoint ? "http://cgit.${nick}.r"
+  { cgit_endpoint ? "http://cgit.${nick}.r"
   , channel
   , nick
   , port ? 6667
+  , refs ? []
   , server
   , verbose ? false
   }: /* sh */ ''
@@ -57,14 +57,15 @@ with import <stockholm/lib>;
         receive_mode=non-fast-forward
       fi
 
-      h=$(echo $ref | sed 's:^refs/heads/::')
-
-      ${optionalString (branches != []) ''
-        if ! (echo "$h" | grep -qE "${concatStringsSep "|" branches}"); then
-          echo "we are not serving this branch: $h"
+      ${optionalString (refs != []) ''
+        if ! { echo "$ref" | grep -qE "${concatStringsSep "|" refs}"; }; then
+          echo "we are not announcing this ref: $h"
           exit 0
         fi
       ''}
+
+      h=$(echo $ref | sed 's:^refs/heads/::')
+
       # empty_tree=$(git hash-object -t tree /dev/null)
       empty_tree=4b825dc6
 
diff --git a/lass/2configs/git.nix b/lass/2configs/git.nix
index 829e62269..011c6022c 100644
--- a/lass/2configs/git.nix
+++ b/lass/2configs/git.nix
@@ -100,10 +100,12 @@ let
         # TODO make nick = config.krebs.build.host.name the default
         nick = config.krebs.build.host.name;
         channel = "#xxx";
+        # TODO define refs in some kind of option per repo
+        refs = [
+          "refs/heads/master"
+        ];
         server = "irc.r";
         verbose = config.krebs.build.host.name == "prism";
-        # TODO define branches in some kind of option per repo
-        branches = [ "master" ];
       };
     };
   };
@@ -121,10 +123,13 @@ let
         # TODO make nick = config.krebs.build.host.name the default
         nick = config.krebs.build.host.name;
         channel = "#xxx";
+        # TODO define refs in some kind of option per repo
+        refs = [
+          "refs/heads/master"
+          "refs/heads/staging*"
+        ];
         server = "irc.r";
         verbose = false;
-        # TODO define branches in some kind of option per repo
-        branches = [ "master" "staging*" ];
       };
     } // hooks;
   };
diff --git a/lass/2configs/repo-sync.nix b/lass/2configs/repo-sync.nix
index 6a07172fe..8b7d0db71 100644
--- a/lass/2configs/repo-sync.nix
+++ b/lass/2configs/repo-sync.nix
@@ -14,10 +14,12 @@ let
       hooks = mkIf announce (mkDefault {
         post-receive = pkgs.git-hooks.irc-announce {
           nick = config.networking.hostName;
-          verbose = false;
           channel = "#xxx";
+          refs = [
+            "refs/heads/newest"
+          ];
           server = "irc.r";
-          branches = [ "newest" ];
+          verbose = false;
         };
       });
     };