From 435ceb1189d12cbcfac0cb9375ff67aa2e913940 Mon Sep 17 00:00:00 2001 From: Tao Tien <29749622+taotien@users.noreply.github.com> Date: Mon, 19 Feb 2024 22:41:58 -0800 Subject: [PATCH] cargo optimizations --- users/tao/cargo.nix | 38 ++++++++++++++++++++++++++++++++++++++ users/tao/home.nix | 30 +----------------------------- 2 files changed, 39 insertions(+), 29 deletions(-) create mode 100644 users/tao/cargo.nix diff --git a/users/tao/cargo.nix b/users/tao/cargo.nix new file mode 100644 index 0000000..1958ce2 --- /dev/null +++ b/users/tao/cargo.nix @@ -0,0 +1,38 @@ +{ pkgs, ... }: { + home.file.".cargo/config.toml".text = '' + [alias] + rr = "run --release" + + [build] + target = "x86_64-unknown-linux-musl" + rustc-wrapper = "${pkgs.sccache}/bin/sccache" + rustflags = ["-Z", "threads=8"] + + [unstable] + codegen-backend = true + + [provile.dev] + debug = 0 + strip = "debuginfo" + opt-level = 1 + lto = "off" + codegen-backend = "cranelift" + + [profile.dev.package."*"] + # slow clean build for faster incrementals + opt-level = 3 + + [profile.release] + incremental = true + codegen-units = 1 + lto = "fat" + + [target.x86-unknown-linux-musl] + # linker = "musl-gcc" + linker = "clang" + rustflag = ["-C", "target-cpu=native", "link-arg=ld-path=${pkgs.mold}/bin/mold"] + + # https://benw.is/posts/how-i-improved-my-rust-compile-times-by-seventy-five-percent + # jonhoo + ''; +} diff --git a/users/tao/home.nix b/users/tao/home.nix index ba95d65..0cf552a 100644 --- a/users/tao/home.nix +++ b/users/tao/home.nix @@ -2,9 +2,9 @@ imports = [ (import ./helix.nix { inherit pkgs inputs; }) # ./hyprland.nix + ./cargo.nix ]; - programs = { jujutsu = { enable = true; @@ -54,34 +54,6 @@ }; }; - home.file.".cargo/config.toml".text = '' - [alias] - rr = "run --release" - - [build] - target = "x86_64-unknown-linux-musl" - rustc-wrapper = "${pkgs.sccache}/bin/sccache" - - [unstable] - codegen-backend = true - - [provile.dev] - debug = 0 - strip = "debuginfo" - lto = "off" - codegen-backend = "cranelift" - - [profile.release] - incremental = true - codegen-units = 1 - lto = "fat" - - [target.x86-unknown-linux-musl] - # linker = "musl-gcc" - # linker = "clang" - rustflag = ["-C", "target-cpu=native", "link-arg=ld-path=${pkgs.mold}/bin/mold"] - ''; - home.username = "tao"; home.homeDirectory = "/home/tao"; home.stateVersion = "23.11";