Skip to content

Commit

Permalink
chore: make nix compilation environment config more robust (#5183)
Browse files Browse the repository at this point in the history
* chore: improve nix-shell support

* fix: add pkg-config

* ci: add a github action to ensure build on clean system

* ci: optimise dependencies of task

* ci: move clean build to nightly
  • Loading branch information
sunng87 authored Dec 18, 2024
1 parent 548e198 commit 2107737
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 5 deletions.
11 changes: 11 additions & 0 deletions .github/workflows/nightly-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,17 @@ jobs:
GT_S3_REGION: ${{ vars.AWS_CI_TEST_BUCKET_REGION }}
UNITTEST_LOG_DIR: "__unittest_logs"

cleanbuild-linux-nix:
runs-on: ubuntu-latest-8-cores
timeout-minutes: 60
needs: [coverage, fmt, clippy, check]
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
with:
nix_path: nixpkgs=channel:nixos-unstable
- run: nix-shell --pure --run "cargo build"

check-status:
name: Check status
needs: [sqlness-test, sqlness-windows, test-on-windows]
Expand Down
1 change: 1 addition & 0 deletions rust-toolchain.toml
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
[toolchain]
channel = "nightly-2024-10-19"
components = ["rust-analyzer"]
15 changes: 10 additions & 5 deletions shell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,24 @@ let
pkgs = import nixpkgs { config = {}; overlays = []; };
in

pkgs.mkShellNoCC {
packages = with pkgs; [
pkgs.mkShell rec {
nativeBuildInputs = with pkgs; [
pkg-config
git
clang
gcc
mold
libgit2
protobuf
mold
(fenix.fromToolchainFile {
dir = ./.;
})
fenix.rust-analyzer
cargo-nextest
taplo
];

buildInputs = with pkgs; [
libgit2
];

LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath buildInputs;
}

0 comments on commit 2107737

Please sign in to comment.