diff --git a/.github/workflows/rust.yml b/.github/workflows/cargo_check.yml
similarity index 75%
rename from .github/workflows/rust.yml
rename to .github/workflows/cargo_check.yml
index ac3ed4a9c408f1475f2cc9153d64311b888fe196..8638a76b21bda224b74d516896c0d481acedfa74 100644
--- a/.github/workflows/rust.yml
+++ b/.github/workflows/cargo_check.yml
@@ -11,7 +11,7 @@ on: [push]
 #      - '!third_party/**'
 
 jobs:
-  cargo:
+  cargo_check:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v2
@@ -28,24 +28,6 @@ jobs:
       - name: Set up OpenSK
         run: ./setup.sh
 
-      - name: Cargo format src/
-        uses: actions-rs/cargo@v1
-        with:
-          command: fmt
-          args: --all -- --check
-
-      - name: Cargo format libraries/cbor
-        uses: actions-rs/cargo@v1
-        with:
-          command: fmt
-          args: --manifest-path libraries/cbor/Cargo.toml --all -- --check
-
-      - name: Cargo format libraries/crypto
-        uses: actions-rs/cargo@v1
-        with:
-          command: fmt
-          args: --manifest-path libraries/crypto/Cargo.toml --all -- --check
-
       - name: Check OpenSK w/o features
         uses: actions-rs/cargo@v1
         with:
diff --git a/.github/workflows/cargo_fmt.yml b/.github/workflows/cargo_fmt.yml
new file mode 100644
index 0000000000000000000000000000000000000000..f07762852bb97d7d8c26cd2edc7b27d01b8a7d8e
--- /dev/null
+++ b/.github/workflows/cargo_fmt.yml
@@ -0,0 +1,47 @@
+name: Cargo format
+on: [push]
+#  push:
+#    paths:
+#      - 'examples/*.rs'
+#      - 'libraries/**/*.rs'
+#      - 'src/**/*.rs'
+#      - 'patches/**'
+#      - '**/Cargo.toml'
+#      - '.cargo/config'
+#      - '!third_party/**'
+
+jobs:
+  cargo_format:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+      - uses: actions-rs/toolchain@v1
+        with:
+          toolchain: nightly
+          target: thumbv7em-none-eabi
+          override: true
+      - uses: actions/setup-python@v1
+        with:
+          python-version: 3.7
+      - name: Install Python dependencies
+        run: python -m pip install --upgrade pip setuptools wheel
+      - name: Set up OpenSK
+        run: ./setup.sh
+
+      - name: Cargo format src/
+        uses: actions-rs/cargo@v1
+        with:
+          command: fmt
+          args: --all -- --check
+
+      - name: Cargo format libraries/cbor
+        uses: actions-rs/cargo@v1
+        with:
+          command: fmt
+          args: --manifest-path libraries/cbor/Cargo.toml --all -- --check
+
+      - name: Cargo format libraries/crypto
+        uses: actions-rs/cargo@v1
+        with:
+          command: fmt
+          args: --manifest-path libraries/crypto/Cargo.toml --all -- --check