👁️
5
fork

Configure Feed

Select the types of activity you want to include in your feed.

at dev 66 lines 2.2 kB view raw
1{ 2 inputs = { 3 nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; 4 utils.url = "github:numtide/flake-utils"; 5 }; 6 7 outputs = 8 { 9 self, 10 nixpkgs, 11 utils, 12 }: 13 utils.lib.eachDefaultSystem ( 14 system: 15 let 16 pkgs = import nixpkgs { 17 inherit system; 18 overlays = [ 19 (final: prev: { 20 atproto-goat = prev.atproto-goat.overrideAttrs (old: { 21 # Patch vendored indigo to remove large-string lint warning 22 # (we intentionally use large strings for long-form richtext content) 23 preBuild = 24 (old.preBuild or "") 25 + '' 26 if [ -d vendor ]; then 27 chmod -R u+w vendor 28 lintFile=vendor/github.com/bluesky-social/indigo/lex/lexlint/lint.go 29 # Verify the pattern exists before patching 30 grep -q 'large-string' "$lintFile" || (echo "ERROR: large-string check not found in lint.go - pattern may have changed" && exit 1) 31 # Remove the large-string check 32 sed -i '/if v.MaxLength != nil && \*v.MaxLength > 20\*1024/,/^[[:space:]]*}$/d' "$lintFile" 33 # Verify it was removed 34 ! grep -q 'large-string' "$lintFile" || (echo "ERROR: failed to remove large-string check" && exit 1) 35 fi 36 ''; 37 }); 38 }) 39 ]; 40 }; 41 in 42 { 43 devShell = 44 with pkgs; 45 mkShell { 46 buildInputs = [ 47 nodejs_22 48 typescript 49 just 50 jq 51 atproto-goat 52 cacert # CA certificates for TLS verification 53 # language servers 54 typescript-language-server 55 typespec 56 # playwright browser for screenshot scripts 57 playwright-driver.browsers 58 ]; 59 shellHook = '' 60 export PLAYWRIGHT_BROWSERS_PATH=${playwright-driver.browsers} 61 export PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS=true 62 ''; 63 }; 64 } 65 ); 66}