git-ecosystem / git-ecosystem/git-credential-manager

Support for headless use of SecretService in Linux environments

Open
#2,035 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement platform:linux
Dominant language
C#
Stars
9.3k
Forks
2.9k
Avg merge
7d 1h
Merged PRs (30d)
14

Description

Use of secretservice as a backend store doesn't appear to be allowed when there's no DISPLAY environment variable: https://github.com/git-ecosystem/git-credential-manager/blob/b62021fdd7f0e28bf851580e0afd834976bd79d1/src/shared/Core/CredentialStore.cs#L247

But even the underlying MSAL library has a headless test for that: https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/blob/main/build/template-test-on-linux.yaml#L61

Can we just remove that check from GCM?

Related:

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in src/shared/Core/CredentialStore.cs at the linked check for the DISPLAY environment variable. Compare the behavior with the headless Linux test in the linked MSAL build template and review related issue #565 for context. Done means SecretService can be used without DISPLAY while existing credential-store behavior remains intact.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, linux
Domain
authentication, operating-systems
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.