14
README.md
14
README.md
@@ -53,6 +53,13 @@ sudo systemctl enable --now lenovo_fix.service
|
|||||||
```
|
```
|
||||||
Thanks to *felixonmars* for creating and maintaining this package.
|
Thanks to *felixonmars* for creating and maintaining this package.
|
||||||
|
|
||||||
|
### Artix Linux
|
||||||
|
```
|
||||||
|
makepkg -si
|
||||||
|
sudo rc-update add lenovo_fix default
|
||||||
|
sudo rc-service lenovo_fix start
|
||||||
|
```
|
||||||
|
|
||||||
### Debian/Ubuntu
|
### Debian/Ubuntu
|
||||||
```
|
```
|
||||||
sudo apt install git build-essential python3-dev libdbus-glib-1-dev libgirepository1.0-dev libcairo2-dev python3-venv python3-wheel
|
sudo apt install git build-essential python3-dev libdbus-glib-1-dev libgirepository1.0-dev libcairo2-dev python3-venv python3-wheel
|
||||||
@@ -130,6 +137,12 @@ sv down lenovo_fix
|
|||||||
rm /var/service/lenovo_fix
|
rm /var/service/lenovo_fix
|
||||||
```
|
```
|
||||||
|
|
||||||
|
If you're using OpenRC instead of systemd:
|
||||||
|
```
|
||||||
|
rc-service lenovo_fix stop
|
||||||
|
rc-update del lenovo_fix default
|
||||||
|
```
|
||||||
|
|
||||||
If you also need to remove the tool from the system:
|
If you also need to remove the tool from the system:
|
||||||
```
|
```
|
||||||
rm -rf /opt/lenovo_fix /etc/systemd/system/lenovo_fix.service
|
rm -rf /opt/lenovo_fix /etc/systemd/system/lenovo_fix.service
|
||||||
@@ -145,6 +158,7 @@ cd lenovo-throttling-fix
|
|||||||
git pull
|
git pull
|
||||||
sudo ./install.sh
|
sudo ./install.sh
|
||||||
sudo systemctl restart lenovo_fix.service
|
sudo systemctl restart lenovo_fix.service
|
||||||
|
OpenRC: sudo rc-service lenovo_fix restart
|
||||||
```
|
```
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|||||||
10
install.sh
10
install.sh
@@ -6,6 +6,8 @@ if pidof systemd 2>&1 1>/dev/null; then
|
|||||||
systemctl stop lenovo_fix.service >/dev/null 2>&1
|
systemctl stop lenovo_fix.service >/dev/null 2>&1
|
||||||
elif pidof runit 2>&1 1>/dev/null; then
|
elif pidof runit 2>&1 1>/dev/null; then
|
||||||
sv down lenovo_fix >/dev/null 2>&1
|
sv down lenovo_fix >/dev/null 2>&1
|
||||||
|
elif pidof openrc 2>&1 1>/dev/null; then
|
||||||
|
rc-service lenovo_fix stop >/dev/null 2>&1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mkdir -p "$INSTALL_DIR" >/dev/null 2>&1
|
mkdir -p "$INSTALL_DIR" >/dev/null 2>&1
|
||||||
@@ -26,6 +28,10 @@ if pidof systemd 2>&1 1>/dev/null; then
|
|||||||
elif pidof runit 2>&1 1>/dev/null; then
|
elif pidof runit 2>&1 1>/dev/null; then
|
||||||
echo "Copying runit service file"
|
echo "Copying runit service file"
|
||||||
cp -R runit/lenovo_fix /etc/sv/
|
cp -R runit/lenovo_fix /etc/sv/
|
||||||
|
elif pidof openrc-init 2>&1 1>/dev/null; then
|
||||||
|
echo "Copying OpenRC service file"
|
||||||
|
cp -R openrc/lenovo_fix /etc/init.d/lenovo_fix
|
||||||
|
chmod 755 /etc/init.d/lenovo_fix
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Building virtualenv..."
|
echo "Building virtualenv..."
|
||||||
@@ -44,6 +50,10 @@ elif pidof runit 2>&1 1>/dev/null; then
|
|||||||
echo "Enabling and starting runit service..."
|
echo "Enabling and starting runit service..."
|
||||||
ln -sv /etc/sv/lenovo_fix /var/service/
|
ln -sv /etc/sv/lenovo_fix /var/service/
|
||||||
sv up lenovo_fix
|
sv up lenovo_fix
|
||||||
|
elif pidof openrc-init 2>&1 1>/dev/null; then
|
||||||
|
echo "Enabling and starting OpenRC service..."
|
||||||
|
rc-update add lenovo_fix default
|
||||||
|
rc-service lenovo_fix start
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "All done."
|
echo "All done."
|
||||||
|
|||||||
5
openrc/lenovo_fix
Normal file
5
openrc/lenovo_fix
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/openrc-run
|
||||||
|
command="env python3 /usr/lib/throttled/lenovo_fix.py"
|
||||||
|
pidfile=${pidfile-/var/run/lenovo_fix.pid}
|
||||||
|
description="Stop Intel throttling"
|
||||||
|
command_background="yes"
|
||||||
31
package/PKGBUILD
Normal file
31
package/PKGBUILD
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
|
||||||
|
pkgname=throttled
|
||||||
|
pkgver=0.6
|
||||||
|
pkgrel=4
|
||||||
|
pkgdesc="Workaround for Intel throttling issues in Linux."
|
||||||
|
arch=('any')
|
||||||
|
url="https://github.com/erpalma/throttled"
|
||||||
|
license=('MIT')
|
||||||
|
depends=('python-dbus' 'python-psutil' 'python-gobject')
|
||||||
|
conflicts=('lenovo-throttling-fix-git' 'lenovo-throttling-fix')
|
||||||
|
replaces=('lenovo-throttling-fix')
|
||||||
|
backup=('etc/lenovo_fix.conf')
|
||||||
|
source=("git+https://github.com/Hyper-KVM/throttled.git#branch=openrc")
|
||||||
|
sha256sums=('SKIP')
|
||||||
|
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cd "${srcdir}/throttled/"
|
||||||
|
python -m compileall *.py
|
||||||
|
}
|
||||||
|
|
||||||
|
package() {
|
||||||
|
cd "${srcdir}/throttled/"
|
||||||
|
install -Dm644 etc/lenovo_fix.conf "$pkgdir"/etc/lenovo_fix.conf
|
||||||
|
install -Dm644 systemd/lenovo_fix.service "$pkgdir"/usr/lib/systemd/system/lenovo_fix.service
|
||||||
|
install -Dm755 lenovo_fix.py "$pkgdir"/usr/lib/$pkgname/lenovo_fix.py
|
||||||
|
install -Dm755 openrc/lenovo_fix "$pkgdir/etc/init.d/lenovo_fix"
|
||||||
|
install -Dm755 mmio.py "$pkgdir"/usr/lib/$pkgname/mmio.py
|
||||||
|
cp -a __pycache__ "$pkgdir"/usr/lib/$pkgname/
|
||||||
|
install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user