diff --git a/.github/mergify.yml b/.github/mergify.yml
deleted file mode 100644
index 191717e..0000000
--- a/.github/mergify.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-pull_request_rules:
-  - name: automatic merge on CI success
-    conditions:
-      - base=master
-      - check-success=ci/hercules/evaluation
-      - check-success=ci/hercules/onPush/default
-      - or:
-          - and:
-              - author=github-actions[bot]
-              - label=automerge
-          - and:
-              - author=hercules-ci[bot]
-    actions:
-      merge:
-        method: rebase
-        allow_merging_configuration_change: true
-      delete_head_branch: {}
diff --git a/.github/settings.yml b/.github/settings.yml
index 94e81cd..1093c0a 100644
--- a/.github/settings.yml
+++ b/.github/settings.yml
@@ -152,6 +152,6 @@ branches:
       required_linear_history: false
       # Required. Restrict who can push to this branch. Team and user restrictions are only available for organization-owned repositories. Set to null to disable.
       restrictions:
-        apps: ["mergify"]
-        users: []
+        apps: ["hercules-ci"]
+        users: ["nix-infra-bot"]
         teams: []
diff --git a/.github/workflows/flake-updates-nixpkgs-update.yml b/.github/workflows/flake-updates-nixpkgs-update.yml
index 6e3cb3f..138c60b 100644
--- a/.github/workflows/flake-updates-nixpkgs-update.yml
+++ b/.github/workflows/flake-updates-nixpkgs-update.yml
@@ -13,8 +13,12 @@ jobs:
           extra_nix_config: |
             experimental-features = nix-command flakes
       - name: Update flake.lock
+        id: update
         uses: DeterminateSystems/update-flake-lock@v19
         with:
+          token: ${{ secrets.GH_TOKEN_FOR_UPDATES }}
           inputs: nixpkgs-update
-          pr-labels: |
-            automerge
+      - name: Enable Automerge
+        run: gh pr merge --rebase --auto "${{ steps.update.outputs.pull-request-number }}"
+        env:
+          GH_TOKEN: ${{ secrets.GH_TOKEN_FOR_UPDATES }}
diff --git a/flake.nix b/flake.nix
index 6e3c689..05aeea6 100644
--- a/flake.nix
+++ b/flake.nix
@@ -61,6 +61,7 @@
         hercules-ci.flake-update = {
           enable = true;
           createPullRequest = true;
+          autoMergeMethod = "rebase";
           when = {
             hour = [ 2 ];
             dayOfWeek = [ "Mon" "Thu" ];