{ description = "Clan flake for controlling NewEdge infrastructure."; inputs = { clan-core = { url = "git+https://git.clan.lol/clan/clan-core"; inputs.flake-parts.follows = "flake-parts"; inputs.treefmt-nix.follows = "treefmt-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; devshell = { url = "github:numtide/devshell"; inputs.nixpkgs.follows = "nixpkgs"; }; flake-parts = { inputs.nixpkgs-lib.follows = "nixpkgs"; url = "github:hercules-ci/flake-parts"; }; home-manager = { inputs.nixpkgs.follows = "nixpkgs"; url = "github:nix-community/home-manager"; }; import-tree.url = "github:vic/import-tree"; nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; openwrt-imagebuilder = { inputs.nixpkgs.follows = "nixpkgs"; inputs.flake-parts.follows = "flake-parts"; url = "github:astro/nix-openwrt-imagebuilder"; }; treefmt-nix = { url = "github:numtide/treefmt-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; liminix = { url = "git+https://gti.telent.net/dan/liminix"; flake = false; }; }; outputs = { flake-parts, ... }@inputs: flake-parts.lib.mkFlake { inherit inputs; } ( { ... }: { systems = [ "x86_64-linux" ]; imports = [ ./fmt.nix ./shell.nix ./machines ./routers ./inventories ./overlays ./tests ./modules/clan/flake-module.nix ./modules/nixos/flake-module.nix ]; perSystem = { pkgs, system, ... }: { _module.args.pkgs = import inputs.nixpkgs { inherit system; overlays = [ inputs.self.overlays.packagesOverlay ]; config = { }; }; packages.think = pkgs.think-gtcm; packages.think-be = pkgs.think-backend-gtcm; packages.file-uploader = pkgs.gtcm-file-uploader; }; flake.packages.x86_64-linux.myrouter = let pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux; profiles = inputs.openwrt-imagebuilder.lib.profiles { inherit pkgs; }; config = profiles.identifyProfile "glinet_gl-mt6000" // { # add package to include in the image, ie. packages that you don't # want to install manually later packages = [ "tcpdump" ]; disabledServices = [ "dnsmasq" ]; # include files in the images. # to set UCI configuration, create a uci-defauts scripts as per # official OpenWRT ImageBuilder recommendation. files = pkgs.runCommand "image-files" { } '' mkdir -p $out/etc/uci-defaults cat > $out/etc/uci-defaults/99-custom <