35 Commits
Author SHA1 Message Date
Thierry DelafontaineandMatthieu Coudron a45a7c4514 opencode: use meta.mainProgram to wrap the main binary
Resolves #9640
2026-07-13 19:22:27 +02:00
Thierry DelafontaineandAustin Horstman c74f4f6cdd opencode: document plugin option usage in settings description 2026-07-11 19:45:00 -05:00
Thierry DelafontaineandAustin Horstman 53ebbdc405 proton-pass-agent: switch to gui domain to prevent error accessing keyring
Fixes the following accessing issue:

```
Error accessing credential on keyring: PlatformFailure(Error { code: -25308, message: "User interaction is not allowed." })
```
2026-07-07 16:08:19 -05:00
Thierry DelafontaineandAustin Horstman f09af49406 opencode: assume most recent version when package=null
Resolves #9589
2026-07-07 09:54:30 -05:00
Thierry DelafontaineandAustin Horstman d1ccd0721e news: add podman registries v2 entry 2026-06-21 09:20:14 -05:00
Thierry DelafontaineandAustin Horstman e3e24bfd0f podman: generate v2 registries.conf
Convert `services.podman.settings.registries` output to v2 format.
Keep legacy `insecure` and `block` inputs, add `registry` entries,
and warn when legacy options are used.

Update podman configuration tests and expected registries.conf output.

Resolves #9501
2026-06-21 09:20:14 -05:00
Thierry DelafontaineandAustin Horstman 3d64f2875e podman: fix container config mount on Darwin
On Darwin, `services.podman` mounts `~/.config/containers` into the Fedora CoreOS VM, but this did not work correctly for two reasons:

* `xdg.configFile` creates symlinks into `/nix/store`, which are broken inside the guest.
* The mount target `~/\.config/containers` is not canonical on Fedora CoreOS, so Podman rejects it.

To fix this, we now:

* materialize the generated Podman config files as real files with `runCommand`
* sync them into `~/.config/containers` during activation, between `linkGeneration` and `podmanMachines`
* use the canonical guest path `/var/home/<user>/.config/containers`

Because adding the config directory to the volume mounts overrides the defaults, we also restore the default Podman volumes as the defaults for the  `machines.<machine>.volumes` attribute while still allowing full overrides.

This change does not affect Linux: `xdg.configFile` still produces store symlinks there.

Closes #9327.
2026-06-01 14:13:42 -05:00
Thierry DelafontaineandRobert Helgesson 736c2084ea podman: ensure openssh is available in PATH
Specifically, the machine initialization command `podman machine init`
requires `ssh-keygen` to generate keys, but `openssh` may not be
available in the system `PATH` by default. This change ensures
`openssh` is available before attempting to create podman machines.

Resolves #9325
2026-05-19 00:24:51 +02:00
Thierry DelafontaineandAustin Horstman f8e57407f4 proton-pass-agent: adapt the services to match the documentation
See https://protonpass.github.io/pass-cli/commands/ssh-agent/#setting-ssh_auth_sock-automatically-on-login section 'Starting the daemon automatically on login'.
2026-04-22 15:25:18 -05:00
Thierry DelafontaineandRobert Helgesson 603626a8da docs: add anchor link icons to headers 2026-02-22 09:48:42 +01:00
Thierry DelafontaineandAustin Horstman 384786dc70 news: add proton-pass-agent entry 2026-01-26 09:44:48 -06:00
Thierry DelafontaineandAustin Horstman 85e3ee7e59 service.proton-pass-agent: init module 2026-01-26 09:44:48 -06:00
Thierry DelafontaineandGitHub 83bcb17377 claude-code: add enableMcpIntegration
Add `enableMcpIntegration` option to merge MCP servers from
`programs.mcp.servers` into Claude Code configuration. Claude Code
servers take precedence over general MCP servers when both define
the same server name.
2026-01-17 21:33:01 -06:00
Thierry DelafontaineandAustin Horstman b52d47d670 news: add podman darwin support entry 2026-01-09 09:15:55 -05:00
Thierry DelafontaineandAustin Horstman f4bcc1ae1c podman: add darwin support with machine management
- restructure module from `podman-linux` to platform-agnostic `podman`
- move linux-specific implementation to `modules/services/podman/linux/`
- add darwin module with declarative machine management
- implement launchd-based watchdog for auto-starting machines
- maintains backward compatibility with existing linux functionality
2026-01-09 09:15:55 -05:00
Thierry DelafontaineandAustin Horstman b1b1c68033 opencode: add custom tools support
Adds support for custom tools - user-defined functions that the LLM can
call during conversations. Custom tools work alongside opencode's built-in
tools and are configured through the new `tools` option.

The configuration follows the same pattern as other opencode settings like
`agents` and `commands`, supporting:
- Inline TypeScript content
- Individual file paths
- Bulk directory imports
2026-01-08 16:32:29 -05:00
Thierry DelafontaineandAustin Horstman 081234b704 opencode: support directory-based configuration for commands, agents, and themes
The `commands`, `agents`, and `themes` options now accept either an
attribute set (existing behavior) or a path to a directory containing
multiple files. When a directory path is provided, it is symlinked to
the appropriate `$XDG_CONFIG_HOME/opencode/` subdirectory.

