Something went wrong. Try again.
opencode v2 mirror
Something went wrong. Try again.
opencode flake.nix
1.8 kB · 73 lines
Nix
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374{ description = "OpenCode development flake";
inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; };
outputs = { self, nixpkgs, ... }: let systems = [ "aarch64-linux" "x86_64-linux" "aarch64-darwin" "x86_64-darwin" ]; forEachSystem = f: nixpkgs.lib.genAttrs systems (system: f nixpkgs.legacyPackages.${system}); rev = self.shortRev or self.dirtyShortRev or "dirty"; in { devShells = forEachSystem (pkgs: { default = pkgs.mkShell { packages = with pkgs; [ bun nodejs_20 pkg-config openssl git ]; }; });
overlays = { default = final: _prev: let node_modules = final.callPackage ./nix/node_modules.nix { inherit rev; }; in rec { opencode = final.callPackage ./nix/opencode.nix { inherit node_modules; }; opencode-desktop = final.callPackage ./nix/desktop.nix { inherit opencode; }; }; };
packages = forEachSystem ( pkgs: let node_modules = pkgs.callPackage ./nix/node_modules.nix { inherit rev; }; in rec { default = opencode; opencode = pkgs.callPackage ./nix/opencode.nix { inherit node_modules; }; opencode-desktop = pkgs.callPackage ./nix/desktop.nix { inherit opencode; }; # Updater derivation with fakeHash - build fails and reveals correct hash node_modules_updater = node_modules.override { hash = pkgs.lib.fakeHash; }; } ); };}