|
74 | 74 | !(builtins.elem baseName ignoredPaths); |
75 | 75 | }; |
76 | 76 |
|
77 | | - chromiumPath = |
78 | | - if pkgs.stdenv.isDarwin then |
79 | | - "${pkgs.chromium}/Applications/Chromium.app/Contents/MacOS/Chromium" |
80 | | - else |
81 | | - "${pkgs.chromium}/bin/chromium"; |
| 77 | + # Chromium is only available on Linux in nixpkgs |
| 78 | + chromiumPath = if pkgs.stdenv.isLinux then "${pkgs.chromium}/bin/chromium" else null; |
82 | 79 |
|
83 | 80 | basePnpmAttrs = { |
84 | 81 | inherit src; |
|
149 | 146 | devShells.default = pkgs.mkShell { |
150 | 147 | name = "roo-code-dev"; |
151 | 148 |
|
152 | | - packages = with pkgs; [ |
153 | | - nodejs |
154 | | - pnpm |
155 | | - git |
156 | | - python3 |
157 | | - pkg-config |
158 | | - gnumake |
159 | | - turbo |
160 | | - chromium |
161 | | - ripgrep |
162 | | - jp2a |
163 | | - nodePackages.typescript-language-server |
164 | | - nil |
165 | | - ]; |
| 149 | + packages = |
| 150 | + with pkgs; |
| 151 | + [ |
| 152 | + nodejs |
| 153 | + pnpm |
| 154 | + git |
| 155 | + python3 |
| 156 | + pkg-config |
| 157 | + gnumake |
| 158 | + turbo |
| 159 | + ripgrep |
| 160 | + jp2a |
| 161 | + nodePackages.typescript-language-server |
| 162 | + nil |
| 163 | + ] |
| 164 | + ++ lib.optionals stdenv.isLinux [ |
| 165 | + chromium |
| 166 | + ]; |
166 | 167 |
|
167 | 168 | buildInputs = |
168 | 169 | with pkgs; |
|
175 | 176 |
|
176 | 177 | env = { |
177 | 178 | PUPPETEER_SKIP_CHROMIUM_DOWNLOAD = "1"; |
178 | | - PUPPETEER_EXECUTABLE_PATH = chromiumPath; |
179 | 179 | RIPGREP_PATH = "${pkgs.ripgrep}/bin/rg"; |
180 | 180 | NODE_ENV = "development"; |
| 181 | + } |
| 182 | + // lib.optionalAttrs pkgs.stdenv.isLinux { |
| 183 | + PUPPETEER_EXECUTABLE_PATH = chromiumPath; |
181 | 184 | }; |
182 | 185 |
|
183 | 186 | shellHook = '' |
|
321 | 324 | checks = { |
322 | 325 | lint = mkPnpmCheck "lint" "lint" { }; |
323 | 326 | typecheck = mkPnpmCheck "typecheck" "check-types" { }; |
324 | | - test = mkPnpmCheck "test" "test" { |
325 | | - nativeBuildInputs = basePnpmAttrs.nativeBuildInputs ++ [ pkgs.chromium ]; |
326 | | - CI = "true"; |
327 | | - PUPPETEER_SKIP_CHROMIUM_DOWNLOAD = "1"; |
328 | | - PUPPETEER_EXECUTABLE_PATH = chromiumPath; |
329 | | - }; |
| 327 | + test = mkPnpmCheck "test" "test" ( |
| 328 | + { |
| 329 | + CI = "true"; |
| 330 | + PUPPETEER_SKIP_CHROMIUM_DOWNLOAD = "1"; |
| 331 | + } |
| 332 | + // lib.optionalAttrs pkgs.stdenv.isLinux { |
| 333 | + nativeBuildInputs = basePnpmAttrs.nativeBuildInputs ++ [ pkgs.chromium ]; |
| 334 | + PUPPETEER_EXECUTABLE_PATH = chromiumPath; |
| 335 | + } |
| 336 | + ); |
330 | 337 |
|
331 | 338 | format = pkgs.stdenvNoCC.mkDerivation { |
332 | 339 | name = "roo-code-format-check"; |
|
0 commit comments