diff --git a/.goreleaser.yml b/.goreleaser.yml
index 3dee972a269b87ac75b2304e55e973b978b82a22..dae20d492bb15f1e1c4062e92b815566416d7383 100644
--- a/.goreleaser.yml
+++ b/.goreleaser.yml
@@ -1,22 +1,39 @@
 builds:
-  - main: ./cmd/gotk
-    ldflags:
-      - -s -w -X main.VERSION={{ .Version }}
-    binary: gotk
+  - <<: &build_defaults
+      binary: gotk
+      main: ./cmd/gotk
+      ldflags:
+        - -s -w -X main.VERSION={{ .Version }}
+      env:
+        - CGO_ENABLED=0
+    id: linux
     goos:
-      - darwin
       - linux
-      - windows
     goarch:
       - amd64
       - arm64
       - arm
     goarm:
       - 7
-    env:
-      - CGO_ENABLED=0
+  - <<: *build_defaults
+    id: darwin
+    goos:
+      - darwin
+  - <<: *build_defaults
+    id: windows
+    goos:
+      - windows
 archives:
   - name_template: "{{ .Binary }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
+    id: nix
+    builds: [linux, darwin]
+    format: tar.gz
+    files:
+      - none*
+  - name_template: "{{ .Binary }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
+    id: windows
+    builds: [windows]
+    format: zip
     files:
       - none*
 brews: