feat: introduced nix packaging and path-based binary resolution

- Add comprehensive Nix flake definitions, derivations, modules, and CI workflows.
- Update tests and executables to resolve binaries from PATH rather than absolute paths.
- Ensure byte reproducibility and zeroed timestamps in embedded dashboard archives.
- Add handling for Nix-managed installations in CLI update checks.
This commit is contained in:
can1357
2026-08-13 03:52:47 +02:00
parent 2e492a3076
commit b60bef961c
33 changed files with 3515 additions and 89 deletions
+59
View File
@@ -0,0 +1,59 @@
name: OMP Nix
on:
push:
branches: [main]
paths:
- ".github/workflows/nix.yml"
- ".cargo/**"
- "flake.nix"
- "flake.lock"
- "nix/**"
- "bun.lock"
- "package.json"
- "patches/**"
- "Cargo.toml"
- "Cargo.lock"
- "rust-toolchain.toml"
- "packages/**"
- "crates/**"
- "scripts/**"
- "docs/**"
pull_request:
branches: [main]
paths:
- ".github/workflows/nix.yml"
- ".cargo/**"
- "flake.nix"
- "flake.lock"
- "nix/**"
- "bun.lock"
- "package.json"
- "patches/**"
- "Cargo.toml"
- "Cargo.lock"
- "rust-toolchain.toml"
- "packages/**"
- "crates/**"
- "scripts/**"
- "docs/**"
concurrency:
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true
permissions:
contents: read
jobs:
evaluate:
name: Evaluate flake
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v31
with:
extra_nix_config: |
accept-flake-config = true
- name: Evaluate every supported system
run: nix flake check --all-systems --no-build --show-trace