diff --git a/.envrc b/.envrc new file mode 100644 index 00000000..3550a30f --- /dev/null +++ b/.envrc @@ -0,0 +1 @@ +use flake diff --git a/.gitignore b/.gitignore index 1aca8d47..9b4bb157 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /rootfs /installer bootbits/ +/.direnv/ diff --git a/flake.lock b/flake.lock index b7cbaec2..b2fddfec 100644 --- a/flake.lock +++ b/flake.lock @@ -34,28 +34,7 @@ "root": { "inputs": { "flake-compat": "flake-compat", - "nixpkgs": "nixpkgs", - "treefmt-nix": "treefmt-nix" - } - }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1754847726, - "narHash": "sha256-2vX8QjO5lRsDbNYvN9hVHXLU6oMl+V/PsmIiJREG4rE=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "7d81f6fb2e19bf84f1c65135d1060d829fae2408", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" + "nixpkgs": "nixpkgs" } } }, diff --git a/flake.nix b/flake.nix index 58b7b273..5ca5fa2d 100644 --- a/flake.nix +++ b/flake.nix @@ -2,18 +2,14 @@ description = "Apple Silicon support for NixOS"; inputs = { - nixpkgs = { - url = "github:nixos/nixpkgs/nixos-unstable"; - }; - + nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; flake-compat.url = "github:nix-community/flake-compat"; - treefmt-nix.url = "github:numtide/treefmt-nix"; - treefmt-nix.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = { self, ... }@inputs: let + inherit (self) outputs; # build platforms supported for uboot in nixpkgs systems = [ "aarch64-linux" @@ -21,32 +17,27 @@ ]; # "i686-linux" omitted forAllSystems = inputs.nixpkgs.lib.genAttrs systems; - - treefmtEval = forAllSystems ( - system: - let - pkgs = inputs.nixpkgs.legacyPackages.${system}; - in - inputs.treefmt-nix.lib.evalModule pkgs { - projectRootFile = "flake.nix"; - programs.nixfmt.enable = true; - } - ); in { - formatter = forAllSystems (system: treefmtEval.${system}.config.build.wrapper); + formatter = forAllSystems (system: inputs.nixpkgs.legacyPackages.${system}.nixfmt-tree); checks = forAllSystems (system: { - formatting = treefmtEval.${system}.config.build.check self; + formatting = outputs.formatter.${system}; + }); + + devShells = forAllSystems (system: { + default = inputs.nixpkgs.legacyPackages.${system}.mkShellNoCC { + packages = [ outputs.formatter.${system} ]; + }; }); - overlays = rec { + overlays = { apple-silicon-overlay = import ./apple-silicon-support/packages/overlay.nix; - default = apple-silicon-overlay; + default = outputs.overlays.apple-silicon-overlay; }; - nixosModules = rec { + nixosModules = { apple-silicon-support = ./apple-silicon-support; - default = apple-silicon-support; + default = outputs.nixosModules.apple-silicon-support; }; packages = forAllSystems ( @@ -56,7 +47,7 @@ crossSystem.system = "aarch64-linux"; localSystem.system = system; overlays = [ - self.overlays.default + outputs.overlays.default ]; }; in @@ -80,7 +71,7 @@ pkgs = import inputs.nixpkgs { crossSystem.system = "aarch64-linux"; localSystem.system = system; - overlays = [ self.overlays.default ]; + overlays = [ outputs.overlays.default ]; }; specialArgs = {