From 36bbc39eaf739be8278670839475582b19ae84e9 Mon Sep 17 00:00:00 2001 From: Peter Boy Date: Aug 29 2023 10:29:37 +0000 Subject: Renamed some files following a common naming convention. --- diff --git a/modules/ROOT/pages/bugzilla-an-introduction.adoc b/modules/ROOT/pages/bugzilla-an-introduction.adoc new file mode 100644 index 0000000..037620a --- /dev/null +++ b/modules/ROOT/pages/bugzilla-an-introduction.adoc @@ -0,0 +1,47 @@ += Using Bugzilla +Ben Cotton +:revnumber: F36 onwards +:revdate: 2022-03-11 +:category: Troubleshooting +:tags: How-to, Bugzilla +:page-aliases: bugzilla/index.adoc + + +Fedora uses https://bugzilla.redhat.com[Red Hat Bugzilla] for bug tracking. This page and the other pages under the "Bugs" header on the left offer some tips and guidance. + + +== Permissions + +Any user, including "anonymous" (i.e. not logged in) users can view bugs. (Note that some bugs or comments may be marked "private" +or restricted to specific groups. This is rare in Fedora and is generally to protect sensitive information that might be in an attachment or log snippet.) + +Any logged-in user can create a bug report or add a comment to an existing bug. + +The reporter or assignee of a bug can modify any field in their own bug. + + +== Automatic changes + +Bugzilla will automatically create links to bug reports or comments that follow the pattern "bug xxxx" or "comment xxxx". + +Bugs marked as xref:bugzilla/find-duplicates.adoc[duplicate] will automatically get a comment referring to the other bug report. The other bug report will automatically get a comment indicating that another bug has been marked as a duplicate of it. + +https://bodhi.fedoraproject.org[Bodhi] — the Fedora updates system — will automatically comment and change the xref:#_status[status] of associated bugs as updates move through the system. + + +== Status and resolution + +Bugzilla uses fields called "Status" and "Resolution" to track the state of a bug report or feature request. + +=== Status + +The table below summarizes the statuses. + +include::program_management::partial$bz_status.adoc[] + + +=== Resolution + +The table below describes the resolutions that can apply to the _CLOSED_ status. + +include::program_management::partial$bz_resolution.adoc[] diff --git a/modules/ROOT/pages/bugzilla-file-a-bug.adoc b/modules/ROOT/pages/bugzilla-file-a-bug.adoc new file mode 100644 index 0000000..efb0335 --- /dev/null +++ b/modules/ROOT/pages/bugzilla-file-a-bug.adoc @@ -0,0 +1,295 @@ += How to file a bug +Ankur Sinha; Joe Walker +:revnumber: all +:revdate: 2023-05-15 +:category: Bugs +:tags: How-to, Bug-Report +//:page-aliases: howto-file-a-bug.adoc +//:imagesdir: ./images + +include::partial$attributes.adoc[] + + +[abstract] +The purpose of this document is to give step by step instructions on filing bugs in Fedora. +For more information about using Bugzilla, +see the xref:bugzilla/index.adoc[Bugs section] of the Quick Docs. + + + +A software bug does not necessarily need to be a software crash. +Any undesired behaviour in software can be filed as a bug. +The package maintainer can then look at the bug report and decide the best course of action. + +TIP: *Anyone can file bugs*: +All users are encouraged to file any bugs they run into. +Bug filing is not limited to only software developers. + +== Terminology + +There are a few terms that are commonly used in this document: + +* *Bug*: A bug is any behaviour in a software that appears unexpected/undesired. +* *Bug tracker*: The Fedora bug tracking system at https://bugzilla.redhat.com. +* *Package*: Each software that is available in Fedora has a formal package name that is used by the bug tracker and other infrastructure tools. + Packages can be searched using the https://src.fedoraproject.org/[Fedora dist-git]. +* *Maintainer*: A body of volunteers that takes care of the software packages provided in Fedora. + These are referred to as "package maintainers". + They keep track of bugs, help with issues, and generally act as middlemen between the developers of the software and Fedora users. +* *QA*: Quality assurance is the process of ensuring that the software works as intended. +* *Bodhi*: The https://bodhi.fedoraproject.org[Fedora QA Web Application]. + + +== Before filing a bug + +https://ask.fedoraproject.org[Ask Fedora] — +the community support forum — +is a good place to start if you're not sure if you've encountered a bug. +Sometimes what is perceived as a bug is a misunderstanding or a question. +The Ask Fedora community can help you figure out if you've encountered a bug — +and if it's specific to Fedora or is in the upstream package. + +=== Step 0: Check the Common Issues page + +We maintain a list of common issues. +Check this site first to see if your issue has been reported — +and if a solution exists. + +* https://fedoraproject.org/wiki/Common_F{MAJOROSVER}_bugs[Fedora Linux {MAJOROSVER}] +* https://fedoraproject.org/wiki/Common_F{PREVVER}_bugs[Fedora Linux {PREVVER}] +* https://discussion.fedoraproject.org/c/ask/common-issues/82/all[Ask Fedora listing] + +=== Step 1: Check for the latest version + +As bugs are reported and fixed, developers collect a set of fixes and periodically release improved versions of their software. +So, before reporting an issue, it is useful to check if you are using the latest version of a software. +The simplest way to get the latest version of software in Fedora is to regularly update your system. +Users of Gnome/KDE and other desktop environments can use their default applications to do so. +These periodically check for updates and notify users. +You can also use the default package manager `dnf` to check and update your system. +Only users with administrator privileges can do so: + + $ sudo dnf upgrade --refresh + +=== Step 2: Check for already filed bugs + +If you are using the latest version of the software available in Fedora, then it is likely that the bug has either not been reported, or has been reported but a fix has not yet been released. +So, it is useful to search the list of already reported bugs before filing a new report. +The https://packages.fedoraproject.org/[Fedora Packages Web application] provides a link the open bugs for a package. +There is also a convenient shortcut that can be used. + + https://bugz.fedoraproject.org/ + +Here, the `package name` must be the formal name of the package. + +TIP: *Finding the name of the package*: If you do not know the formal package name of the software, you can use the https://packages.fedoraproject.org/[Fedora Packages Web Application] to search for it and view the list of bugs there. + +.Searching the Fedora Packages Web Application for Gnome Software. +image::20180825-how-to-file-a-bug-gs.png[] + +NOTE: *Advanced searching*: You can also use the https://bugzilla.redhat.com/query.cgi[advanced search features of the bug tracker] to narrow down your search. +However, this is not necessary. + +If a bug report has already been filed describing the issue, you should provide any extra information you may have. +If there is nothing more to add to the report, you should "CC" (carbon-copy) yourself to the report to receive any updates. +This can be done by clicking on the "Save changes" button when the "Add me to CC list" option is checked as shown below: + + +.The CC list contains all users that should be notified when any updates are made to the report. +image::20180825-how-to-file-a-bug-cc-list.png[] + +== Filing a bug report + +=== Step 0: Create a Bugzilla account + +TIP: *Use your Fedora account*: You can use your https://accounts.fedoraproject.org/[Fedora account] to sign into Bugzilla. +This is preferred, since your Fedora account can also be used to log into all other Fedora services. + +Bugs are filed on https://bugzilla.redhat.com[Fedora's bugzilla instance], and you must have an account there to file bugs or interact with them. +An account requires a valid e-mail address and can be created https://accounts.fedoraproject.org/[here] (click "Register"). +The bug tracker will only send e-mail notifications about bugs that a user is involved in. No other e-mails will be sent. + +=== Step 1: Filing a new bug + +If a bug report for the particular issue has not already been filed, you should file a new one. +The easiest way to file a new report is using the "File a new bug" drop down from the right hand side bar in the https://packages.fedoraproject.org/[Fedora Packages Web application]. + +.The Fedora Packages Web Application provides a convenient shortcut to file new bugs. +image::20180825-how-to-file-a-bug-new-bug-shortcut.png[] + + +This redirects to a new bug report template on the bug tracker. +The image below shows a new bug template: + +.A new bug report template. +image::20180825-how-to-file-a-bug-new-bug.png[] + +The following fields need to be set: + +* *Component*: This will be set to the name of the package. +* *Version*: You should set this to the version of Fedora that you observed the bug on. +* *Summary*: You should provide a useful short summary of the issue here. +* *Description*: More detailed information about the issue should be provided here. + It already contains a template, which is explained below. +* *Attachment*: Files that provide more information of the issue can be uploaded with the bug report using the button here. + E.g,, screen-shots, log files, screen recordings. +* *Severity, Hardware, OS*: These fields are optional and need not be set. + + +*Description of problem:* + +Explain the issue in more detail here. + +*Version-Release number of selected component (if applicable):* + +The version of the package should be specified here. +Once the package name is known, the version can be obtained by using the `rpm` command: + + $ rpm -q + +For example: + + $ rpm -q gnome-software + gnome-software-3.28.2-1.fc28.x86_64 + + +*How reproducible:* + +How often is the issue observed? +Usually, a good answer to this field is one of: + +* Always: the issue is observed each time. +* Sometimes: the issue occurs, but not each time. +* Only once: the issue was only observed once. + +Issues that occur always are easiest for developers to diagnose, since they may also be able to replicate it on their machines to collect more information. +If an issue only happens sometimes, developers must spend more time and effort to understand what causes the problem. +If an issue was only observed once, it is even harder to debug. + +TIP: *Detailed bug reports make bugs easier to fix*: If possible, you should try to investigate what steps cause the issue to happen and provide these steps in the next section: + + +TIP: *Submit a report even if unsure*: If you aren't sure of what to fill in, you should still submit the bug report. +Maintainers can follow up with questions to gather more information. + +*Steps to Reproduce:* + +These enable other users to verify the bug, and they also inform the developers of what specific steps cause the issue. +It makes it much easier for them to look at the source code and pick out the bits that may be faulty. + +*Actual results:* + +What is observed when the issue occurs? + +*Expected results:* + +What does the user expect that should happen if the software behaved correctly? + +*Additional info:* + +Any additional information that may be useful to the maintainer should be added here. + + +=== Step 2: Follow up on filed reports + +After a bug has been filed, you should keep an eye out for any updates. +The xref:package-maintainers::bug_status.adoc[bug status workflow] documentation describes the different statuses a bug may have. +An e-mail notification of any new comments to the report will be sent to everyone involved in the bug report---the reporter, other users, and the maintainer. +Often, maintainers will comment with queries to gather more information on the issue. Sometimes other users that experience the same issue may also add more information. + +TIP: *Ask for instructions*: If the maintainers ask for more information but it is unclear how it should be gathered, it is perfectly OK to ask the maintainers for explicit instructions. + +TIP: *E-mail notifications*: The notifications are sent from bugzilla@redhat.com. +You should keep an eye out for e-mails from this address, and add it to your "no-spam" lists. + + +=== Step 3: Test updates + +A well reported bug will often be fixed, +and the maintainer will make an improved version of the software available to Fedora users. +Bodhi will add a comment to the report when this happens. +You can help the maintainer by confirming if the improved version works better in the Bodhi. + +.Bodhi Application adds comments informing users of an update that should fix the bug. +image::20180825-how-to-file-a-bug-qa.png[] + +TIP: *Help test updates*: All users can help by testing new versions of software. +More information on this can be found https://fedoraproject.org/wiki/QA:Updates_Testing[here]. +Note that this requires a https://admin.fedoraproject.org/accounts/[Fedora account]. + +Once the improved version of the software has passed the QA process, the bug will automatically be closed. Congratulations! + +== Advice for specific bug types + +=== Crashes + +If you have experienced a program crash, it will almost certainly be necessary to include a stack trace with your bug report. Crashes are often difficult to reproduce and even more difficult to fix, so the more information you can provide, the better. +You will probably need to install -debuginfo RPMs so your stack trace will have useful debugging symbols. See the following pages for more information: + +* https://fedoraproject.org/wiki/StackTraces[Stack traces] +* https://fedoraproject.org/wiki/Java/StackTraces[Java stack traces] + +=== Enhancement Requests + +TIP: *Most enhancement requests should be filed upstream.* +If the software is missing a feature you think it should have, +you generally want to file that in the upstream project's bug tracker. +Feature requests in Fedora Linux are generally changing defaults, enabling disabled-by-default features, etc. + +* When filing an enhancement request in Bugzilla, add the keyword `Future Feature` to the report. The Keyword should be added right after submitting the bug. You will see the Keyword input box then. Make sure you supply enough information and rationale for your enhancement requests to be considered. +* The Fedora Project has the objective to be a platform built exclusively from free and open-source software. Suggestions to include support for proprietary or other legally encumbered software is not constructive. See the list of https://fedoraproject.org/wiki/Forbidden_items[forbidden items] page for details about this. +* If you want to make a new feature happen on your own create a wiki page for your feature and get it accepted. +See more on the xref:program_management::changes_policy.adoc[Changes Process]. +* Requests for new packages to be added to Fedora should not be filed in Bugzilla. + +=== Graphical User Interfaces + +If you are having trouble with a graphical user interface (GUI), +it often helps to include a screenshot or a screencast showing the bug in action. +This helps developers find the exact place in the code which is causing the bug, +and helps communicate what is going wrong when it is difficult to reproduce +(for example, machine-specific layout problems). + +=== Hardware-Specific Bugs + +A strong indication of a hardware-specific bug is that other people with different hardware should be able to reproduce the bug, but can't. +They also usually involve code that specifically interacts with a peripheral, such a webcam, video card, printer, or sound card (so for instance, it is uncommon for bugs affecting the user interface of a word processor or desktop calculator to be hardware-specific). + +If you suspect your bug has something to do with the specific hardware you have, it will be necessary to identify the hardware so targeted action can be taken. + +PCI and PCI-E devices found by the kernel can be listed with `lspci`. + +USB devices found by the kernel can be listed with `lsusb`. + +You may also find mention of specific devices or drivers in your system logs (run `journalctl`). + +=== Security-Sensitive + +We pay special attention to security-sensitive bugs. +Read the https://fedoraproject.org/wiki/Security_Bugs#Reporting_a_Security_Vulnerability[Reporting a Security Vulnerability]] page to understand the special process of opening a security bug. + +== Information required for bugs in specific components + +* https://fedoraproject.org/wiki/How_to_debug_installation_problems[Anaconda (installer)] +* https://fedoraproject.org/wiki/How_to_debug_Dracut_problems[Dracut] +* https://fedoraproject.org/wiki/How_to_debug_Firefox_problems[Firefox] +* https://fedoraproject.org/wiki/Category:Fonts_and_text_QA[Fonts] +* https://fedoraproject.org/wiki/KernelBugTriage[Kernel] +** https://fedoraproject.org/wiki/How_to_debug_sound_problems[Sound] +* https://fedoraproject.org/wiki/How_to_debug_printing_problems[Printing] +* https://fedoraproject.org/wiki/SELinux/Troubleshooting[SELinux] +* https://fedoraproject.org/wiki/How_to_debug_Systemd_problems[Systemd] +* https://fedoraproject.org/wiki/How_to_debug_Virtualization_problems[Virtualization] +** https://fedoraproject.org/wiki/How_to_use_qemu[QEMU] +* https://fedoraproject.org/wiki/How_to_debug_Wayland_problems[Wayland] +* https://fedoraproject.org/wiki/How_to_debug_Xorg_problems[X.org] + + +== More reading + +These are some more resources for those looking to report better bugs by providing more information: + +* https://bugzilla.mozilla.org/page.cgi?id=etiquette.html[Bugzilla etiquette: how to be polite in bug related conversations on the bug tracker]. +* https://www.chiark.greenend.org.uk/~sgtatham/bugs.html[A general introduction on how to file good bugs (available in multiple languages)]. +* https://fedoraproject.org/wiki/StackTraces[An introduction to Stacktraces---information software provides about where the fault may lie]. +* https://fedoramagazine.org/file-better-bugs-coredumpctl/[Using `coredumpctl` to gather more information for bug reports]. diff --git a/modules/ROOT/pages/bugzilla-introduction.adoc b/modules/ROOT/pages/bugzilla-introduction.adoc deleted file mode 100644 index 037620a..0000000 --- a/modules/ROOT/pages/bugzilla-introduction.adoc +++ /dev/null @@ -1,47 +0,0 @@ -= Using Bugzilla -Ben Cotton -:revnumber: F36 onwards -:revdate: 2022-03-11 -:category: Troubleshooting -:tags: How-to, Bugzilla -:page-aliases: bugzilla/index.adoc - - -Fedora uses https://bugzilla.redhat.com[Red Hat Bugzilla] for bug tracking. This page and the other pages under the "Bugs" header on the left offer some tips and guidance. - - -== Permissions - -Any user, including "anonymous" (i.e. not logged in) users can view bugs. (Note that some bugs or comments may be marked "private" -or restricted to specific groups. This is rare in Fedora and is generally to protect sensitive information that might be in an attachment or log snippet.) - -Any logged-in user can create a bug report or add a comment to an existing bug. - -The reporter or assignee of a bug can modify any field in their own bug. - - -== Automatic changes - -Bugzilla will automatically create links to bug reports or comments that follow the pattern "bug xxxx" or "comment xxxx". - -Bugs marked as xref:bugzilla/find-duplicates.adoc[duplicate] will automatically get a comment referring to the other bug report. The other bug report will automatically get a comment indicating that another bug has been marked as a duplicate of it. - -https://bodhi.fedoraproject.org[Bodhi] — the Fedora updates system — will automatically comment and change the xref:#_status[status] of associated bugs as updates move through the system. - - -== Status and resolution - -Bugzilla uses fields called "Status" and "Resolution" to track the state of a bug report or feature request. - -=== Status - -The table below summarizes the statuses. - -include::program_management::partial$bz_status.adoc[] - - -=== Resolution - -The table below describes the resolutions that can apply to the _CLOSED_ status. - -include::program_management::partial$bz_resolution.adoc[] diff --git a/modules/ROOT/pages/how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops.adoc b/modules/ROOT/pages/how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops.adoc deleted file mode 100644 index b63b777..0000000 --- a/modules/ROOT/pages/how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops.adoc +++ /dev/null @@ -1,174 +0,0 @@ -= How to Set Nvidia as Primary GPU on Optimus-based Laptops -Akashdeep Dhar ; Jun Aruga ; Ankur Sinha; -:revnumber: F37 -:revdate: 2022-09-12 -:category: Administration -:tags: How-to, Nvidia -//:imagesdir: ./images - - -include::{partialsdir}/3rdparty-message.adoc[] - - -== Introduction -The objective is to enable NVIDIA GPU of an Optimus-based laptop *all the time* and use it for every single activity. -Please do not use this guide if you want to render your desktop using the integrated GPU and specifically select applications to be rendered using the NVIDIA GPU. - -[NOTE] -==== -The steps listed here have been verified to be working on Fedora 32 Workstation. Please update your installation to include your experiences and any other tweaks that may be needed if you are using any other desktop environments. - -Some guides on the internet advise a different approach to installing nVidia drivers on Fedora, such as directly using the binaries provided by nVidia. The Fedora Project cannot ensure these will always work on every Fedora release, and we therefore recommend following the steps in this document instead. -==== - -[NOTE] -==== -As Prime works less satisfactorily with Wayland server, following the steps provided in this guide would default the server to Xorg. -==== - -[WARNING] -==== -This guide requires the secure boot to be **turned off** to load up the unsigned NVIDIA kernel modules. -==== - -In order to make all the rendering default to the NVIDIA GPU, you need the follow the steps very carefully. - -First, you need to see if you really want to achieve this. - -=== Why would you want to do that? -* The use of NVIDIA GPU all the time would allow for smoother transitions and richer animation effects. Premium desktop environments like GNOME would benefit a lot from this. -* Enabling the NVIDIA GPU all the time would lead to lower CPU load and memory consumption which otherwise would have been high due to added in-memory video buffer. - -=== Why would you not want to do that? -* With the NVIDIA GPU used all the time, there would be a slight increase in battery consumption which should not be a concern if your device is used while being plugged in. -* Increased generation of heat from the all-the-time enabled NVIDIA GPU can be worrisome. You would not want to play AAA-titles on Proton while placing your laptop on your lap. - -== Step #1: Update from the existing repositories -Execute ----- -sudo dnf upgrade ----- -once to update all your packages first. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-0.png[] - -== Step #2: Add the RPMFusion repository for NVIDIA drivers -Then you need to add the *RPM Fusion repository for NVIDIA drivers*. To do that, open up *GNOME Software* and click on the *hamburger menu* (three horizontal lines) on the top-right corner. Then click on *Software Repositories* from the dropdown menu. There you will see this. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-1.png[] - -Select *RPM Fusion for Fedora 32 - Nonfree - NVIDIA Driver* and *ENABLE* it. It requires elevated privileges so enter your password and it will be done. - -== Step #3: Update from the newly added repositories -Execute ----- -sudo dnf upgrade --refresh ----- -to fetch all available updates from the newly added repository. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-2.png[] - -== Step #4: Install the driver and its dependencies -Execute ----- -sudo dnf install gcc kernel-headers kernel-devel akmod-nvidia xorg-x11-drv-nvidia xorg-x11-drv-nvidia-libs xorg-x11-drv-nvidia-libs.i686 ----- -to get the driver and all necessary dependencies. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-3.png[] - -== Step #5: Wait for the kernel modules to load up -You **must** wait 5-10 minutes for the kernel modules to load. Please do not proceed to the next steps immediately. - -== Step #6: Read from the updated kernel modules -Execute ----- -sudo akmods --force -sudo dracut --force ----- -This would force the configuration to be read from the updated kernel modules which now have the NVIDIA drivers in them. - -== Step #7: Reboot your system -Wait for 3-5 minutes for the changes to take effect and then reboot your system. - -Once your system has started, go to the *About* page in the *Settings* application. You are likely to see the following output. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-4.png[] - -This means that the driver installation was successful leading to the detection of two distinct video accelerators - internal and dedicated. - -== Step #8: Edit the X11 configuration -Please ensure that the [application]`xrandr` package is installed before proceeding with this step: - ----- -sudo dnf install xrandr ----- - -Execute the following command to copy the display render details for the X11. - ----- -sudo cp -p /usr/share/X11/xorg.conf.d/nvidia.conf /etc/X11/xorg.conf.d/nvidia.conf ----- - -Once done, open up the `nvidia.conf` from the copy destination and edit it to add ----- -Option "PrimaryGPU" "yes" ----- -to the `OutputClass` section of it. - -For example, use `nano` ----- -sudo nano /etc/X11/xorg.conf.d/nvidia.conf ----- -and make changes. - -The file should look like this. Your file should look similar to this. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-5.png[] - -You can see the additions in both sections. - -Save it using `[Ctrl]+[S]` and exit out using `[Ctrl]+[X]`. - -NOTE: If you are using a display manager other than GDM (the default of Fedora Workstation), you will need to configure it appropriately. Please refer https://wiki.archlinux.org/index.php/NVIDIA_Optimus#Display_managers[to the Arch wiki for instructions]. For SDDM (the KDE spin default) on Fedora32, the Arch wiki is _wrong_, and you need to edit the `/etc/sddm/Xsetup` file, _not_ `/usr/share/sddm/scripts/Xsetup`. - -== Step #9: Reboot your system -Reboot your system and proceed to the next steps to verify the change in configuration. - -== Step #10: Verify the configuration -Open a terminal and type in ----- -glxinfo | egrep "OpenGL vendor|OpenGL renderer" ----- -It should show your NVIDIA GPU. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-6.png[] - -Check on `screenfetch`. ----- -screenfetch ----- -It should show your NVIDIA GPU under the GPU name. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-7.png[] - -Check in your *Settings* application. -You would see something like this in the *About* page. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-8.png[] - -You can make other configuration changes using *NVIDIA X Server Settings* application. -Also the GPU would show activity in its utilization percentage to signify that it is actually working. - -image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-9.png[] - -== References -Should you face issues while following these steps or if these do not match your use case, -feel free to convey your queries on https://ask.fedoraproject.org[Fedora Forums]. - -Here are the links you can refer to for obtaining more information. - -* https://rpmfusion.org/Howto/Optimus[RPMFusion's Optimus How-to guide] -* https://rpmfusion.org/Howto/NVIDIA[RPMFusion's NVIDIA How-to guide] -* https://unix.stackexchange.com/questions/16407/how-to-check-which-gpu-is-active-in-linux[GPU Activity on UNIX StackExchange] -* https://www.reddit.com/r/Fedora/comments/bw4b0p/how_to_fedora_nvidia_prime/[Fedora Subreddit (zvitaly’s response only)] diff --git a/modules/ROOT/pages/howto-file-a-bug.adoc b/modules/ROOT/pages/howto-file-a-bug.adoc deleted file mode 100644 index efb0335..0000000 --- a/modules/ROOT/pages/howto-file-a-bug.adoc +++ /dev/null @@ -1,295 +0,0 @@ -= How to file a bug -Ankur Sinha; Joe Walker -:revnumber: all -:revdate: 2023-05-15 -:category: Bugs -:tags: How-to, Bug-Report -//:page-aliases: howto-file-a-bug.adoc -//:imagesdir: ./images - -include::partial$attributes.adoc[] - - -[abstract] -The purpose of this document is to give step by step instructions on filing bugs in Fedora. -For more information about using Bugzilla, -see the xref:bugzilla/index.adoc[Bugs section] of the Quick Docs. - - - -A software bug does not necessarily need to be a software crash. -Any undesired behaviour in software can be filed as a bug. -The package maintainer can then look at the bug report and decide the best course of action. - -TIP: *Anyone can file bugs*: -All users are encouraged to file any bugs they run into. -Bug filing is not limited to only software developers. - -== Terminology - -There are a few terms that are commonly used in this document: - -* *Bug*: A bug is any behaviour in a software that appears unexpected/undesired. -* *Bug tracker*: The Fedora bug tracking system at https://bugzilla.redhat.com. -* *Package*: Each software that is available in Fedora has a formal package name that is used by the bug tracker and other infrastructure tools. - Packages can be searched using the https://src.fedoraproject.org/[Fedora dist-git]. -* *Maintainer*: A body of volunteers that takes care of the software packages provided in Fedora. - These are referred to as "package maintainers". - They keep track of bugs, help with issues, and generally act as middlemen between the developers of the software and Fedora users. -* *QA*: Quality assurance is the process of ensuring that the software works as intended. -* *Bodhi*: The https://bodhi.fedoraproject.org[Fedora QA Web Application]. - - -== Before filing a bug - -https://ask.fedoraproject.org[Ask Fedora] — -the community support forum — -is a good place to start if you're not sure if you've encountered a bug. -Sometimes what is perceived as a bug is a misunderstanding or a question. -The Ask Fedora community can help you figure out if you've encountered a bug — -and if it's specific to Fedora or is in the upstream package. - -=== Step 0: Check the Common Issues page - -We maintain a list of common issues. -Check this site first to see if your issue has been reported — -and if a solution exists. - -* https://fedoraproject.org/wiki/Common_F{MAJOROSVER}_bugs[Fedora Linux {MAJOROSVER}] -* https://fedoraproject.org/wiki/Common_F{PREVVER}_bugs[Fedora Linux {PREVVER}] -* https://discussion.fedoraproject.org/c/ask/common-issues/82/all[Ask Fedora listing] - -=== Step 1: Check for the latest version - -As bugs are reported and fixed, developers collect a set of fixes and periodically release improved versions of their software. -So, before reporting an issue, it is useful to check if you are using the latest version of a software. -The simplest way to get the latest version of software in Fedora is to regularly update your system. -Users of Gnome/KDE and other desktop environments can use their default applications to do so. -These periodically check for updates and notify users. -You can also use the default package manager `dnf` to check and update your system. -Only users with administrator privileges can do so: - - $ sudo dnf upgrade --refresh - -=== Step 2: Check for already filed bugs - -If you are using the latest version of the software available in Fedora, then it is likely that the bug has either not been reported, or has been reported but a fix has not yet been released. -So, it is useful to search the list of already reported bugs before filing a new report. -The https://packages.fedoraproject.org/[Fedora Packages Web application] provides a link the open bugs for a package. -There is also a convenient shortcut that can be used. - - https://bugz.fedoraproject.org/ - -Here, the `package name` must be the formal name of the package. - -TIP: *Finding the name of the package*: If you do not know the formal package name of the software, you can use the https://packages.fedoraproject.org/[Fedora Packages Web Application] to search for it and view the list of bugs there. - -.Searching the Fedora Packages Web Application for Gnome Software. -image::20180825-how-to-file-a-bug-gs.png[] - -NOTE: *Advanced searching*: You can also use the https://bugzilla.redhat.com/query.cgi[advanced search features of the bug tracker] to narrow down your search. -However, this is not necessary. - -If a bug report has already been filed describing the issue, you should provide any extra information you may have. -If there is nothing more to add to the report, you should "CC" (carbon-copy) yourself to the report to receive any updates. -This can be done by clicking on the "Save changes" button when the "Add me to CC list" option is checked as shown below: - - -.The CC list contains all users that should be notified when any updates are made to the report. -image::20180825-how-to-file-a-bug-cc-list.png[] - -== Filing a bug report - -=== Step 0: Create a Bugzilla account - -TIP: *Use your Fedora account*: You can use your https://accounts.fedoraproject.org/[Fedora account] to sign into Bugzilla. -This is preferred, since your Fedora account can also be used to log into all other Fedora services. - -Bugs are filed on https://bugzilla.redhat.com[Fedora's bugzilla instance], and you must have an account there to file bugs or interact with them. -An account requires a valid e-mail address and can be created https://accounts.fedoraproject.org/[here] (click "Register"). -The bug tracker will only send e-mail notifications about bugs that a user is involved in. No other e-mails will be sent. - -=== Step 1: Filing a new bug - -If a bug report for the particular issue has not already been filed, you should file a new one. -The easiest way to file a new report is using the "File a new bug" drop down from the right hand side bar in the https://packages.fedoraproject.org/[Fedora Packages Web application]. - -.The Fedora Packages Web Application provides a convenient shortcut to file new bugs. -image::20180825-how-to-file-a-bug-new-bug-shortcut.png[] - - -This redirects to a new bug report template on the bug tracker. -The image below shows a new bug template: - -.A new bug report template. -image::20180825-how-to-file-a-bug-new-bug.png[] - -The following fields need to be set: - -* *Component*: This will be set to the name of the package. -* *Version*: You should set this to the version of Fedora that you observed the bug on. -* *Summary*: You should provide a useful short summary of the issue here. -* *Description*: More detailed information about the issue should be provided here. - It already contains a template, which is explained below. -* *Attachment*: Files that provide more information of the issue can be uploaded with the bug report using the button here. - E.g,, screen-shots, log files, screen recordings. -* *Severity, Hardware, OS*: These fields are optional and need not be set. - - -*Description of problem:* - -Explain the issue in more detail here. - -*Version-Release number of selected component (if applicable):* - -The version of the package should be specified here. -Once the package name is known, the version can be obtained by using the `rpm` command: - - $ rpm -q - -For example: - - $ rpm -q gnome-software - gnome-software-3.28.2-1.fc28.x86_64 - - -*How reproducible:* - -How often is the issue observed? -Usually, a good answer to this field is one of: - -* Always: the issue is observed each time. -* Sometimes: the issue occurs, but not each time. -* Only once: the issue was only observed once. - -Issues that occur always are easiest for developers to diagnose, since they may also be able to replicate it on their machines to collect more information. -If an issue only happens sometimes, developers must spend more time and effort to understand what causes the problem. -If an issue was only observed once, it is even harder to debug. - -TIP: *Detailed bug reports make bugs easier to fix*: If possible, you should try to investigate what steps cause the issue to happen and provide these steps in the next section: - - -TIP: *Submit a report even if unsure*: If you aren't sure of what to fill in, you should still submit the bug report. -Maintainers can follow up with questions to gather more information. - -*Steps to Reproduce:* - -These enable other users to verify the bug, and they also inform the developers of what specific steps cause the issue. -It makes it much easier for them to look at the source code and pick out the bits that may be faulty. - -*Actual results:* - -What is observed when the issue occurs? - -*Expected results:* - -What does the user expect that should happen if the software behaved correctly? - -*Additional info:* - -Any additional information that may be useful to the maintainer should be added here. - - -=== Step 2: Follow up on filed reports - -After a bug has been filed, you should keep an eye out for any updates. -The xref:package-maintainers::bug_status.adoc[bug status workflow] documentation describes the different statuses a bug may have. -An e-mail notification of any new comments to the report will be sent to everyone involved in the bug report---the reporter, other users, and the maintainer. -Often, maintainers will comment with queries to gather more information on the issue. Sometimes other users that experience the same issue may also add more information. - -TIP: *Ask for instructions*: If the maintainers ask for more information but it is unclear how it should be gathered, it is perfectly OK to ask the maintainers for explicit instructions. - -TIP: *E-mail notifications*: The notifications are sent from bugzilla@redhat.com. -You should keep an eye out for e-mails from this address, and add it to your "no-spam" lists. - - -=== Step 3: Test updates - -A well reported bug will often be fixed, -and the maintainer will make an improved version of the software available to Fedora users. -Bodhi will add a comment to the report when this happens. -You can help the maintainer by confirming if the improved version works better in the Bodhi. - -.Bodhi Application adds comments informing users of an update that should fix the bug. -image::20180825-how-to-file-a-bug-qa.png[] - -TIP: *Help test updates*: All users can help by testing new versions of software. -More information on this can be found https://fedoraproject.org/wiki/QA:Updates_Testing[here]. -Note that this requires a https://admin.fedoraproject.org/accounts/[Fedora account]. - -Once the improved version of the software has passed the QA process, the bug will automatically be closed. Congratulations! - -== Advice for specific bug types - -=== Crashes - -If you have experienced a program crash, it will almost certainly be necessary to include a stack trace with your bug report. Crashes are often difficult to reproduce and even more difficult to fix, so the more information you can provide, the better. -You will probably need to install -debuginfo RPMs so your stack trace will have useful debugging symbols. See the following pages for more information: - -* https://fedoraproject.org/wiki/StackTraces[Stack traces] -* https://fedoraproject.org/wiki/Java/StackTraces[Java stack traces] - -=== Enhancement Requests - -TIP: *Most enhancement requests should be filed upstream.* -If the software is missing a feature you think it should have, -you generally want to file that in the upstream project's bug tracker. -Feature requests in Fedora Linux are generally changing defaults, enabling disabled-by-default features, etc. - -* When filing an enhancement request in Bugzilla, add the keyword `Future Feature` to the report. The Keyword should be added right after submitting the bug. You will see the Keyword input box then. Make sure you supply enough information and rationale for your enhancement requests to be considered. -* The Fedora Project has the objective to be a platform built exclusively from free and open-source software. Suggestions to include support for proprietary or other legally encumbered software is not constructive. See the list of https://fedoraproject.org/wiki/Forbidden_items[forbidden items] page for details about this. -* If you want to make a new feature happen on your own create a wiki page for your feature and get it accepted. -See more on the xref:program_management::changes_policy.adoc[Changes Process]. -* Requests for new packages to be added to Fedora should not be filed in Bugzilla. - -=== Graphical User Interfaces - -If you are having trouble with a graphical user interface (GUI), -it often helps to include a screenshot or a screencast showing the bug in action. -This helps developers find the exact place in the code which is causing the bug, -and helps communicate what is going wrong when it is difficult to reproduce -(for example, machine-specific layout problems). - -=== Hardware-Specific Bugs - -A strong indication of a hardware-specific bug is that other people with different hardware should be able to reproduce the bug, but can't. -They also usually involve code that specifically interacts with a peripheral, such a webcam, video card, printer, or sound card (so for instance, it is uncommon for bugs affecting the user interface of a word processor or desktop calculator to be hardware-specific). - -If you suspect your bug has something to do with the specific hardware you have, it will be necessary to identify the hardware so targeted action can be taken. - -PCI and PCI-E devices found by the kernel can be listed with `lspci`. - -USB devices found by the kernel can be listed with `lsusb`. - -You may also find mention of specific devices or drivers in your system logs (run `journalctl`). - -=== Security-Sensitive - -We pay special attention to security-sensitive bugs. -Read the https://fedoraproject.org/wiki/Security_Bugs#Reporting_a_Security_Vulnerability[Reporting a Security Vulnerability]] page to understand the special process of opening a security bug. - -== Information required for bugs in specific components - -* https://fedoraproject.org/wiki/How_to_debug_installation_problems[Anaconda (installer)] -* https://fedoraproject.org/wiki/How_to_debug_Dracut_problems[Dracut] -* https://fedoraproject.org/wiki/How_to_debug_Firefox_problems[Firefox] -* https://fedoraproject.org/wiki/Category:Fonts_and_text_QA[Fonts] -* https://fedoraproject.org/wiki/KernelBugTriage[Kernel] -** https://fedoraproject.org/wiki/How_to_debug_sound_problems[Sound] -* https://fedoraproject.org/wiki/How_to_debug_printing_problems[Printing] -* https://fedoraproject.org/wiki/SELinux/Troubleshooting[SELinux] -* https://fedoraproject.org/wiki/How_to_debug_Systemd_problems[Systemd] -* https://fedoraproject.org/wiki/How_to_debug_Virtualization_problems[Virtualization] -** https://fedoraproject.org/wiki/How_to_use_qemu[QEMU] -* https://fedoraproject.org/wiki/How_to_debug_Wayland_problems[Wayland] -* https://fedoraproject.org/wiki/How_to_debug_Xorg_problems[X.org] - - -== More reading - -These are some more resources for those looking to report better bugs by providing more information: - -* https://bugzilla.mozilla.org/page.cgi?id=etiquette.html[Bugzilla etiquette: how to be polite in bug related conversations on the bug tracker]. -* https://www.chiark.greenend.org.uk/~sgtatham/bugs.html[A general introduction on how to file good bugs (available in multiple languages)]. -* https://fedoraproject.org/wiki/StackTraces[An introduction to Stacktraces---information software provides about where the fault may lie]. -* https://fedoramagazine.org/file-better-bugs-coredumpctl/[Using `coredumpctl` to gather more information for bug reports]. diff --git a/modules/ROOT/pages/set-nvidia-as-primary-gpu-on-optimus-based-laptops.adoc b/modules/ROOT/pages/set-nvidia-as-primary-gpu-on-optimus-based-laptops.adoc new file mode 100644 index 0000000..b63b777 --- /dev/null +++ b/modules/ROOT/pages/set-nvidia-as-primary-gpu-on-optimus-based-laptops.adoc @@ -0,0 +1,174 @@ += How to Set Nvidia as Primary GPU on Optimus-based Laptops +Akashdeep Dhar ; Jun Aruga ; Ankur Sinha; +:revnumber: F37 +:revdate: 2022-09-12 +:category: Administration +:tags: How-to, Nvidia +//:imagesdir: ./images + + +include::{partialsdir}/3rdparty-message.adoc[] + + +== Introduction +The objective is to enable NVIDIA GPU of an Optimus-based laptop *all the time* and use it for every single activity. +Please do not use this guide if you want to render your desktop using the integrated GPU and specifically select applications to be rendered using the NVIDIA GPU. + +[NOTE] +==== +The steps listed here have been verified to be working on Fedora 32 Workstation. Please update your installation to include your experiences and any other tweaks that may be needed if you are using any other desktop environments. + +Some guides on the internet advise a different approach to installing nVidia drivers on Fedora, such as directly using the binaries provided by nVidia. The Fedora Project cannot ensure these will always work on every Fedora release, and we therefore recommend following the steps in this document instead. +==== + +[NOTE] +==== +As Prime works less satisfactorily with Wayland server, following the steps provided in this guide would default the server to Xorg. +==== + +[WARNING] +==== +This guide requires the secure boot to be **turned off** to load up the unsigned NVIDIA kernel modules. +==== + +In order to make all the rendering default to the NVIDIA GPU, you need the follow the steps very carefully. + +First, you need to see if you really want to achieve this. + +=== Why would you want to do that? +* The use of NVIDIA GPU all the time would allow for smoother transitions and richer animation effects. Premium desktop environments like GNOME would benefit a lot from this. +* Enabling the NVIDIA GPU all the time would lead to lower CPU load and memory consumption which otherwise would have been high due to added in-memory video buffer. + +=== Why would you not want to do that? +* With the NVIDIA GPU used all the time, there would be a slight increase in battery consumption which should not be a concern if your device is used while being plugged in. +* Increased generation of heat from the all-the-time enabled NVIDIA GPU can be worrisome. You would not want to play AAA-titles on Proton while placing your laptop on your lap. + +== Step #1: Update from the existing repositories +Execute +---- +sudo dnf upgrade +---- +once to update all your packages first. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-0.png[] + +== Step #2: Add the RPMFusion repository for NVIDIA drivers +Then you need to add the *RPM Fusion repository for NVIDIA drivers*. To do that, open up *GNOME Software* and click on the *hamburger menu* (three horizontal lines) on the top-right corner. Then click on *Software Repositories* from the dropdown menu. There you will see this. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-1.png[] + +Select *RPM Fusion for Fedora 32 - Nonfree - NVIDIA Driver* and *ENABLE* it. It requires elevated privileges so enter your password and it will be done. + +== Step #3: Update from the newly added repositories +Execute +---- +sudo dnf upgrade --refresh +---- +to fetch all available updates from the newly added repository. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-2.png[] + +== Step #4: Install the driver and its dependencies +Execute +---- +sudo dnf install gcc kernel-headers kernel-devel akmod-nvidia xorg-x11-drv-nvidia xorg-x11-drv-nvidia-libs xorg-x11-drv-nvidia-libs.i686 +---- +to get the driver and all necessary dependencies. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-3.png[] + +== Step #5: Wait for the kernel modules to load up +You **must** wait 5-10 minutes for the kernel modules to load. Please do not proceed to the next steps immediately. + +== Step #6: Read from the updated kernel modules +Execute +---- +sudo akmods --force +sudo dracut --force +---- +This would force the configuration to be read from the updated kernel modules which now have the NVIDIA drivers in them. + +== Step #7: Reboot your system +Wait for 3-5 minutes for the changes to take effect and then reboot your system. + +Once your system has started, go to the *About* page in the *Settings* application. You are likely to see the following output. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-4.png[] + +This means that the driver installation was successful leading to the detection of two distinct video accelerators - internal and dedicated. + +== Step #8: Edit the X11 configuration +Please ensure that the [application]`xrandr` package is installed before proceeding with this step: + +---- +sudo dnf install xrandr +---- + +Execute the following command to copy the display render details for the X11. + +---- +sudo cp -p /usr/share/X11/xorg.conf.d/nvidia.conf /etc/X11/xorg.conf.d/nvidia.conf +---- + +Once done, open up the `nvidia.conf` from the copy destination and edit it to add +---- +Option "PrimaryGPU" "yes" +---- +to the `OutputClass` section of it. + +For example, use `nano` +---- +sudo nano /etc/X11/xorg.conf.d/nvidia.conf +---- +and make changes. + +The file should look like this. Your file should look similar to this. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-5.png[] + +You can see the additions in both sections. + +Save it using `[Ctrl]+[S]` and exit out using `[Ctrl]+[X]`. + +NOTE: If you are using a display manager other than GDM (the default of Fedora Workstation), you will need to configure it appropriately. Please refer https://wiki.archlinux.org/index.php/NVIDIA_Optimus#Display_managers[to the Arch wiki for instructions]. For SDDM (the KDE spin default) on Fedora32, the Arch wiki is _wrong_, and you need to edit the `/etc/sddm/Xsetup` file, _not_ `/usr/share/sddm/scripts/Xsetup`. + +== Step #9: Reboot your system +Reboot your system and proceed to the next steps to verify the change in configuration. + +== Step #10: Verify the configuration +Open a terminal and type in +---- +glxinfo | egrep "OpenGL vendor|OpenGL renderer" +---- +It should show your NVIDIA GPU. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-6.png[] + +Check on `screenfetch`. +---- +screenfetch +---- +It should show your NVIDIA GPU under the GPU name. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-7.png[] + +Check in your *Settings* application. +You would see something like this in the *About* page. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-8.png[] + +You can make other configuration changes using *NVIDIA X Server Settings* application. +Also the GPU would show activity in its utilization percentage to signify that it is actually working. + +image:how-to-set-nvidia-as-primary-gpu-on-optimus-based-laptops-9.png[] + +== References +Should you face issues while following these steps or if these do not match your use case, +feel free to convey your queries on https://ask.fedoraproject.org[Fedora Forums]. + +Here are the links you can refer to for obtaining more information. + +* https://rpmfusion.org/Howto/Optimus[RPMFusion's Optimus How-to guide] +* https://rpmfusion.org/Howto/NVIDIA[RPMFusion's NVIDIA How-to guide] +* https://unix.stackexchange.com/questions/16407/how-to-check-which-gpu-is-active-in-linux[GPU Activity on UNIX StackExchange] +* https://www.reddit.com/r/Fedora/comments/bw4b0p/how_to_fedora_nvidia_prime/[Fedora Subreddit (zvitaly’s response only)]