![EnvyControl Logo](https://github.com/bayasdev/envycontrol/raw/main/logos/light.png)
Optimus made easy, without SystemD
(Project is on hold due to life problems, IK typical but I will try my best to continue it)
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.
Please refer to https://github.com/bayasdev/envycontrol for more information about EnvyControl
-
Installenvycontrol-openrc
orenvycontrol-dinit
orenvycontrol-runit
orenvycontrol-s6
from the AUR -
Run
sudo envycontrol -s <MODE> --dm <DISPLAY MANAGER>
to switch graphics modes
-
Install
nvidia-utils-openrc
ornvidia-utils-dinit
ornvidia-utils
andnvidia
ornvidia-dkms
from the World repo -
If you are using Runit or S6, you will need to install the nvidia-persistenced daemon
-
Runit:
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
-
S6:
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
-
-
Replace envycontrol.py with my version:
-
OpenRC -
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
-
Dinit -
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
-
Runit -
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
-
S6 -
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;
IgnorePkg = envycontrol
-
Run
sudo envycontrol -s <MODE> --dm <DISPLAY MANAGER>
to switch graphics modes -
Reboot
-
Modified nvidia-persistenced start commands
-
Modified nvidia-persistenced stop commands
-
Removed ability to not specify a display manager
-
Added
manual
as an accepted display manager;--dm manual
-
Created manual display manager warning
-
Modified error messages to reflect the changes