mirror of
https://gitlab.com/ahoneybun/nyxi-installer.git
synced 2025-05-12 19:14:03 -06:00
better flake?
This commit is contained in:
parent
f134004ddb
commit
fb3e99f8e4
3 changed files with 128 additions and 49 deletions
75
flake.nix
75
flake.nix
|
@ -1,58 +1,35 @@
|
|||
{
|
||||
description = "Nyxi Installer flake";
|
||||
description = "Flake to build and develop Nyxi";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-24.11";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
naersk.url = "github:nix-community/naersk";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
};
|
||||
|
||||
outputs = { nixpkgs, ... } @ inputs:
|
||||
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
};
|
||||
in
|
||||
{
|
||||
checks.x86_64-linux.unitTests = (with pkgs; stdenv.mkDerivation {
|
||||
pname = "nyxi-installer";
|
||||
version = "2.0.0";
|
||||
src = builtins.fetchGit {
|
||||
url = "https://gitlab.com/ahoneybun/nyxi-installer.git";
|
||||
ref = "rust-rewrite";
|
||||
rev = "a0c8dafe6186de0c6eebc68d413d08bccd4e2405";
|
||||
};
|
||||
outputs = { self, flake-utils, naersk, nixpkgs }:
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = (import nixpkgs) {
|
||||
inherit system;
|
||||
};
|
||||
|
||||
buildInputs = with pkgs; [ cargo rustc ];
|
||||
naersk' = pkgs.callPackage naersk {};
|
||||
|
||||
buildPhase = ''
|
||||
cargo test
|
||||
'';
|
||||
in rec {
|
||||
# For `nix build` & `nix run`:
|
||||
defaultPackage = naersk'.buildPackage {
|
||||
LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib";
|
||||
CLANG_PATH = "${pkgs.llvmPackages.clang}/bin/clang";
|
||||
buildInputs = with pkgs; [ pkg-config openssl ];
|
||||
nativeBuildInputs = with pkgs; [ util-linux.dev ];
|
||||
src = ./.;
|
||||
};
|
||||
|
||||
});
|
||||
|
||||
devShells.x86_64-linux.default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
cargo
|
||||
rustc
|
||||
gnumake
|
||||
clang
|
||||
llvmPackages.libclang
|
||||
llvmPackages.clang
|
||||
|
||||
# System
|
||||
btrfs-progs
|
||||
e2fsprogs
|
||||
openssl
|
||||
pkg-config
|
||||
util-linux
|
||||
];
|
||||
shellHook = ''
|
||||
export LIBCLANG_PATH="${pkgs.llvmPackages.libclang.lib}/lib"
|
||||
export CLANG_PATH="${pkgs.llvmPackages.clang}/bin/clang"
|
||||
export RUST_BACKTRACE=1
|
||||
echo "Ready to make some Rust!"
|
||||
'';
|
||||
};
|
||||
};
|
||||
# For `nix develop` (optional, can be skipped):
|
||||
devShell = pkgs.mkShell {
|
||||
nativeBuildInputs = with pkgs; [ rustc cargo ];
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue