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
+70
View File
@@ -0,0 +1,70 @@
{
pkgs,
rustToolchain,
}:
let
inherit (pkgs) lib;
linuxLibraries = with pkgs; [
libpulseaudio
pipewire
stdenv.cc.cc.lib
zlib
];
in
pkgs.mkShell (
{
name = "omp-dev";
packages =
(with pkgs; [
bun
bun2nix
rustToolchain
bazelisk
cargo-nextest
rustPlatform.bindgenHook
nixfmt
typescript-language-server
python312
python312Packages.pip
uv
basedpyright
bash
cacert
curl
fd
git
git-lfs
imagemagick
openssh
ripgrep
sqlite
unzip
cmake
ninja
pkg-config
zig
cairo
giflib
libjpeg
libopus
librsvg
openssl
pango
pcre2
zlib
])
++ lib.optionals pkgs.stdenv.hostPlatform.isLinux linuxLibraries;
CMAKE_POLICY_VERSION_MINIMUM = "3.5";
PCRE2_SYS_STATIC = "1";
RUST_SRC_PATH = "${rustToolchain}/lib/rustlib/src/rust/library";
}
// lib.optionalAttrs pkgs.stdenv.hostPlatform.isLinux {
LD_LIBRARY_PATH = lib.makeLibraryPath linuxLibraries;
}
)