.dotfiles/templates/cpp_flake.nix
2023-12-11 02:57:34 +01:00

38 lines
771 B
Nix

# flake.nix
{
description = "C/C++ environment";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
};
outputs = {nixpkgs, ...}: let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
llvm = pkgs.llvmPackages_latest;
in {
devShells.${system}.default = pkgs.mkShell {
packages = with pkgs; [
gcc
#builder
cmake
gnumake
#headers
clang-tools
#lsp
llvm.libstdcxxClang
#tools
cppcheck
valgrind
doxygen
];
hardeningDisable = ["all"];
# direnv does not allow aliases, use scripts as a workaround
shellHook = ''
PATH_add ~/.dotfiles/scripts/devShell
'';
# ...
};
};
}