commit 6286cf3231243bc512bf4d70529b5d88679d9c0b Author: Adam JOLY Date: Sat Nov 9 19:24:39 2024 +0100 「🎉」 init(CPP02): Starting diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..3550a30 --- /dev/null +++ b/.envrc @@ -0,0 +1 @@ +use flake diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..64d0bab --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +obj/ +compile_commands.json +.cache +.direnv +flake.lock diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..3ce3ed9 --- /dev/null +++ b/flake.nix @@ -0,0 +1,39 @@ +{ + description = "A Nix-flake-based C/C++ development environment"; + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; + pogit = { + url = "github:y-syo/pogit"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + + outputs = inputs@{ nixpkgs, ... }: + let + supportedSystems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; + forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f { + pkgs = import nixpkgs { inherit system; }; + }); + in { + devShells = forEachSupportedSystem ({ pkgs }: { + default = pkgs.mkShell.override + {} + { + buildInputs = with pkgs;[ + + ]; + hardeningDisable = [ "all" ]; + packages = with pkgs; [ + gcc11 + clang_12 + norminette + valgrind + git + gdb + inputs.pogit.packages.${pkgs.system}.default + python312Packages.compiledb + ]; + }; + }); + }; +}