atproto pastebin service: https://plonk.li
1{ 2 inputs = { 3 nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; 4 }; 5 6 outputs = { 7 self, 8 nixpkgs, 9 }: let 10 supportedSystems = ["x86_64-linux" "aarch64-linux" "aarch64-darwin"]; 11 forAllSystems = nixpkgs.lib.genAttrs supportedSystems; 12 nixpkgsFor = forAllSystems (system: 13 import nixpkgs { 14 inherit system; 15 overlays = [self.overlay.default]; 16 }); 17 in { 18 overlay.default = final: prev: let 19 pname = "plonk"; 20 version = "0.1.0"; 21 in { 22 plonk = with final; 23 buildNpmPackage { 24 inherit pname version; 25 src = ./.; 26 packageJson = ./package.json; 27 buildPhase = "npm run build"; 28 npmDepsHash = "sha256-qGCbaFAHd/s9hOTWMjHCam6Kf6pU6IWPybfwYh0sOwc="; 29 }; 30 }; 31 32 packages = forAllSystems (system: { 33 inherit (nixpkgsFor."${system}") plonk; 34 }); 35 36 defaultPackage = forAllSystems (system: nixpkgsFor."${system}".plonk); 37 38 devShell = forAllSystems (system: let 39 pkgs = nixpkgsFor."${system}"; 40 in 41 pkgs.mkShell { 42 nativeBuildInputs = [ 43 pkgs.nodejs 44 pkgs.biome 45 pkgs.typescript 46 pkgs.nodePackages.typescript-language-server 47 ]; 48 }); 49 50 formatter = forAllSystems (system: nixpkgsFor."${system}".alejandra); 51 }; 52}