From 4e36cca6374b449d33769943d6ba2875847e012f Mon Sep 17 00:00:00 2001 From: steffen Date: Sat, 14 Mar 2026 14:52:30 +0100 Subject: [PATCH 1/5] remove all deploy-rs references from docs and config - Update README, AGENTS.md, docs/index.md, docs/deployment/cd.md, docs/services/forgejo.md: replace deploy-rs with Comin everywhere - Fix repo URL references (cryodev-server -> cryodev) - Fix forgejo admin create command to use shell alias - Rewrite cd.md for Comin-only deployment --- AGENTS.md | 11 ++-- README.md | 8 +-- docs/deployment/cd.md | 130 ++++++++------------------------------- docs/index.md | 4 +- docs/services/forgejo.md | 39 +++--------- 5 files changed, 49 insertions(+), 143 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 0b23dfa..367ea5c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -27,7 +27,7 @@ nix build .#nixosConfigurations.cryodev-pi.config.system.build.sdImage # Format code (required before committing) nix fmt -# Run all checks (lint, formatting, deploy-rs validation) +# Run all checks (lint, formatting) nix flake check # Quick evaluation test (faster than full build) @@ -46,14 +46,17 @@ nix develop # Deploy all hosts via deploy app (uses deploy.json) nix run .#deploy -# Deploy to cryodev-main via deploy-rs -nix run github:serokell/deploy-rs -- .#cryodev-main +# Deploy a specific host +nix run .#deploy -- -n cryodev-main # Manual deployment via SSH NIX_SSHOPTS="-p 2299" nixos-rebuild switch --flake .# \ --target-host @ --sudo --ask-sudo-password ``` +> **Note:** Both hosts use Comin for automatic pull-based deployment. +> Manual deployment is only needed for the initial setup or emergencies. + ### Apps ```bash @@ -200,7 +203,7 @@ services.nginx.enable = lib.mkDefault true; | Host | Strategy | Trigger | |------|----------|---------| -| `cryodev-main` | Push via deploy-rs | Forgejo Actions on push to main | +| `cryodev-main` | Pull via Comin | Automatic polling | | `cryodev-pi` | Pull via Comin | Automatic polling | | SD Images | Built in CI | Push to main (for Pi hosts) | diff --git a/README.md b/README.md index 3605ade..fde2dc0 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,8 @@ Declarative NixOS infrastructure for the **cryodev** environment, managed with N ```bash # Clone repository -git clone https://git.cryodev.xyz/steffen/cryodev-server.git -cd cryodev-server +git clone https://git.cryodev.xyz/steffen/cryodev.git +cd cryodev # Check configuration nix flake check @@ -20,7 +20,7 @@ nix build .#nixosConfigurations.cryodev-main.config.system.build.toplevel | Host | Architecture | Deployment | Description | |------|--------------|------------|-------------| -| `cryodev-main` | x86_64 | Push (deploy-rs) | Main server | +| `cryodev-main` | x86_64 | Pull (Comin) | Main server | | `cryodev-pi` | aarch64 | Pull (Comin) | Raspberry Pi client | ## Services @@ -37,7 +37,7 @@ nix build .#nixosConfigurations.cryodev-main.config.system.build.toplevel SD card images for Raspberry Pi clients are **built automatically** on every push to `main`. -Download from: [Releases](https://git.cryodev.xyz/steffen/cryodev-server/releases) +Download from: [Releases](https://git.cryodev.xyz/steffen/cryodev/releases) ```bash # Flash to SD card diff --git a/docs/deployment/cd.md b/docs/deployment/cd.md index 628ee5e..223b397 100644 --- a/docs/deployment/cd.md +++ b/docs/deployment/cd.md @@ -1,121 +1,38 @@ # Continuous Deployment -The cryodev infrastructure uses two deployment strategies optimized for different host types. +All hosts use **Comin** (pull-based) for automatic deployment. ## Overview | Host | Strategy | Tool | Trigger | |------|----------|------|---------| -| `cryodev-main` | Push-based | deploy-rs | Git push via Forgejo Actions | -| `cryodev-pi` | Pull-based | Comin | Periodic polling | +| `cryodev-main` | Pull-based | Comin | Automatic polling | +| `cryodev-pi` | Pull-based | Comin | Automatic polling | -## Push-based Deployment (cryodev-main) - -### How It Works +## How It Works 1. Developer pushes to `main` branch -2. Forgejo Actions workflow triggers -3. `deploy-rs` connects via SSH and deploys +2. CI (Forgejo Actions) runs flake-check and builds all hosts +3. Comin on each host periodically polls the Git repository +4. On changes, Comin builds and activates the new configuration -### Setup - -#### 1. Generate Deploy Key - -```bash -ssh-keygen -t ed25519 -f deploy_key -C "forgejo-actions" -``` - -#### 2. Add Public Key to Server - -On `cryodev-main`: - -```bash -echo "PUBLIC_KEY_CONTENT" >> /root/.ssh/authorized_keys -``` - -#### 3. Add Private Key to Forgejo - -1. Go to Repository Settings > Secrets -2. Add secret named `DEPLOY_SSH_KEY` -3. Paste the private key content - -#### 4. Workflow Configuration - -`.forgejo/workflows/deploy.yaml`: - -```yaml -name: Deploy -on: - push: - branches: [main] - -jobs: - check: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: cachix/install-nix-action@v24 - - run: nix flake check - - deploy: - needs: check - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: cachix/install-nix-action@v24 - - - name: Setup SSH - env: - SSH_PRIVATE_KEY: ${{ secrets.DEPLOY_SSH_KEY }} - run: | - mkdir -p ~/.ssh - echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519 - chmod 600 ~/.ssh/id_ed25519 - ssh-keyscan cryodev-main >> ~/.ssh/known_hosts - - - name: Deploy - run: nix run github:serokell/deploy-rs -- .#cryodev-main -``` - -### Rollback - -deploy-rs automatically rolls back if the new configuration fails health checks. - -Manual rollback: - -```bash -# List generations -sudo nix-env -p /nix/var/nix/profiles/system --list-generations - -# Rollback to previous -sudo nixos-rebuild switch --rollback -``` - -## Pull-based Deployment (cryodev-pi) - -### How It Works - -1. Comin periodically polls the Git repository -2. On changes, it builds and activates the new configuration -3. Works through NAT without incoming connections - -### Configuration +## Configuration ```nix -# hosts/cryodev-pi/services/comin.nix +# hosts//services/comin.nix { services.comin = { enable = true; remotes = [{ name = "origin"; - url = "https://git.cryodev.xyz/steffen/cryodev-server.git"; + url = "https://git.cryodev.xyz/steffen/cryodev.git"; branches.main.name = "main"; }]; }; } ``` -### Monitoring +## Monitoring Check Comin status: @@ -130,7 +47,7 @@ Force immediate update: sudo systemctl restart comin ``` -### Troubleshooting +## Troubleshooting If Comin fails to build: @@ -140,23 +57,30 @@ sudo journalctl -u comin --since "1 hour ago" # Manual build test cd /var/lib/comin/repo -nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel +nix build .#nixosConfigurations..config.system.build.toplevel +``` + +## Rollback + +```bash +# List generations +sudo nix-env -p /nix/var/nix/profiles/system --list-generations + +# Rollback to previous +sudo nixos-rebuild switch --rollback ``` ## Manual Deployment -For hosts not using automated deployment: +For initial setup or emergencies: ```bash -# Build locally -nix build .#nixosConfigurations..config.system.build.toplevel +# Using the deploy app +nix run .#deploy -- -n -# Deploy with nixos-rebuild +# Or manually with nixos-rebuild NIX_SSHOPTS="-p 2299" nixos-rebuild switch --flake .# \ --target-host @ --sudo --ask-sudo-password - -# Or using deploy-rs -nix run github:serokell/deploy-rs -- .# ``` ## Testing Changes diff --git a/docs/index.md b/docs/index.md index 47ad07d..c63bb6c 100644 --- a/docs/index.md +++ b/docs/index.md @@ -90,5 +90,5 @@ Für Raspberry Pi: [SD-Image Referenz](getting-started/sd-image.md) | Host | Strategie | Tool | Beschreibung | |------|-----------|------|--------------| -| `cryodev-main` | Push-basiert | deploy-rs via Forgejo Actions | Sofortige Updates bei Push | -| `cryodev-pi` | Pull-basiert | Comin | Pollt Repository auf Änderungen | +| `cryodev-main` | Pull-basiert | Comin | Pollt Repository auf Aenderungen | +| `cryodev-pi` | Pull-basiert | Comin | Pollt Repository auf Aenderungen | diff --git a/docs/services/forgejo.md b/docs/services/forgejo.md index 09d5b6a..5955405 100644 --- a/docs/services/forgejo.md +++ b/docs/services/forgejo.md @@ -75,44 +75,23 @@ forgejo-runner: ## CI/CD Workflows -### deploy-rs Workflow +CI runs on every push to `main` via Forgejo Actions: -`.forgejo/workflows/deploy.yaml`: +1. **flake-check** -- validates the flake +2. **build-hosts** -- builds all host configurations -```yaml -name: Deploy -on: - push: - branches: [main] - -jobs: - deploy: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Install Nix - uses: cachix/install-nix-action@v24 - - - name: Deploy - env: - SSH_PRIVATE_KEY: ${{ secrets.DEPLOY_SSH_KEY }} - run: | - mkdir -p ~/.ssh - echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519 - chmod 600 ~/.ssh/id_ed25519 - nix run .#deploy -``` +Deployment is handled by **Comin** (pull-based), not by CI. +See [CD documentation](../deployment/cd.md) for details. ## Administration ### Create Admin User ```bash -sudo -u forgejo forgejo admin user create \ - --username admin \ - --password changeme \ - --email admin@cryodev.xyz \ +forgejo admin user create \ + --username \ + --email @ \ + --password \ --admin ``` From 6ad46e7452d0bd5926fcbe96d79a54adad974187 Mon Sep 17 00:00:00 2001 From: steffen Date: Sat, 14 Mar 2026 14:56:10 +0100 Subject: [PATCH 2/5] fix Pi build and CI pipeline ordering - Fix Pi kernel build: disable includeDefaultModules in initrd. NixOS all-hardware.nix includes dw-hdmi which doesn't exist in the RPi4 kernel 6.12, causing module-shrunk to fail. - Fix CI: SD image build now depends on build-hosts instead of flake-check, so it won't run if the Pi build fails. - Apply same fix to raspberry-pi template. --- .forgejo/workflows/deploy.yml | 2 +- hosts/cryodev-pi/hardware.nix | 14 +++++++++----- templates/raspberry-pi/hardware.nix | 14 +++++++++----- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml index d69d66e..d7d7fd8 100644 --- a/.forgejo/workflows/deploy.yml +++ b/.forgejo/workflows/deploy.yml @@ -29,7 +29,7 @@ jobs: run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure build-pi-images: - needs: flake-check + needs: build-hosts runs-on: host strategy: matrix: diff --git a/hosts/cryodev-pi/hardware.nix b/hosts/cryodev-pi/hardware.nix index a0d751a..bb0722b 100644 --- a/hosts/cryodev-pi/hardware.nix +++ b/hosts/cryodev-pi/hardware.nix @@ -3,11 +3,15 @@ { boot = { kernelPackages = pkgs.linuxKernel.packages.linux_rpi4; - initrd.availableKernelModules = [ - "xhci_pci" - "usbhid" - "usb_storage" - ]; + initrd = { + availableKernelModules = [ + "xhci_pci" + "usbhid" + "usb_storage" + ]; + # Disable default x86 modules that don't exist in the Pi kernel (e.g. dw-hdmi) + includeDefaultModules = false; + }; }; fileSystems = { diff --git a/templates/raspberry-pi/hardware.nix b/templates/raspberry-pi/hardware.nix index a0d751a..bb0722b 100644 --- a/templates/raspberry-pi/hardware.nix +++ b/templates/raspberry-pi/hardware.nix @@ -3,11 +3,15 @@ { boot = { kernelPackages = pkgs.linuxKernel.packages.linux_rpi4; - initrd.availableKernelModules = [ - "xhci_pci" - "usbhid" - "usb_storage" - ]; + initrd = { + availableKernelModules = [ + "xhci_pci" + "usbhid" + "usb_storage" + ]; + # Disable default x86 modules that don't exist in the Pi kernel (e.g. dw-hdmi) + includeDefaultModules = false; + }; }; fileSystems = { From 2155f4073f966dbbdc674786e9c19077a39346c7 Mon Sep 17 00:00:00 2001 From: steffen Date: Sat, 14 Mar 2026 15:04:29 +0100 Subject: [PATCH 3/5] fix Pi build: force initrd modules to exclude x86 hardware sd-image.nix imports all-hardware.nix which adds modules like dw-hdmi that don't exist in the RPi4 kernel. mkForce the availableKernelModules list to only include Pi-relevant modules. --- hosts/cryodev-pi/sd-image.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/hosts/cryodev-pi/sd-image.nix b/hosts/cryodev-pi/sd-image.nix index 100123f..237f214 100644 --- a/hosts/cryodev-pi/sd-image.nix +++ b/hosts/cryodev-pi/sd-image.nix @@ -27,4 +27,12 @@ "vfat" "ext4" ]; + + # sd-image.nix imports all-hardware.nix which adds x86 modules like dw-hdmi + # that don't exist in the RPi4 kernel. Filter them out. + boot.initrd.availableKernelModules = lib.mkForce [ + "xhci_pci" + "usbhid" + "usb_storage" + ]; } From 2a418868e641de50be53849979316a68ba1f9e28 Mon Sep 17 00:00:00 2001 From: steffen Date: Sat, 14 Mar 2026 15:08:35 +0100 Subject: [PATCH 4/5] disable Pi builds in CI: QEMU crashes on aarch64 Node.js packages markdown-preview.nvim runs yarn install which compiles native binaries. Under QEMU aarch64 emulation on x86_64 this causes 'Illegal instruction' crashes. Pi images must be built locally or on a native aarch64 runner. Pi deployment still works via Comin (builds locally on the Pi itself). --- .forgejo/workflows/ci.yml | 5 +- .forgejo/workflows/deploy.yml | 93 ++++++----------------------------- 2 files changed, 18 insertions(+), 80 deletions(-) diff --git a/.forgejo/workflows/ci.yml b/.forgejo/workflows/ci.yml index 481d33c..2b216e8 100644 --- a/.forgejo/workflows/ci.yml +++ b/.forgejo/workflows/ci.yml @@ -22,5 +22,6 @@ jobs: - name: Build cryodev-main run: nix build .#nixosConfigurations.cryodev-main.config.system.build.toplevel --impure - - name: Build cryodev-pi - run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure + # Pi build disabled: QEMU emulation crashes on Node.js packages + # - name: Build cryodev-pi + # run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml index d7d7fd8..7849a1d 100644 --- a/.forgejo/workflows/deploy.yml +++ b/.forgejo/workflows/deploy.yml @@ -25,82 +25,19 @@ jobs: - name: Build cryodev-main run: nix build .#nixosConfigurations.cryodev-main.config.system.build.toplevel --impure - - name: Build cryodev-pi - run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure + # Pi build disabled: QEMU emulation crashes on Node.js packages + # - name: Build cryodev-pi + # run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure - build-pi-images: - needs: build-hosts - runs-on: host - strategy: - matrix: - host: [cryodev-pi] - fail-fast: false - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Build SD image for ${{ matrix.host }} - run: | - echo "Building SD image for: ${{ matrix.host }}" - nix build .#nixosConfigurations.${{ matrix.host }}.config.system.build.sdImage \ - --extra-platforms aarch64-linux \ - --out-link result-${{ matrix.host }} - - IMAGE_PATH=$(find result-${{ matrix.host }} -name "*.img.zst" -type f | head -1) - if [ -z "$IMAGE_PATH" ]; then - echo "Error: No image found!" - exit 1 - fi - - cp "$IMAGE_PATH" ./${{ matrix.host }}-sd-image.img.zst - sha256sum ${{ matrix.host }}-sd-image.img.zst > ${{ matrix.host }}-sd-image.img.zst.sha256 - - echo "Image size:" - ls -lh ${{ matrix.host }}-sd-image.img.zst - - - name: Upload artifact - uses: actions/upload-artifact@v3 - with: - name: ${{ matrix.host }}-sd-image - path: | - ${{ matrix.host }}-sd-image.img.zst - ${{ matrix.host }}-sd-image.img.zst.sha256 - - create-release: - needs: build-pi-images - runs-on: host - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Download all artifacts - uses: actions/download-artifact@v3 - with: - path: artifacts/ - - - name: Create Release and Upload - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - VERSION="v$(date +%Y-%m-%d)-$(git rev-parse --short HEAD)" - - curl -s -X POST \ - -H "Authorization: token ${GITHUB_TOKEN}" \ - -H "Content-Type: application/json" \ - -d "{\"tag_name\": \"${VERSION}\", \"name\": \"Pi Images ${VERSION}\", \"body\": \"Raspberry Pi SD card images. See docs for usage.\", \"draft\": false, \"prerelease\": false}" \ - "https://git.cryodev.xyz/api/v1/repos/${GITHUB_REPOSITORY}/releases" \ - -o release.json - - RELEASE_ID=$(jq -r '.id' release.json) - echo "Release ID: $RELEASE_ID" - - for file in $(find artifacts -type f); do - echo "Uploading: $(basename $file)" - curl -s -X POST \ - -H "Authorization: token ${GITHUB_TOKEN}" \ - -H "Content-Type: application/octet-stream" \ - --data-binary @"$file" \ - "https://git.cryodev.xyz/api/v1/repos/${GITHUB_REPOSITORY}/releases/${RELEASE_ID}/assets?name=$(basename $file)" - done - - echo "Done: https://git.cryodev.xyz/${GITHUB_REPOSITORY}/releases/tag/${VERSION}" + # Pi builds require native aarch64 or reliable QEMU emulation. + # Currently disabled due to QEMU crashes with Node.js packages. + # Build Pi images locally with: + # nix build .#nixosConfigurations.cryodev-pi.config.system.build.sdImage --extra-platforms aarch64-linux + # + # build-pi-images: + # needs: build-hosts + # ... + # + # create-release: + # needs: build-pi-images + # ... From c81b43530aa62a41d467eb7b602a8ab53a2afcd6 Mon Sep 17 00:00:00 2001 From: steffen Date: Sat, 14 Mar 2026 15:12:24 +0100 Subject: [PATCH 5/5] remove markdown-preview plugin, re-enable Pi builds in CI markdown-preview.nvim runs yarn install with native Node.js binaries that crash under QEMU aarch64 emulation. The plugin is also useless on headless servers (requires a browser). Removing it allows the Pi build to succeed in CI again. Re-enabled Pi build and SD image jobs in both ci.yml and deploy.yml. --- .forgejo/workflows/ci.yml | 5 +- .forgejo/workflows/deploy.yml | 93 ++++++++++++++++++++---- modules/nixos/nixvim/plugins/default.nix | 2 - 3 files changed, 80 insertions(+), 20 deletions(-) diff --git a/.forgejo/workflows/ci.yml b/.forgejo/workflows/ci.yml index 2b216e8..c9ed6e6 100644 --- a/.forgejo/workflows/ci.yml +++ b/.forgejo/workflows/ci.yml @@ -22,6 +22,5 @@ jobs: - name: Build cryodev-main run: nix build .#nixosConfigurations.cryodev-main.config.system.build.toplevel --impure - # Pi build disabled: QEMU emulation crashes on Node.js packages - # - name: Build cryodev-pi - # run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure + - name: Build cryodev-pi + run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure --extra-platforms aarch64-linux diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml index 7849a1d..9ff2d49 100644 --- a/.forgejo/workflows/deploy.yml +++ b/.forgejo/workflows/deploy.yml @@ -25,19 +25,82 @@ jobs: - name: Build cryodev-main run: nix build .#nixosConfigurations.cryodev-main.config.system.build.toplevel --impure - # Pi build disabled: QEMU emulation crashes on Node.js packages - # - name: Build cryodev-pi - # run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure + - name: Build cryodev-pi + run: nix build .#nixosConfigurations.cryodev-pi.config.system.build.toplevel --impure --extra-platforms aarch64-linux - # Pi builds require native aarch64 or reliable QEMU emulation. - # Currently disabled due to QEMU crashes with Node.js packages. - # Build Pi images locally with: - # nix build .#nixosConfigurations.cryodev-pi.config.system.build.sdImage --extra-platforms aarch64-linux - # - # build-pi-images: - # needs: build-hosts - # ... - # - # create-release: - # needs: build-pi-images - # ... + build-pi-images: + needs: build-hosts + runs-on: host + strategy: + matrix: + host: [cryodev-pi] + fail-fast: false + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Build SD image for ${{ matrix.host }} + run: | + echo "Building SD image for: ${{ matrix.host }}" + nix build .#nixosConfigurations.${{ matrix.host }}.config.system.build.sdImage \ + --extra-platforms aarch64-linux \ + --out-link result-${{ matrix.host }} + + IMAGE_PATH=$(find result-${{ matrix.host }} -name "*.img.zst" -type f | head -1) + if [ -z "$IMAGE_PATH" ]; then + echo "Error: No image found!" + exit 1 + fi + + cp "$IMAGE_PATH" ./${{ matrix.host }}-sd-image.img.zst + sha256sum ${{ matrix.host }}-sd-image.img.zst > ${{ matrix.host }}-sd-image.img.zst.sha256 + + echo "Image size:" + ls -lh ${{ matrix.host }}-sd-image.img.zst + + - name: Upload artifact + uses: actions/upload-artifact@v3 + with: + name: ${{ matrix.host }}-sd-image + path: | + ${{ matrix.host }}-sd-image.img.zst + ${{ matrix.host }}-sd-image.img.zst.sha256 + + create-release: + needs: build-pi-images + runs-on: host + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Download all artifacts + uses: actions/download-artifact@v3 + with: + path: artifacts/ + + - name: Create Release and Upload + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + VERSION="v$(date +%Y-%m-%d)-$(git rev-parse --short HEAD)" + + curl -s -X POST \ + -H "Authorization: token ${GITHUB_TOKEN}" \ + -H "Content-Type: application/json" \ + -d "{\"tag_name\": \"${VERSION}\", \"name\": \"Pi Images ${VERSION}\", \"body\": \"Raspberry Pi SD card images. See docs for usage.\", \"draft\": false, \"prerelease\": false}" \ + "https://git.cryodev.xyz/api/v1/repos/${GITHUB_REPOSITORY}/releases" \ + -o release.json + + RELEASE_ID=$(jq -r '.id' release.json) + echo "Release ID: $RELEASE_ID" + + for file in $(find artifacts -type f); do + echo "Uploading: $(basename $file)" + curl -s -X POST \ + -H "Authorization: token ${GITHUB_TOKEN}" \ + -H "Content-Type: application/octet-stream" \ + --data-binary @"$file" \ + "https://git.cryodev.xyz/api/v1/repos/${GITHUB_REPOSITORY}/releases/${RELEASE_ID}/assets?name=$(basename $file)" + done + + echo "Done: https://git.cryodev.xyz/${GITHUB_REPOSITORY}/releases/tag/${VERSION}" diff --git a/modules/nixos/nixvim/plugins/default.nix b/modules/nixos/nixvim/plugins/default.nix index 1941f43..5f3891a 100644 --- a/modules/nixos/nixvim/plugins/default.nix +++ b/modules/nixos/nixvim/plugins/default.nix @@ -11,8 +11,6 @@ ]; config.programs.nixvim.plugins = { - markdown-preview.enable = lib.mkDefault true; - # warning: Nixvim: `plugins.web-devicons` was enabled automatically because the following plugins are enabled. This behaviour is deprecated. Please explicitly define `plugins.web-devicons.enable` web-devicons.enable = true; }; }