Files
nixpkgs/pkgs/default.nix
T
m3tam3re 8d46992bd1 feat: re-add opencode-desktop as pass-through from anomalyco/opencode
Expose the opencode-desktop Electron app as a package via a pure
pass-through from a new 'opencode' flake input
(github:anomalyco/opencode/dev).

The input intentionally does NOT follow nixpkgs: upstream pins a
node_modules fixed-output derivation hash in nix/hashes.json against
its own nixpkgs snapshot, so following would risk FOD hash mismatches.

- flake.nix: add 'opencode' input (own nixpkgs, dev branch)
- pkgs/default.nix: opencode-desktop pass-through
- docs/packages/opencode.md + README.md: refreshed (Electron, not Tauri)
- CHANGELOG: unreleased entry

Verified: nix flake show lists opencode-desktop (all 4 systems);
output opencode-desktop-1.18.9+f720490 builds & wraps electron-41.
2026-07-30 07:01:22 +02:00

44 lines
1.8 KiB
Nix

# m3ta-nixpkgs package registry
#
# Flake inputs used:
# inputs.basecamp → basecamp (pass-through)
# inputs.openspec → openspec (pass-through)
# inputs.opencode → opencode-desktop (Electron desktop app, pure pass-through)
# inputs.agents → not used directly here (used by lib/)
{
pkgs,
inputs,
...
}: let
system = pkgs.stdenv.hostPlatform.system;
in {
# ── Local packages ────────────────────────────────────────────────
# Standard packages built from source in ./<name>/default.nix.
# No flake inputs required.
sidecar = pkgs.callPackage ./sidecar {};
td = pkgs.callPackage ./td {};
hyprpaper-random = pkgs.callPackage ./hyprpaper-random {};
launch-webapp = pkgs.callPackage ./launch-webapp {};
mem0 = pkgs.callPackage ./mem0 {};
msty-studio = pkgs.callPackage ./msty-studio {};
pomodoro-timer = pkgs.callPackage ./pomodoro-timer {};
rofi-project-opener = pkgs.callPackage ./rofi-project-opener {};
stt-ptt = pkgs.callPackage ./stt-ptt {};
tuxedo-backlight = pkgs.callPackage ./tuxedo-backlight {};
kestractl = pkgs.callPackage ./kestractl {};
openshell = pkgs.callPackage ./openshell {};
openwork = pkgs.callPackage ./openwork {};
zellij-ps = pkgs.callPackage ./zellij-ps {};
vibetyper = pkgs.callPackage ./vibetyper {};
talk = pkgs.callPackage ./talk {};
crunch = pkgs.callPackage ./crunch {};
# ── Pass-through packages ──────────────────────────────────────────
# Imported directly from flake inputs. No local modifications.
basecamp = inputs.basecamp.packages.${system}.default;
openspec = inputs.openspec.packages.${system}.default;
opencode-desktop = inputs.opencode.packages.${system}.opencode-desktop;
}