NVIDIA / NVIDIA/nvidia-settings

Support alternative but still default application prorile locations

Open
#50 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
345
Forks
92
PR merge metrics
No merged PRs in 30d

Description

cat /usr/local/bin/nvidia-bug-report.sh | grep application
        append_file_or_dir_silent "$DIR/.nv/nvidia-application-profiles-rc"
        append_file_or_dir_silent "$DIR/.nv/nvidia-application-profiles-rc.backup"
        append_file_or_dir_silent "$DIR/.nv/nvidia-application-profiles-rc.d"
        append_file_or_dir_silent "$DIR/.nv/nvidia-application-profiles-rc.d.backup"
        append_silent "$DIR/.nv/nvidia-application-profile-globals-rc"
        append_silent "$DIR/.nv/nvidia-application-profile-globals-rc.backup"
append_file_or_dir_silent "/etc/nvidia/nvidia-application-profiles-rc"
append_file_or_dir_silent "/etc/nvidia/nvidia-application-profiles-rc.d"
append_file_or_dir_silent /usr/share/nvidia/nvidia-application-profiles-*-rc

The reason nvidia-bug-report.sh appends so many files to the report log is these are all default locations for the rc (and key...) files to exist. For example Clear Linux has a philosophy of viewing /usr/share as sacred and stores its default config files there. /etc/ is a better place for the rc files, imo and allows CL users for example to remove /etc and /var iirc to do a factory reset.

The driver uses the same logic as the bug reporting tool. For nvidia-settings to be anything but impotent it must implement the SAME hunting logic as the driver. Just looking in /usr/share became no longer acceptable after the driver started hunting.

The driver doesn't hunt for 1 file to use it parses each file per application, later entries, later files override previous settings.

See https://download.nvidia.com/XFree86/Linux-x86_64/390.77/README/profiles.html to understand how the logic works.

Contributor guide

No contributing guide indexed for this repository

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 by reviewing the locations collected in /usr/local/bin/nvidia-bug-report.sh and the profiles.html documentation for the driver's profile lookup and override order. Trace the corresponding nvidia-settings profile-loading entry point, then verify that files in all documented default locations are parsed in order and later entries override earlier settings.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.