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:
@@ -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;
|
||||
}
|
||||
)
|
||||
Reference in New Issue
Block a user