{ description = "srx.digital - Website"; inputs = { nixpkgs.url = "nixpkgs/nixos-unstable"; flake-parts.url = "github:hercules-ci/flake-parts"; treefmt-nix.url = "github:numtide/treefmt-nix"; nix-filter.url = "github:numtide/nix-filter"; pre-commit.url = "github:cachix/pre-commit-hooks.nix"; }; outputs = { self, flake-parts, treefmt-nix, pre-commit, ... }@inputs: let systems = [ "x86_64-linux" "aarch64-linux" ]; in flake-parts.lib.mkFlake { inherit inputs; } { inherit systems; imports = [ pre-commit.flakeModule treefmt-nix.flakeModule ./nix/hooks.nix ./nix/devshell.nix ./nix/package.nix ]; perSystem = { config, pkgs, self', ... }: { apps = { serve.program = "${pkgs.writeShellScript "serve" '' ${pkgs.miniserve}/bin/miniserve -p 3001 --index index.html ${self'.packages.default} ''}"; }; packages.default = self'.packages.srx-digital; treefmt.config = { projectRootFile = "flake.nix"; programs.nixpkgs-fmt.enable = true; }; formatter = config.treefmt.build.wrapper; }; flake.hydraJobs = { inherit (self) packages; }; }; }