compile with crane #950

Merged
lx merged 1 commit from nix-crane into main 2025-02-03 15:54:54 +00:00
Owner

Replace cargo2nix, which is not seeing regular updates recently, with crane.

This does not separate each Garage crate into a separate Nix derivation. I think recently caching was not working correctly for Garage crates, debug builds were always rebuilding everything. With crane, we always rebuild all garage crates but it is done all at once with cargo build which allows for the best speed as Cargo knows best how to do parallelism.

  • Build with Crane in flake.nix
  • Cross-compilation
  • Use the mold linker for debug builds
  • implement tests
  • Update default.nix and shell.nix
  • Update CI scripts
Replace cargo2nix, which is not seeing regular updates recently, with [crane](https://github.com/ipetkov/crane). This does not separate each Garage crate into a separate Nix derivation. I think recently caching was not working correctly for Garage crates, debug builds were always rebuilding everything. With crane, we always rebuild all garage crates but it is done all at once with cargo build which allows for the best speed as Cargo knows best how to do parallelism. - [x] Build with Crane in `flake.nix` - [x] Cross-compilation - [x] Use the `mold` linker for debug builds - [x] implement tests - [x] Update default.nix and shell.nix - [x] Update CI scripts
lx added 4 commits 2025-02-01 22:45:55 +00:00
wip: build with crane
Some checks failed
ci/woodpecker/push/debug Pipeline failed
1127239215
- cross compiling doesnt work (c compiler fails)
- default.nix and shell.nix are not updated
cross compilation seems to work
Some checks failed
ci/woodpecker/push/debug Pipeline failed
e819e1a631
native builds: link with mold
Some checks failed
ci/woodpecker/push/debug Pipeline failed
ci/woodpecker/pr/debug Pipeline failed
acc8d39fd6
Owner

Cannot wait for thissss!

Cannot wait for thissss!
lx added 1 commit 2025-02-02 18:52:53 +00:00
nix: fix tests and reorganize flake outputs
Some checks failed
ci/woodpecker/pr/debug Pipeline failed
ci/woodpecker/push/debug Pipeline failed
6ee5ab066a
lx force-pushed nix-crane from 6ee5ab066a to 6b727dc6c1 2025-02-02 18:53:59 +00:00 Compare
lx added 3 commits 2025-02-02 19:31:34 +00:00
lx added 1 commit 2025-02-02 19:33:07 +00:00
fix cargo fmt
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
e7becb3379
lx added 1 commit 2025-02-02 19:34:14 +00:00
woodpecker: remove --no-build-outpu
All checks were successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/pr/debug Pipeline was successful
6294e69c2b
lx added 1 commit 2025-02-02 19:42:08 +00:00
remove git_version in flake, always call it "dev"
All checks were successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/pr/debug Pipeline was successful
55cd2b4051
lx added 1 commit 2025-02-02 19:53:07 +00:00
build release builds with crane in ci
Some checks failed
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/deployment/release/4 Pipeline is pending
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/2 Pipeline failed
ci/woodpecker/deployment/release/3 Pipeline failed
ci/woodpecker/deployment/release/1 Pipeline failed
ci/woodpecker/deployment/publish unknown status
32305cd2db
lx added 1 commit 2025-02-02 20:04:09 +00:00
parallelize tests run (they run in different nix sandboxes)
Some checks are pending
ci/woodpecker/push/debug Pipeline is pending
ci/woodpecker/pr/debug Pipeline is pending
63074c3cb3
lx force-pushed nix-crane from 63074c3cb3 to 8ab0bb2646 2025-02-02 20:08:57 +00:00 Compare
lx force-pushed nix-crane from 8ab0bb2646 to 05a98ff45c 2025-02-02 20:13:00 +00:00 Compare
lx added 1 commit 2025-02-02 20:18:08 +00:00
get rid of cargo.nix
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
63aef19bbb
lx added 2 commits 2025-02-02 21:03:06 +00:00
fix dependency handling for tests
Some checks failed
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/3 Pipeline failed
ci/woodpecker/deployment/release/1 Pipeline failed
ci/woodpecker/deployment/release/2 Pipeline failed
ci/woodpecker/deployment/release/4 Pipeline failed
ci/woodpecker/deployment/publish unknown status
6228f735ef
lx added 1 commit 2025-02-03 09:21:58 +00:00
fix scripts to use result/ instead of result-bin/
Some checks failed
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/2 Pipeline was successful
ci/woodpecker/deployment/release/3 Pipeline was successful
ci/woodpecker/deployment/release/1 Pipeline was successful
ci/woodpecker/deployment/release/4 Pipeline was successful
ci/woodpecker/deployment/publish Pipeline failed
20f8f75823
lx added 1 commit 2025-02-03 09:48:54 +00:00
fix rebuild_index.nix
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/3 Pipeline was successful
ci/woodpecker/deployment/release/2 Pipeline was successful
ci/woodpecker/deployment/release/1 Pipeline was successful
ci/woodpecker/deployment/release/4 Pipeline was successful
ci/woodpecker/deployment/publish Pipeline was successful
edc40242a4
lx changed title from WIP: compile with crane to compile with crane 2025-02-03 14:37:55 +00:00
lx added 1 commit 2025-02-03 14:55:29 +00:00
nix & ci fixes
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
4f04550664
lx added 1 commit 2025-02-03 15:01:55 +00:00
rm cargo config.toml and update makefile
All checks were successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/3 Pipeline was successful
ci/woodpecker/deployment/release/2 Pipeline was successful
ci/woodpecker/deployment/release/1 Pipeline was successful
ci/woodpecker/deployment/release/4 Pipeline was successful
ci/woodpecker/deployment/publish Pipeline was successful
edc6736502
lx force-pushed nix-crane from edc6736502 to 390a5d97fe 2025-02-03 15:47:32 +00:00 Compare
lx merged commit b9df2d1ad1 into main 2025-02-03 15:54:54 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Deuxfleurs/garage#950
No description provided.