diff --git a/optimizations.nix b/optimizations.nix index 9d373da..fe98cc2 100644 --- a/optimizations.nix +++ b/optimizations.nix @@ -62,6 +62,21 @@ in config = mkIf cfg.enable { nixpkgs.overlays = mkBefore [ + (self: super: { + fastStdenv = super.overrideCC super.gccStdenv (super.buildPackages.gcc_latest.overrideAttrs (old: + let + ccAttrs = cc: cc.overrideAttrs (oldAttrs: { + configureFlags = (oldAttrs.configureFlags or []) ++ [ "--with-cpu-64=${generalCfg.cpuArch}" "--with-arch-64=${generalCfg.cpuTune}" ]; + }); + ccOverrides = cc: cc.override { + reproducibleBuild = false; + }; + in { + cc = ccOverrides (ccAttrs old.cc); + } + )); + }) + (self: super: { opensshOptimized = optimizePkg { level = "very-unsafe"; lto = true; } super.openssh; #libxslt = optimizePkg { level = "unsafe"; parallelize = generalCfg.cores; lto = true; } super.libxslt; diff --git a/overlays.nix b/overlays.nix index d2544f2..3260c5b 100644 --- a/overlays.nix +++ b/overlays.nix @@ -103,6 +103,15 @@ in }); # chromium = self.ungoogled-chromium; + gccgo11 = super.wrapCC (super.gcc11.cc.override { + name = "gccgo11"; + langCC = true; + langC = true; + langGo = true; + profiledCompiler = false; + }); + gccgo = self.gccgo11; + xwayland = super.xwayland.overrideAttrs (old: { buildInputs = old.buildInputs or [] ++ [ super.makeWrapper ]; postInstall = old.postInstall or "" + ''