This change aligns with the existing `skills` option implementation and
provides a more convenient way to manage multiple configuration files
without needing to define each one individually in Nix.
2026-01-08 16:32:29 -05:00
Thierry DelafontaineandGitHub 8e0fa3f242 delta: use finalPackage instead of package in jujitsu config (#8150) 2025-11-10 09:06:43 -06:00
Thierry DelafontaineandAustin Horstman 1342b821db news: add entry for mcp module and integrations
Add news entry documenting the new `programs.mcp` module and MCP
integration support in OpenCode and VSCode modules.
2025-11-03 20:25:16 -06:00
Thierry DelafontaineandAustin Horstman 9ff9a94fd4 vscode: add mcp module integration 2025-11-03 20:25:16 -06:00
Thierry DelafontaineandAustin Horstman c740351870 opencode: add mcp module integration 2025-11-03 20:25:16 -06:00
Thierry DelafontaineandAustin Horstman 083b20c1a0 mcp: init module 2025-11-03 20:25:16 -06:00
Thierry DelafontaineandAustin Horstman 0a3fb53ee2 delta: add jujutsu integration option 2025-10-27 09:11:41 -05:00
Thierry DelafontaineandAustin Horstman 6ea30b26cd opencode: make the themes also accept path
- Removed unnecessary empty-themes test.
2025-10-19 09:47:26 -05:00
Thierry DelafontaineandAustin Horstman fddb33a1a5 opencode: make the rules option also accept a path 2025-10-19 09:47:26 -05:00
Thierry DelafontaineandAustin Horstman 99977131d3 opencode: change tilde (~) to XDG_CONFIG_DIR for command and agent paths
Replace the use of `~` in the documentation for the command and agent
settings with the `XDG_CONFIG_DIR` environment variable to avoid
ambiguity about the config directory. Also switch to the
`{file}` path macro so paths render correctly in the docs and tooling.
2025-10-18 12:41:21 -05:00
Thierry DelafontaineandAustin Horstman faa5b42eca codex: support XDG Base Directory specification
- Configuration file is now placed in XDG_CONFIG_HOME/codex/config.toml by default for versions >=0.2.0 when preferXdgDirectories is enabled.
- Falls back to ~/.codex/config.yaml for versions <0.2.0 and to ~/.codex/config.toml when preferXdgDirectories is disabled
- Sets CODEX_HOME environment variable to $XDG_CONFIG_HOME/codex when using XDG directories.
- Updated tests to verify XDG directory behavior and environment variable presence.
2025-08-07 14:04:33 -05:00
Thierry DelafontaineandAustin Horstman 64796151f7 opencode: add JSON schema reference to config.json output
- Automatically include "$schema": "https://opencode.ai/config.json" in the generated
  opencode config.json file
- Update documentation to mention the added schema property
- Add corresponding "$schema" entry in test config.json file for validation purposes

Closes #7506
2025-07-24 11:05:45 -05:00
Thierry DelafontaineandAustin Horstman 1df662dde0 opencode: add empty-settings test
- Add `empty-settings` test to ensure the config file is not generated
  when no settings are provided
2025-07-24 11:05:45 -05:00
Thierry DelafontaineandAustin Horstman 08edcbe9df opencode: add support for global custom instructions via rules option
- Introduce `rules` option to provide global custom instructions for opencode
- Write `rules` content to `~/.config/opencode/AGENTS.md` if non-empty
- Update tests to cover presence and absence of `AGENTS.md` file with rules content
2025-07-24 11:05:45 -05:00
Thierry DelafontaineandRobert Helgesson d1db9055ea iamb: use correct config directory on macOS
On macOS, configuration files are stored in the platform-standard
directory `~/Library/Application Support/` by default. However, if the
user enables the XDG Base Directory specification by setting
`xdg.enable = true`, iamb should respect the `XDG_CONFIG_HOME`
environment variable (along with other related XDG variables).
Currently, this behavior is not implemented in iamb, a PR has been
opened to fix that -> https://github.com/ulyssa/iamb/pull/478.
2025-07-22 11:38:10 +02:00
Thierry DelafontaineandGitHub 502d9b7d30 codex: starting with v0.2.0 codex uses a TOML configuration file (#7388)
Updated related settings and test files to reflect the new format.
2025-07-06 08:58:22 -05:00
Thierry DelafontaineandGitHub 5a49fe448e opencode: init (#7320) 2025-07-05 16:02:49 -05:00
Thierry DelafontaineandAustin Horstman 427c96044f codex: init 2025-06-09 22:33:16 -05:00
Thierry DelafontaineandAustin Horstman 7e3d76e7f7 maintainers: add delafthi 2025-06-09 22:33:16 -05:00