{ description = "nobbz.dev - Website"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixpkgs-unstable"; d2n.url = "github:nix-community/dream2nix"; d2n.inputs.all-cabal-json.follows = "nixpkgs"; nix-filter.url = "github:numtide/nix-filter"; flake-parts.url = "github:hercules-ci/flake-parts"; pre-commit.url = "github:cachix/pre-commit-hooks.nix"; }; outputs = { d2n, nix-filter, flake-parts, pre-commit, ... } @ inputs: let systems = ["x86_64-linux" "aarch64-linux"]; in flake-parts.lib.mkFlake {inherit inputs;} { inherit systems; imports = [d2n.flakeModuleBeta pre-commit.flakeModule ./nix/site.nix ./nix/hooks.nix]; dream2nix.config.projectRoot = ./.; perSystem = { self', config, pkgs, system, ... }: { apps.serve.program = "${pkgs.writeShellScript "serve" '' ${pkgs.miniserve}/bin/miniserve -p 3001 --index index.html ${self'.packages.default} ''}"; packages.default = self'.packages.srx_dev; devShells.default = pkgs.mkShell { packages = builtins.attrValues { inherit (pkgs) yarn; inherit (pkgs) alejandra nil; }; shellHook = config.pre-commit.installationScript; }; }; }; }