This is a java program that allows the user to simply install and use acpi_call kernel module via graphic Interface, and also provides an useful script that automatically recompiles the kernel after each update.
Java Shell

README.md

acpi_call_GUI

❗❗❗ IMPORTANT NOTICE:❗❗❗

Since Ubuntu 16.04 (and its derivatives) you must use acpi_call_GUI_systemd

or if you want to use this version you have to manually enable rc-local.service (systemd service):

sudo systemctl enable rc-local.service

This is a java program that provides a graphic interface that allows the user to:

  • Install the acpi_call kernel module (kernel would be recompiled automatically after each update);

  • Deactivate discrete GPU after unloading its driver (supports radeon, amdgpu and nouveau);

  • Automatically deactivate discrete GPU on every boot.


This version only works with Ubuntu and its derivatives, and needs to be installed firefox: it will try to open the default web browser but if it fails it will fall back and launch Firefox.

Oder linux distros user? You just need the support for systemd! See here: acpi_call_GUI_systemd


To install:

after downloading the program, enter the directory acpi_call_GUI and launch install.sh as root. if you have downloaded the program in your home directory, for example by typing:

git clone https://github.com/marcoDallas/acpi_call_GUI.git ~/

then you only need to type in a terminal:

cd ~/acpi_call_GUI 

chmod +x install.sh 

./install.sh 

Attention - prerequisites:

Please note that 'pkexec' is used to grant super-user access, so make sure that polkit is installed in your system.

Also Java needs to be installed, at least version 8: openjdk-8-jre or Oracle Java 8.


To execute:

Search the program in yuor dash and click on the icon, or type in a terminal:

java -jar $HOME/acpi_call_GUI.jar

It will ask for the administrator password when necessary, it may also ask for it multiple times. Also since version 2.0 a reboot is required after installation to properly unload the discrete GPU driver.

See here for a (legacy) video guide: Video tutorial acpi_call_GUI


Note:

Since version 2.0 this program uses my own fork of acpi_call, which have kernel 3.17+ compatibilty and other small fixes.

acpi_call module should be used with caution. I reccomend you to take a look to the readme of the acpi_call module: https://github.com/mkottman/acpi_call


To uninstall:

If you deleted the acpi_call_GUI folder in your home directory re-type the following command in a terminal:

git clone https://github.com/marcoDallas/acpi_call_GUI.git ~/

if you haven't deleted the folder - or if you just used the command above - type now the following commands:

cd ~/acpi_call_GUI

chmod +x uninstall.sh

sudo ./uninstall.sh

Finally you can delete the acpi_call_GUI folder and the acpi_call_GUI.jar file from your home directory.


Screenshots:

acpi_call_GUI:

Image


Since version 1.4 you can try to automatically find a deactivation code!

Image


Here you can read eventual outputs or errors:

Image


Copy here the 'Working ACPI handle OFF' code relative to your computer:

Image


Copyright:

Copyright (C) 2013-2017: Marco Dalla Libera

acpi_call_GUI is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

acpi_call_GUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

and:

Copyright (c) 2010: Michal Kottman for acpi_call module, which is used by this program.