Skip to main content
Topic: {Guide} Install EnvyControl (OpenRC/Dinit/Runit/S6)(Nvidia Optimus) (Read 1205 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

{Guide} Install EnvyControl (OpenRC/Dinit/Runit/S6)(Nvidia Optimus)

Description
I have modified EnvyControl to work across all popular init systems, however automatic display manager detection is disabled due to there being no good way to achieve it without SystemD. In practical terms, the only change is that you need to specify a display manager.

https://github.com/ToneyFoxxy/ToneyFoxxy-EnvyControl-Without-SystemD/

Installation:
  • Install  "nvidia"  or "nvidia-dkms" and "nvidia-utils-openrc" or "nvidia-utils-dinit" or "nvidia-utils" from the World repos
  • If you are on Runit or S6, you will probably need to install the "nvidia-persistenced" daemon:
    Code: (Runit) [Select]
    sudo curl https://raw.githubusercontent.com/NVIDIA/nvidia-persistenced/main/init/sysv/nvidia-persistenced.template > /etc/runit/sv/nvidia-persistenced.txt && chmod +x /etc/runit/sv/nvidia-persistenced.txt
    Code: (S6) [Select]
    sudo curl https://raw.githubusercontent.com/NVIDIA/nvidia-persistenced/main/init/sysv/nvidia-persistenced.template > /etc/s6/sv/nvidia-persistenced.txt && chmod +x /etc/s6/sv/nvidia-persistenced.txt
  • Install "envycontrol" from the AUR
  • Replace the default "envycontrol.py" with my version:
    Code: (OpenRC) [Select]
    sudo rm /usr/lib/python3.11/site-packages/envycontrol.py && curl https://raw.githubusercontent.com/ToneyFoxxy/ToneyFoxxy-EnvyControl-Without-SystemD/main/OpenRC/envycontrol.py > /usr/lib/python3.11/site-packages/envycontrol.py
    Code: (Dinit) [Select]
    sudo rm /usr/lib/python3.11/site-packages/envycontrol.py && curl https://raw.githubusercontent.com/ToneyFoxxy/ToneyFoxxy-EnvyControl-Without-SystemD/main/Dinit/envycontrol.py > /usr/lib/python3.11/site-packages/envycontrol.py
    Code: (Runit) [Select]
    sudo rm /usr/lib/python3.11/site-packages/envycontrol.py && curl https://raw.githubusercontent.com/ToneyFoxxy/ToneyFoxxy-EnvyControl-Without-SystemD/main/Runit/envycontrol.py > /usr/lib/python3.11/site-packages/envycontrol.py
    Code: (S6) [Select]
    sudo rm /usr/lib/python3.11/site-packages/envycontrol.py && curl https://raw.githubusercontent.com/ToneyFoxxy/ToneyFoxxy-EnvyControl-Without-SystemD/main/S6/envycontrol.py > /usr/lib/python3.11/site-packages/envycontrol.py
  • Add "envycontrol" to the ignored packages in "/etc/pacman.conf" so it doesn't get updated automatically:
    Code: (pacman.conf) [Select]
    IgnorePkg    = envycontrol
  • Run EnvyControl:
    Code: (SDDM) [Select]
    sudo envycontrol -s nvidia --dm sddm

Re: {Guide} Install EnvyControl (OpenRC/Dinit/Runit/S6)(Nvidia Optimus)

Reply #1
Thanks! It worked but when I set the mode to 'nvidia' it refuses to show anything upon startx. It's probably not your fault, setting to hybrid works.

Re: {Guide} Install EnvyControl (OpenRC/Dinit/Runit/S6)(Nvidia Optimus)

Reply #2
*Edit* Scratch what I posted earlier I'm still having an input lag problem.

*edit2* Basically every 30 seconds to minute I'm having a 1-2 second hiccup where my input lags out or something.

It just doesn't register typing or mouse input for a second then it comes back again. Pretty weird. I don't recall having this problem on vanilla arch. It seems like some kind of conflict between drivers, but the only thing I have besides nvidia on my system is  xf86-video-amdgpu, and I can't load graphics at all without that.

I suppose I'm going to try vanilla arch on an external hard drive and see if I have the same problem b/c I never had it in the past.

Re: {Guide} Install EnvyControl (OpenRC/Dinit/Runit/S6)(Nvidia Optimus)

Reply #3

It seems like some kind of conflict between drivers, but the only thing I have besides nvidia on my system is  xf86-video-amdgpu, and I can't load graphics at all without that
Nvidia driver is for Nvidia graphics.  amd gpu driver is for amd graphics.

you should only use the one intended for your graphics card

hope this helps