Skip to content

NixOS keychain support is broken #3081

@queze1

Description

@queze1

Describe the bug

Copilot fails to access the system keychain despite libsecret, GNOME Keyring and Seahorse being installed.

$ copilot login
To authenticate, visit https://github.com/login/device and enter code XXXX-XXXX.
Waiting for authorization...
System keychain unavailable. Store token in plaintext config file? (y/N)

Affected version

GitHub Copilot CLI 1.0.32

Steps to reproduce the behavior

  1. Install libsecret, GNOME Keyring, Seahorse, and Copilot CLI

Home Manager:

home.packages = with pkgs; [
  libsecret
  github-copilot-cli
]

NixOS:

services.gnome.gnome-keyring.enable = true;
programs.seahorse.enable = true;
  1. nixos-rebuild switch, reboot
  2. Run copilot login

Expected behavior

That Copilot CLI stores the token with a keychain instead of prompting to store it in plaintext.

Additional context

~ nix-info --markdown
 - system: `"aarch64-linux"`
 - host os: `Linux 6.18.24, NixOS, 26.05 (Yarara), 26.05.20260427.1c3fe55`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.34.6`
 - channels(root): `"nixos-25.11"`
 - nixpkgs: `/nix/store/l61vfkyy0qrnz9bmgx84fa7z3bjzhyp4-source`

~ fastfetch
...
Host: QEMU Virtual Machine (virt-10.0)
Kernel: Linux 6.18.24
Shell: fish 4.6.0
WM: niri 26.04 (Wayland)
Terminal: foot 1.26.1
CPU: Virtualized Apple Silicon (8)
GPU: RedHat Virtio 1.0 GPU

~ command -v secret-tool
/etc/profiles/per-user/<user>/bin/secret-tool

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:authenticationLogin, OAuth, device auth, token management, and keychain integrationarea:platform-linuxLinux-specific: Wayland, X11, Ubuntu, Fedora, Alpine, ARM, terminal emulators

    Type

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions