Sync from SUSE:SLFO:Main suse-prime revision fcd8a5a81d4543ea7ca3a949eb22c80f

This commit is contained in:
Adrian Schröter 2024-05-04 00:56:24 +02:00
commit ffad3e3734
4 changed files with 880 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

BIN
SUSEPrime-0.8.15.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

698
suse-prime.changes Normal file
View File

@ -0,0 +1,698 @@
-------------------------------------------------------------------
Sat Jan 6 17:11:21 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.14
* added prime-run script for easier offload mode usage (github issue#96)
-------------------------------------------------------------------
Thu May 4 17:55:50 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Add explicit pciutils Requires: prime-select.sh expects lspci to
be present and available. Fixes boo#1210710.
-------------------------------------------------------------------
Sun Jan 15 11:38:08 UTC 2023 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.14
* No longer run usage() and bbcheck() in unconfigured state
(boo#1207144)
-------------------------------------------------------------------
Tue Jan 3 14:21:24 UTC 2023 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.13
* add "AutoAddGPU" "false" for intel and offload mode (github issue#90)
Apparently on some systems this is needed to prevent Nvidia card from
being initialized during Xserver startup and crashing with a pixmap
failure.
-------------------------------------------------------------------
Wed Dec 7 22:20:03 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.12
* prime-select.sh: fix 'user_logout_waiter' for lightdm
autologin (issue#92)
-------------------------------------------------------------------
Wed Nov 30 13:53:46 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.10
* prime-select.sh: fix kdeglobals path (github issue#91)
- require sudo command/package (github issue#91)
-------------------------------------------------------------------
Sun Oct 23 20:56:09 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.9
* prime-select.sh: Fix broken PCI BusID parsing on machines
with several domains (issue#88)
-------------------------------------------------------------------
Sun Jul 31 11:17:52 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.8
* prime-select.sh: offload-set(): no need to check for xf86-video-amdgpu
package
amdgpu/nvidia is not implemented for offload on AMD, only modeset/nvidia;
you could run "prime-select offload-set intel" on AMD/NVIDIA, but this is
rather confusing; so just use "prime-select offload" there for
having modeset/nvidia (issue #81)
-------------------------------------------------------------------
Mon Mar 14 15:05:50 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.7
* bbcheck(): no longer check for bbswitch kernel module (issue#78)
-------------------------------------------------------------------
Fri Mar 4 15:19:17 UTC 2022 - Martin Wilck <mwilck@suse.com>
- Install modprobe.conf file to %_modprobedir (bsc#1196275, jsc#SLE-20639)
-------------------------------------------------------------------
Fri Feb 11 13:53:47 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.6
* Improved output in intel, offlad and nvidia mode for get-current
option (github #76)
-------------------------------------------------------------------
Fri Nov 19 21:12:38 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.5
* Fixed AMD's "offload" mode (issue#73)
-------------------------------------------------------------------
Mon Oct 25 10:41:40 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.4
* Make sure tools like modinfo are found also by non-root users
(issue#72)
-------------------------------------------------------------------
Mon Oct 18 12:26:13 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.3
* Revert Blacklist ipmi_msghandler, ipmi_devintf kernel modules
(pull request #71), related to issue #50
-------------------------------------------------------------------
Sun Sep 19 08:25:46 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- no longer recommend bbswitch (github issue#70)
-------------------------------------------------------------------
Thu Sep 16 09:15:53 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.2 covered github issue #58 (no code changes)
-------------------------------------------------------------------
Thu Sep 16 01:43:03 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- use appropriate folders for dracut/modprobe config files on older
releases than Tumbleweed
-------------------------------------------------------------------
Wed Sep 15 13:55:07 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.8.2
* 0.8.0 adds nvidia-prime-render offload support with both
modesetting and xf86-video-intel drivers. Massive changes!
--> https://github.com/openSUSE/SUSEPrime/releases/tag/0.8.0
* 0.8.1/0.8.2 adds amd support (needed for AMD/NVIDIA combos)
- merged suse-prime/suse-prime-bbswitch packages
-------------------------------------------------------------------
Sat Aug 28 17:32:08 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- moved modprobe.d snippet files from /etc/modprobe.d to
/usr/lib/modprobe.d (boo#1173043)
-------------------------------------------------------------------
Mon Mar 8 16:04:02 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.7.17
* prime-select.sh: user_logout_waiter() only wait for session
logout when displayamanger is still running (boo#1182667)
-------------------------------------------------------------------
Wed Feb 24 10:47:38 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.7.16
* README.md: document how to reenable HDMI audio support (issue#60)
-------------------------------------------------------------------
Mon Sep 7 15:29:58 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- SUSEPrime-0.7.15
* prime-select.sh:
move static X config files to /usr/share/prime; also make sure,
that /etc/prime dir exists before trying to write configuration
to /etc/prime/current_type (boo#1173043)
- adjusted specfile to new release
-------------------------------------------------------------------
Fri Jul 17 10:07:18 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.14
* Fix failure on TW to determine current systemd target
* Avoid endless loop when nvidia modules cannot be unloaded (boo#1173632)
-------------------------------------------------------------------
Tue Jul 7 19:49:47 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.13
* (Hopefully) fixes user_logout_waiter for gdm autologin (issue#55)
-------------------------------------------------------------------
Mon Jun 15 10:30:49 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.12
* README.md: Better explain power-off/powersave option of
NVIDIA GPU (issue#54)
-------------------------------------------------------------------
Tue Apr 14 09:55:14 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.11
* Change nvidia's NVreg_DynamicPowerManagement kernel option to
0x01. This prevents intermittent 1s - 1.5s freezes on Turing
GPU's in nvidia mode (issue#52).
-------------------------------------------------------------------
Fri Apr 10 12:17:13 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.10
* README.md: Improved documentation about the requirements for
NVIDIA's PRIME render offload support; it needs Xserver of
Leap 15.2 or later
-------------------------------------------------------------------
Thu Apr 9 19:08:44 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.9
* Improved documentation
+ fixed OS requirements (Leap 15.1 instead of Tumbleweed)
+ fixed requirements for DynamicPowerManagement to power off
NVIDIA GPU (Turing GPU or later is needed!)
* Fix: use full path in invoking prime-select
-------------------------------------------------------------------
Mon Mar 30 10:08:43 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.8
* README.md: fixed syntax in command
* Blacklist ipmi_msghandler, ipmi_devintf kernel modules (issue#50)
Make sure these kernel modules are not loaded. Otherwise it may
not be possible to turn off NVIDIA GPU.
-------------------------------------------------------------------
Tue Mar 10 14:37:04 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.7
* Fix unset option (issue#48)
- only disable service with bbswitch version
- reset also to X.Org's glx module as with "intel" option
* make use of $service_test variable where possible
-------------------------------------------------------------------
Thu Feb 6 11:01:01 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- changed copyright to SUSE LLC in specfile
-------------------------------------------------------------------
Tue Feb 4 12:46:46 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.6
* README.md: Updated documentation (issue#46)
+ Removing dracut config file of nvidia's packages is no longer
needed. These packages have been updated since.
+ Made config file installation more generic, so nobody tries
to install config files, which are already at the right
location when using suse-prime packages.
+ DynamicPowerManagement specifics apply to 435.xxx and later,
not only 435.xx. Made this clear ...
-------------------------------------------------------------------
Mon Feb 3 16:33:02 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
- BuildRequire pkgconfig(systemd) instead of systemd: allow OBS to
shortcut through the -mini flavors.
-------------------------------------------------------------------
Wed Jan 15 10:51:06 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.5
* Runlevel switch not needed anymore
+ Service only starts/stops display-manager service
- Faster switch operation
- No conflicts with services that run in runlev. 3
- Consistence
+ Removed references of target/runlevel switch
+ Removed a duplicate of "systemctl stop display-manager" in
"user_logout_waiter" section
-------------------------------------------------------------------
Thu Nov 28 21:44:21 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.4
* Fixed broken formatting in 90-nvidia-udev-pm-G05.rules (issue #40)
-------------------------------------------------------------------
Tue Nov 19 12:49:23 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- only package suse-prime-bbswitch on openSUSE, since bbswitch
kernel module package is not available on sle
-------------------------------------------------------------------
Mon Nov 18 14:42:07 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- this release also includes support for NVIDIA's PRIME render
offloading (jsc#SLE-9068)
-------------------------------------------------------------------
Wed Oct 23 01:31:45 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.3
* Restore previous configuration if nvidia reconfiguration fails
* Set the right panel variables for LVDS displays (issue#26)
-------------------------------------------------------------------
Tue Oct 8 11:51:23 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.2 with various improvements and fixes
* Full support to nvidia prime offloading without service or
with bbswitch with service disabled
* Distinction between "service disabled" (bbswitch package)
and "service not installed"
* Fixed bug with bbswitch and service enabled that returns i
"PCI BusID of NVIDIA card could not be detected"
* Now when NVIDIA is OFF, intel xorg config file has ai
commented "nvidia prime offloading" section
* Mention that offloading needs service disabled
* Corrected intentation in some sections
- supersedes the following patches:
* 0001-Removed-exit-1-error-from-common-set-intel-because-d.patch
* 0002-Various-improvements-and-fixes.patch
* 0003-Merged-commit-https-github.com-openSUSE-SUSEPrime-pu.patch
-------------------------------------------------------------------
Tue Oct 8 10:23:37 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- 0001-Removed-exit-1-error-from-common-set-intel-because-d.patch,
* Removed "exit 1" error from "common set intel" because during
boot and nvidia card off by default in bbswitch (load_state=0)
crashes service
- 0002-Various-improvements-and-fixes.patch
* Various improvements and fixes
+ Full support to nvidia prime offloading without service or with
bbswitch with service disabled
+ Distinction between "service disabled" (bbswitch package) and
"service not installed"
+ Fixed bug with bbswitch and service enabled that returns
"PCI BusID of NVIDIA card could not be detected"
+ Now when NVIDIA is OFF, intel xorg config file has a commented
"nvidia prime offloading" section
+ Mention that offloading needs service disabled
+ Corrected intentation in some sections
- 0003-Merged-commit-https-github.com-openSUSE-SUSEPrime-pu.patch
* supersedes 0001-Fix-intel-configs-if-no-NVIDIA-kernel-module-is-avai.patch
-------------------------------------------------------------------
Mon Oct 7 19:40:15 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- fix build on distributions, where %{?regenerate_initrd_post}
doesn't exist yet
- %preun: 'prime-select unset' is supposed to fail during
package installation test during build, therefore don't
let it fail via adding "|| true" to the command
-------------------------------------------------------------------
Mon Oct 7 13:52:34 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- 0001-Fix-intel-configs-if-no-NVIDIA-kernel-module-is-avai.patch
* Move additional nvidia X device section needed for NVIDIA's Prime
Render Offload mode to an extra xorg.conf.d snippet. Add this only
to intel X configs, if NVIDIA's PCI BusId can be detected.
- add xorg-nvidia-prime-render-offload.conf X snippet to /etc/prime
-------------------------------------------------------------------
Fri Oct 4 10:41:54 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Use more of the posttrans rather than on-demand mkinitrd
regeneration approach.
-------------------------------------------------------------------
Fri Oct 4 09:37:38 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- replace /sbin/mkinitrd with %regenerate_initrd_posttrans
-------------------------------------------------------------------
Thu Oct 3 12:13:08 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.1
* xorg-nvidia.conf: Added option AllowExternalGpus to allow
eGPUs by default
-------------------------------------------------------------------
Wed Oct 2 15:29:37 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.7.0
* no changes to 0.6.14 and the patches on top of that we had
before ...
- supersedes patches:
* 0001-Implement-and-document-PRIME-Render-Offload-and-Dyna.patch
* 0002-Fix-NVIDIA-PRIME-Render-Offload.patch
* 0003-prime-select.sh-mention-PRIME-Render-Offload-in-usag.patch
-------------------------------------------------------------------
Wed Oct 2 13:13:43 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- 0001-Implement-and-document-PRIME-Render-Offload-and-Dyna.patch
0002-Fix-NVIDIA-PRIME-Render-Offload.patch
- 0003-prime-select.sh-mention-PRIME-Render-Offload-in-usag.patch
* adds support for NVIDIA PRIME Render Offload of 435.xx/G05 driver
- add new config files (modprobe.d/dracut.d/udev.d) to package;
regenerate initrd during installation and also during update of
nvidia G05 KMP
-------------------------------------------------------------------
Wed Jun 26 13:41:03 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.14
* changes since 0.6.11
+ fix Plasma scaling for laptop panel when changing driver;
see comment in function update_kdeglobals for details
+ fixed issues when switching with Xorg started with
startx/xinit (multi-user.target)
+ fixed issues when switching from console
+ replaced usage of runlevel command by use of systemctl to
determine current target. runlevel did not always
+ returns a defined runlevel and caused a bash error (on first
script run)
+ made grepping for xinit process more strict
+ fixed issue where 'prime-select user_logout_waiter'
execution would not exit for a while after switching
+ Fix check for existing NVIDIA GPU
-------------------------------------------------------------------
Wed May 22 08:47:20 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- renamed package to suse-prime-beta
-------------------------------------------------------------------
Tue Apr 23 13:02:27 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- exit successfully from pre/post/preun/postun scripts in order to
prevent build fails ...
-------------------------------------------------------------------
Mon Apr 8 12:39:13 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.11
* Allow to work without service
+ work without bbswitch if prime-select.service is not installed (for
suse-prime package)
+ cleaned up script usage, only displays relevant commands
+ service, boot and next-boot commands are not available if running without
service
+ handle the case when booting with nvidia config but no nvidia card is available
(disabled in BIOS) by forcing intel. Only works if service is running
+ replaced shell commands using backquotes with more modern $() for consistency
+ when appropriate, changed nvidia => NVIDIA for consistency
+ reindented script with emacs for consistency
+ minor updates to README
* Add 30s timeout to service to make sure system boots if service doesnt work.
-------------------------------------------------------------------
Wed Apr 3 09:42:22 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.9
* Resolved issue with plymouth (it hangs during boot)
* Updated readme
-------------------------------------------------------------------
Mon Apr 1 18:11:12 UTC 2019 - Mykola Krachkovsky <w01dnick@gmail.com>
- Repair broken suse-prime-bbswitch package
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.8
* Big Update (changes in systemd services)
+ prime-boot-selector service deprecated, all features are
now handled with one only service.
+ used journalctl to check if system is booting or if
"logout-switch" is needed
+ no more multiple service enable/disable needed during
switch, prime-select service is enabled everytime
+ removed all "prime-boot-selector" references in logging
and help command
+ boot_status file has now only two states (S > wait for
switching, N > not waiting)
+ changed systemd call from "prime-select apply_current"
to "prime-select systemd_call"
+ updated README
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.7
* Corrected DPI value in xorg-nvidia.conf (boo#1130723)
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.6
* Add logging to journal as well
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Split power support into separate package suse-prime-bbswitch
which don't need manual work
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.5
* augmented README
* do not mention "intel" driver issue with kwin since it is obsolete
* improved "intel" xorg config to work properly with compositors
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.4
* added support for xdm and kdm
* removed useless "sudo" in journalctl calls
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.3
* Best DM support (lightdm added)
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.2
- fixes all known issues with GDM, runlevel 3 and manually-started
x sessions
* Xorg logfile comparision no longer necessary, let's use
journalctl to check user logout
* other DM(s) than sddm/gdm will be implemented in the future
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6.1
* mainly bugfixes
- supersedes 0001-Resolved-multiple-unexistent-file-error.patch
-------------------------------------------------------------------
Mon Apr 1 14:03:36 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to version 0.6
* new systemd service file prime-boot-selector in addition to prime-select
+ Service prime-select chooses with whatever driver was previously set by user.
+ Service prime-boot-selector sets all things during boot [MUST BE ENABLED]
* new prime-select command options
+ prime-select boot intel|intel2|nvidia|last
+ prime-select next-boot intel|intel2|nvidia|abort
+ prime-select service check|disable|restore
- 0001-Resolved-multiple-unexistent-file-error.patch (post 0.6)
* Resolved multiple unexistent file errors
* Resolved a big issue in switch command if prime_logfile doesn't exist,
file check added
* Added non existent file handling in various parts of script (next-boot,
log-view, unset, current_check) Those issues manifested themselves
after a fresh installation, because some config files still were not
present
- supersedes U_Corrected-DPI-value-in-xorg-nvidia.conf.patch
-------------------------------------------------------------------
Mon Apr 1 13:49:26 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- U_Corrected-DPI-value-in-xorg-nvidia.conf.patch
* Corrected DPI value in xorg-nvidia.conf (boo#1130723)
-------------------------------------------------------------------
Sat Jan 26 15:13:17 UTC 2019 - sndirsch@suse.com
- fixed URLs in specfile (project location changed on github)
-------------------------------------------------------------------
Sat Jan 26 12:18:34 UTC 2019 - sndirsch@suse.com
- Update to release 0.5
* Add various improvements to the original script (by @bubbleguuum)
1. add bbswitch support to power off NVIDIA card if not in use.
This is important to save battery when running on Intel and
to decrease cpu temperature significantly.
This support is optional, it requires user to make some
manual modifications to his system using detailed documentation.
2. add Intel Open Source driver support (xf86-video-intel)
via new intel2 command-line option.
This driver has some additional features that users may want.
3. add the proper BusID for Intel in xorg configuration.
Without this, Xorg fails to start on some laptops.
4. fix (via modified xorg-nvidia.conf) for external monitor
not enumerated by xrandr with the nvidia config.
On Optimus laptop, the dGPU is usually responsible of managing
external video ports, including connections via Thunderbolt 3.
* get-current option for prime-select script
Show valid options for prime-select script, if driver has not
been configured yet
- supersedes the following patches
* 0002-fix-README.patch
* U_prime-select.sh-bail-out-if-nvidia-xconfig-fails-use.patch
* 0004-xorg-nvidia.conf-refix-config.patch
* 0003-prime-select-Show-valid-options-if-driver-has-not-be.patch
* 0001-Add-various-improvements-to-the-original-script.patch
- %preun: cleanup before uninstalling the package completely by
using prime-select's 'unset' option
-------------------------------------------------------------------
Fri Jan 25 17:37:11 UTC 2019 - sndirsch@suse.com
- 0001-Add-various-improvements-to-the-original-script.patch
* Add various improvements to the original script
1. add bbswitch support to power off NVIDIA card if not in use.
This is important to save battery when running on Intel and
to decrease cpu temperature significantly.
This support is optional, it requires user to make some
manual modifications to his system using detailed documentation.
2. add Intel Open Source driver support (xf86-video-intel)
via new intel2 command-line option.
This driver has some additional features that users may want.
3. add the proper BusID for Intel in xorg configuration.
Without this, Xorg fails to start on some laptops.
4. fix (via modified xorg-nvidia.conf) for external monitor
not enumerated by xrandr with the nvidia config.
On Optimus laptop, the dGPU is usually responsible of managing
external video ports, including connections via Thunderbolt 3.
- 0002-fix-README.patch
* fix README
- 0003-prime-select-Show-valid-options-if-driver-has-not-be.patch
* prime-select: Show valid options, if driver has not been
configured yet.
- 0004-xorg-nvidia.conf-refix-config.patch
* xorg-nvidia.conf: refix config
-------------------------------------------------------------------
Fri Jan 11 16:45:45 UTC 2019 - sndirsch@suse.com
- U_prime-select.sh-bail-out-if-nvidia-xconfig-fails-use.patch
* 'nvidia-xconfig --query-gpu-info' may easily fail due to missing
NVIDIA kernel modules or alike. Therefore bail out in this case
with exit 1.
* There could be more than one NVIDIA card/GPU in the system. Use
the first detected one for X configuration in that case.
-------------------------------------------------------------------
Thu Jan 10 14:41:06 UTC 2019 - sndirsch@suse.com
- Update to release 0.3
* added "query" switch: use 'prime-select query' to check which
GPU you're currently using
* removed UseDisplayDevice option from xorg-nvidia.conf which is
not needed anymore and prevents use of external displays
- supersedes patches
* U_Fixed-syntax-error-and-handled-not-yet-existing-conf.patch
* U_adding-query-switch.patch
-------------------------------------------------------------------
Wed Jan 9 15:20:02 UTC 2019 - sndirsch@suse.com
- U_Fixed-syntax-error-and-handled-not-yet-existing-conf.patch
* Fixed syntax error and handled not yet existing configurations
-------------------------------------------------------------------
Wed Jan 9 14:41:24 UTC 2019 - sndirsch@suse.com
- U_adding-query-switch.patch
* adding "query" switch (boo#1121246)
* removing line from xorg-nvidia.conf, which is not needed
anymore and prevents use of external displays
-------------------------------------------------------------------
Mon Nov 12 10:34:07 UTC 2018 - sndirsch@suse.com
- changed Requires: nvidia_driver to Recommends in order to receive
more acceptance for integration into (open)SUSE
- added Supplements: nvidia_driver:<intel_PCI_ID>, so package gets
selected as well when nvidia driver packages are selected on an
Optimus system
- added proper and valid Group tag
-------------------------------------------------------------------
Tue Oct 16 07:53:15 UTC 2018 - msrb@suse.com
- Changed License tag to SUSE-Public-Domain - this is the value
necessary for RPM to accept Public Domain "license".
-------------------------------------------------------------------
Fri Oct 12 14:18:34 UTC 2018 - Jan Engelhardt <jengelh@inai.de>
- Use noun phrase for summary.
-------------------------------------------------------------------
Fri Aug 17 09:14:28 UTC 2018 - msrb@suse.com
- Update to release 0.2 - adapted for X server with provider
autoconfiguration patch.
-------------------------------------------------------------------
Thu Mar 24 21:36:57 UTC 2016 - bosim@opensuse.org
- Changed Source URL
-------------------------------------------------------------------
Sun Mar 20 22:07:04 UTC 2016 - bosim@opensuse.org
- Tagged release 0.1
-------------------------------------------------------------------
Sat Mar 19 12:24:20 UTC 2016 - tchvatal@suse.com
- Introduce changelog, cleanup a bit
-------------------------------------------------------------------
Sun Feb 14 00:00:00 UTC 2016 - bo@geekworld.dk
- Using master branch instead of rpm branch
-------------------------------------------------------------------
Sun Nov 22 00:00:00 UTC 2015 - bo@geekworld.dk
- Initial version

156
suse-prime.spec Normal file
View File

@ -0,0 +1,156 @@
#
# spec file for package suse-prime
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150300
# systemd-rpm-macros is wrong in 15.3 and below
%define _modprobedir /lib/modprobe.d
%endif
%global modprobe_d_files 09-nvidia-modprobe-bbswitch-G04.conf 09-nvidia-modprobe-pm-G05.conf
Name: suse-prime
Version: 0.8.15
Release: 0
Summary: GPU (nvidia/intel) selection for NVIDIA optimus laptops with bbswitch support
License: SUSE-Public-Domain
Group: System/X11/Utilities
URL: https://github.com/openSUSE/SUSEPrime
Source0: https://github.com/openSUSE/SUSEPrime/archive/%{version}.tar.gz#/SUSEPrime-%{version}.tar.gz
Recommends: nvidia_driver
Supplements: modalias(nvidia_driver:pci:v00008086d*sv*sd*bc03sc*i*)
Conflicts: suse-prime-alt
Obsoletes: suse-prime-bbswitch < %{version}
Provides: suse-prime-bbswitch = %{version}
BuildRequires: pkgconfig(systemd)
BuildArch: noarch
Requires: coreutils
Requires: pciutils
Requires: sudo
%{?systemd_ordering}
%description
A collection of shell scripts that makes it possible to use the
NVIDIA GPU on a Optimus Laptop. The switching is similar to
the feature provided by the nvidia-prime package in Ubuntu.
Uses bbswitch to switch on/of power of NVIDIA GPU.
%prep
%setup -n SUSEPrime-%{version}
%build
:
%install
mkdir -p %{buildroot}%{_datadir}/prime
install -m 0644 xorg-intel.conf %{buildroot}%{_datadir}/prime/
install -m 0644 xorg-intel-intel.conf %{buildroot}%{_datadir}/prime/
install -m 0644 xorg-nvidia.conf %{buildroot}%{_datadir}/prime/
install -m 0644 xorg-nvidia-prime-render-offload.conf %{buildroot}%{_datadir}/prime/
install -m 0644 xorg-amd.conf %{buildroot}%{_datadir}/prime/
mkdir -p %{buildroot}%{_modprobedir}
install -m 0644 09-nvidia-modprobe-bbswitch-G04.conf %{buildroot}%{_modprobedir}/
install -m 0644 09-nvidia-modprobe-pm-G05.conf %{buildroot}%{_modprobedir}/
%if 0%{?suse_version} >= 1550
mkdir -p %{buildroot}/usr/lib/dracut/dracut.conf.d/
install -m 0644 90-nvidia-dracut-G05.conf %{buildroot}/usr/lib/dracut/dracut.conf.d/
%else
mkdir -p %{buildroot}/etc/dracut.conf.d
install -m 0644 90-nvidia-dracut-G05.conf %{buildroot}/etc/dracut.conf.d
%endif
mkdir -p %{buildroot}%{_unitdir}
install -m 0644 prime-select.service %{buildroot}%{_unitdir}/
install -D -m 0755 prime-select.sh %{buildroot}%{_sbindir}/prime-select
mkdir -p %{buildroot}/usr/lib/udev/rules.d
install -m 0644 90-nvidia-udev-pm-G05.rules %{buildroot}/usr/lib/udev/rules.d
mkdir -p %{buildroot}/usr/sbin
ln -snf service %{buildroot}/usr/sbin/rcprime-select
mkdir -p %{buildroot}%{_bindir}
install -m 0755 prime-run %{buildroot}%{_bindir}
%pre
%service_add_pre prime-select.service
# Avoid restoring outdated stuff in posttrans
for _f in %{?modprobe_d_files}; do
[ ! -f "/etc/modprobe.d/${_f}.rpmsave" ] || \
mv -f "/etc/modprobe.d/${_f}.rpmsave" "/etc/modprobe.d/${_f}.rpmsave.old" || :
done
%post
%{?regenerate_initrd_post}
%service_add_post prime-select.service
systemctl enable prime-select.service
%preun
%service_del_preun prime-select.service
if [ "$1" -eq 0 ]; then
# cleanup before uninstalling the package completely
export PATH=$PATH:/usr/sbin
%{_sbindir}/prime-select unset || true
fi
%postun
if [ "$1" -eq 0 ]; then
true
%{?regenerate_initrd_post}
%service_del_postun prime-select.service
fi
%posttrans
# Migration of modprobe.conf files to _modprobedir
for _f in %{?modprobe_d_files}; do
[ ! -f "/etc/modprobe.d/${_f}.rpmsave" ] || \
mv -fv "/etc/modprobe.d/${_f}.rpmsave" "/etc/modprobe.d/${_f}" || :
done
%{?regenerate_initrd_posttrans}
%triggerin -- nvidia-gfxG05-kmp-default
# get rid of nvidia kernel modules in initrd
rm -f /etc/dracut.conf.d/50-nvidia-default.conf
%{?regenerate_initrd_post}
%files
%defattr(-,root,root)
%doc README.md
%if 0%{?suse_version} >= 1550
%dir /usr/lib/dracut/
%dir /usr/lib/dracut/dracut.conf.d/
%else
/etc/dracut.conf.d
%endif
%dir %{_datadir}/prime
%{_datadir}/prime/xorg-amd.conf
%{_datadir}/prime/xorg-intel.conf
%{_datadir}/prime/xorg-intel-intel.conf
%{_datadir}/prime/xorg-nvidia.conf
%{_datadir}/prime/xorg-nvidia-prime-render-offload.conf
%ghost %dir %{_sysconfdir}/prime
%ghost %config(noreplace) %{_sysconfdir}/prime/current_type
%{_bindir}/prime-run
%{_sbindir}/prime-select
%{_sbindir}/rcprime-select
%dir %{_modprobedir}
%{_modprobedir}/09-nvidia-modprobe-bbswitch-G04.conf
%{_modprobedir}/09-nvidia-modprobe-pm-G05.conf
%if 0%{?suse_version} >= 1550
/usr/lib/dracut/dracut.conf.d/90-nvidia-dracut-G05.conf
%else
/etc/dracut.conf.d/90-nvidia-dracut-G05.conf
%endif
/usr/lib/udev/rules.d/90-nvidia-udev-pm-G05.rules
%{_unitdir}/prime-select.service
%changelog