this repo has no description
1{ 2 description = "atproto github"; 3 4 inputs = { 5 nixpkgs.url = "github:nixos/nixpkgs"; 6 indigo = { 7 url = "github:oppiliappan/indigo"; 8 flake = false; 9 }; 10 }; 11 12 outputs = { 13 self, 14 nixpkgs, 15 indigo, 16 }: let 17 supportedSystems = ["x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin"]; 18 forAllSystems = nixpkgs.lib.genAttrs supportedSystems; 19 nixpkgsFor = forAllSystems (system: 20 import nixpkgs { 21 inherit system; 22 overlays = [self.overlays.default]; 23 }); 24 in { 25 overlays.default = final: prev: { 26 indigo-lexgen = with final; 27 final.buildGoModule { 28 pname = "indigo-lexgen"; 29 version = "0.1.0"; 30 src = indigo; 31 subPackage = ["cmd/lexgen"]; 32 vendorHash = "sha256-pGc29fgJFq8LP7n/pY1cv6ExZl88PAeFqIbFEhB3xXs="; 33 doCheck = false; 34 }; 35 }; 36 packages = forAllSystems (system: { 37 inherit (nixpkgsFor."${system}") indigo-lexgen; 38 }); 39 defaultPackage = forAllSystems (system: nixpkgsFor.${system}.indigo-lexgen); 40 formatter = forAllSystems (system: nixpkgsFor."${system}".alejandra); 41 devShells = forAllSystems (system: let 42 pkgs = nixpkgsFor.${system}; 43 staticShell = pkgs.mkShell.override { 44 stdenv = pkgs.pkgsStatic.stdenv; 45 }; 46 in { 47 default = staticShell { 48 nativeBuildInputs = [ 49 pkgs.go 50 pkgs.air 51 pkgs.gopls 52 pkgs.httpie 53 pkgs.indigo-lexgen 54 pkgs.litecli 55 pkgs.websocat 56 ]; 57 }; 58 }); 59 apps = forAllSystems (system: let 60 pkgs = nixpkgsFor."${system}"; 61 air-watcher = name: 62 pkgs.writeShellScriptBin "run" 63 '' 64 ${pkgs.air}/bin/air -c /dev/null -build.cmd "${pkgs.go}/bin/go build -o ./out/${name}.out ./cmd/${name}/main.go" -build.bin "./out/${name}.out" 65 ''; 66 in { 67 watch-appview = { 68 type = "app"; 69 program = ''${air-watcher "appview"}/bin/run''; 70 }; 71 watch-knotserver = { 72 type = "app"; 73 program = ''${air-watcher "knotserver"}/bin/run''; 74 }; 75 }); 76 }; 77}