Added Gentoo support and enhanced README.md
This commit is contained in:
commit
03ac20500b
6 changed files with 113 additions and 39 deletions
9
AUTHORS
9
AUTHORS
|
@ -1,12 +1,13 @@
|
||||||
MAINTAINERS AND CONTRIBUTORS
|
AUTHORS, CONTRIBUTORS, MAINTAINERS
|
||||||
----------------------------
|
----------------------------------
|
||||||
|
|
||||||
Daniel Graziotin <dgraziotin AT task3 DOT cc>
|
Daniel Graziotin <dgraziotin AT task3 DOT cc>
|
||||||
Ismail Khatib <ikhatib AT gmail DOT com>
|
Ismail Khatib <ikhatib AT gmail DOT com>
|
||||||
Trevor Joynson
|
Trevor Joynson
|
||||||
|
Magnus Stubman <magnus AT stubman DOT eu>
|
||||||
|
|
||||||
|
|
||||||
ORIGINARY AUTHORS
|
ORIGINARY AUTHORS
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
Allan McRae mbpfan <http://allanmcrae.com/2010/05/simple-macbook-pro-fan-daemon>
|
Allan McRae mbpfan <http://allanmcrae.com/2010/05/simple-macbook-pro-fan-daemon>
|
||||||
rvega <https://github.com/rvega/Fan-Control-Daemon>
|
rvega <https://github.com/rvega/Fan-Control-Daemon>
|
||||||
|
|
2
Makefile
2
Makefile
|
@ -78,4 +78,4 @@ install:
|
||||||
@echo " sudo make tests"
|
@echo " sudo make tests"
|
||||||
@echo ""
|
@echo ""
|
||||||
rebuild: clean all
|
rebuild: clean all
|
||||||
#rebuild is not entirely correct
|
#rebuild is not entirely correct
|
103
README.md
103
README.md
|
@ -17,19 +17,49 @@ This enhanced version assumes any number of processors and fans (max. 10).
|
||||||
* Users can configure it using the file /etc/mbpfan.conf
|
* Users can configure it using the file /etc/mbpfan.conf
|
||||||
|
|
||||||
|
|
||||||
|
Supported GNU/Linux Distributions
|
||||||
|
---------------------------------
|
||||||
|
We provide scripts to to load mbpfan daemon at system boot for many distros.
|
||||||
|
Please note that the support is provided by volunteers. mbpfan needs test and bug reports.
|
||||||
|
|
||||||
|
Supported distributions:
|
||||||
|
|
||||||
|
- Ubuntu
|
||||||
|
- Debian
|
||||||
|
- Fedora
|
||||||
|
- RedHat
|
||||||
|
- CentOS
|
||||||
|
- Gentoo
|
||||||
|
|
||||||
|
|
||||||
|
Tested Macbook Models
|
||||||
|
---------------------
|
||||||
|
- MacBook Pro 8.1 13" (Intel i7 - Linux 3.2)
|
||||||
|
- MacBook Pro 6,2 15" (Intel i7 - Linux 3.2)
|
||||||
|
- MacBook Pro 2,2 15" (Intel Core 2 Duo - Linux 3.4.4)
|
||||||
|
|
||||||
|
|
||||||
|
Warning
|
||||||
|
-------
|
||||||
|
Be sure to load the kernel modules **applesmc** and **coretemp**.
|
||||||
|
|
||||||
|
|
||||||
Compile Instructions
|
Compile Instructions
|
||||||
---------------------
|
---------------------
|
||||||
Compile with
|
Compile with
|
||||||
make
|
|
||||||
|
make
|
||||||
|
|
||||||
Manually compile with
|
Manually compile with
|
||||||
gcc -o bin/mbpfan src/mbpfan.c -lm
|
|
||||||
|
gcc -o bin/mbpfan src/mbpfan.c -lm
|
||||||
|
|
||||||
|
|
||||||
Install Instructions
|
Install Instructions
|
||||||
--------------------
|
--------------------
|
||||||
Install with
|
Install with
|
||||||
sudo make install
|
|
||||||
|
sudo make install
|
||||||
|
|
||||||
It copies mbpfan to /usr/sbin and mbpfan.conf to /etc
|
It copies mbpfan to /usr/sbin and mbpfan.conf to /etc
|
||||||
|
|
||||||
|
@ -37,21 +67,27 @@ It copies mbpfan to /usr/sbin and mbpfan.conf to /etc
|
||||||
Run The Tests (Recommended)
|
Run The Tests (Recommended)
|
||||||
---------------------------
|
---------------------------
|
||||||
It is recommended to run the tests after installing the program
|
It is recommended to run the tests after installing the program
|
||||||
sudo ./bin/mbpfan -t
|
|
||||||
|
sudo ./bin/mbpfan -t
|
||||||
|
|
||||||
or
|
or
|
||||||
sudo make tests
|
|
||||||
|
sudo make tests
|
||||||
|
|
||||||
|
|
||||||
Run Instructions
|
Run Instructions
|
||||||
----------------
|
----------------
|
||||||
If not installed, run with
|
If not installed, run with
|
||||||
sudo bin/mbpfan
|
|
||||||
|
sudo bin/mbpfan
|
||||||
|
|
||||||
If installed, manually run with
|
If installed, manually run with
|
||||||
sudo mbpfan
|
|
||||||
|
sudo mbpfan
|
||||||
|
|
||||||
If installed and using the init file, run with (Ubuntu example)
|
If installed and using the init file, run with (Ubuntu example)
|
||||||
sudo service mbpfan start
|
|
||||||
|
sudo service mbpfan start
|
||||||
|
|
||||||
|
|
||||||
Starting at boot
|
Starting at boot
|
||||||
|
@ -60,15 +96,18 @@ Starting at boot
|
||||||
For upstart based init systems (Ubuntu), an example upstart job has been
|
For upstart based init systems (Ubuntu), an example upstart job has been
|
||||||
provided for use in place of the LSB-style init script.
|
provided for use in place of the LSB-style init script.
|
||||||
To use, execute:
|
To use, execute:
|
||||||
sudo cp mbpfan.upstart /etc/init/mbpfan.conf
|
|
||||||
sudo start mbpfan
|
sudo cp mbpfan.upstart /etc/init/mbpfan.conf
|
||||||
|
sudo start mbpfan
|
||||||
|
|
||||||
**Debian**
|
**Debian**
|
||||||
An init file suitable for /lib/lsb/init-functions (Debian)
|
An init file suitable for /lib/lsb/init-functions (Debian)
|
||||||
is located in the main folder of the source files, called mbpfan.init.debian
|
is located in the main folder of the source files, called mbpfan.init.debian
|
||||||
Rename it to mbpfan, give it execution permissions (chmod +x mbpfan)
|
Rename it to mbpfan, give it execution permissions (chmod +x mbpfan)
|
||||||
and move it to /etc/init.d
|
and move it to /etc/init.d
|
||||||
Then, add it to the default runlevels with sudo update-rc.d mbpfan defaults
|
Then, add it to the default runlevels with (as root):
|
||||||
|
|
||||||
|
sudo update-rc.d mbpfan defaults
|
||||||
|
|
||||||
**Redhat, CentOS, Fedora**
|
**Redhat, CentOS, Fedora**
|
||||||
An init file suitable for /etc/rc.d/init.d/functions
|
An init file suitable for /etc/rc.d/init.d/functions
|
||||||
|
@ -76,27 +115,43 @@ An init file suitable for /etc/rc.d/init.d/functions
|
||||||
mbpfan.init.redhat. Also rename it to mbpfan, give it execution permissions
|
mbpfan.init.redhat. Also rename it to mbpfan, give it execution permissions
|
||||||
and move it to /etc/init.d
|
and move it to /etc/init.d
|
||||||
To add the script to the default runlevels, run the following as root:
|
To add the script to the default runlevels, run the following as root:
|
||||||
chkconfig --level 2345 mbpfan on && chkconfig --level 016 mbpfan off
|
|
||||||
|
chkconfig --level 2345 mbpfan on && chkconfig --level 016 mbpfan off
|
||||||
|
|
||||||
|
**Gentoo**
|
||||||
|
An init file is available for gentoo users: mbpfan.init.gentoo
|
||||||
|
To install, run as root:
|
||||||
|
|
||||||
|
cp mbpfan.init.gentoo /etc/init.d/mbpfan
|
||||||
|
|
||||||
|
To automatically run mbpfan at boot, run as root:
|
||||||
|
|
||||||
|
rc-update add mbpfan default
|
||||||
|
|
||||||
|
|
||||||
**systemd**
|
**systemd**
|
||||||
As a special bonus, a service file for systemd is also included. To use it,
|
As a special bonus, a service file for systemd is also included. To use it,
|
||||||
execute the following as root:
|
execute the following (as root):
|
||||||
sudo cp mbpfan.service /usr/lib/systemd/system
|
|
||||||
sudo ln -s /usr/lib/systemd/system/mbpfan.service /etc/systemd/system/mbpfan.service
|
sudo cp mbpfan.service /usr/lib/systemd/system
|
||||||
sudo systemctl daemon-reload
|
sudo ln -s /usr/lib/systemd/system/mbpfan.service /etc/systemd/system/mbpfan.service
|
||||||
sudo systemctl start mbpfan.service
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl start mbpfan.service
|
||||||
|
|
||||||
To start the service automatically at boot, also execute the following:
|
To start the service automatically at boot, also execute the following:
|
||||||
sudo systemctl enable mbpfan.service
|
|
||||||
|
sudo systemctl enable mbpfan.service
|
||||||
|
|
||||||
|
|
||||||
Usage
|
Usage
|
||||||
-------
|
-------
|
||||||
Usage: ./mbpfan OPTION(S)
|
|
||||||
-h Show the help screen
|
Usage: ./mbpfan OPTION(S)
|
||||||
-f Run in foreground
|
|
||||||
-t Run the tests
|
-h Show the help screen
|
||||||
-v Be (a lot) verbose
|
-f Run in foreground
|
||||||
|
-t Run the tests
|
||||||
|
-v Be (a lot) verbose
|
||||||
|
|
||||||
|
|
||||||
License
|
License
|
||||||
|
@ -110,4 +165,4 @@ Based On
|
||||||
* http://allanmcrae.com/2011/08/mbp-fan-daemon-update/
|
* http://allanmcrae.com/2011/08/mbp-fan-daemon-update/
|
||||||
* https://launchpad.net/macfanctld
|
* https://launchpad.net/macfanctld
|
||||||
* http://paste2.org/p/862259
|
* http://paste2.org/p/862259
|
||||||
* http://www.lobotomo.com/products/FanControl/
|
* http://www.lobotomo.com/products/FanControl/
|
18
mbpfan.init.gentoo
Executable file
18
mbpfan.init.gentoo
Executable file
|
@ -0,0 +1,18 @@
|
||||||
|
#!/sbin/runscript
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
use logger
|
||||||
|
}
|
||||||
|
|
||||||
|
start() {
|
||||||
|
ebegin "Starting mbpfan"
|
||||||
|
start-stop-daemon --start --quiet --exec /usr/sbin/mbpfan
|
||||||
|
eend $?
|
||||||
|
}
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
ebegin "Stopping mbpfan"
|
||||||
|
start-stop-daemon --stop --quiet --exec /usr/sbin/mbpfan
|
||||||
|
eend $?
|
||||||
|
}
|
||||||
|
|
|
@ -10,16 +10,6 @@
|
||||||
int tests_run = 0;
|
int tests_run = 0;
|
||||||
|
|
||||||
|
|
||||||
struct s_sensors {
|
|
||||||
char* path;
|
|
||||||
char* fan_output_path;
|
|
||||||
char* fan_manual_path;
|
|
||||||
unsigned int temperature;
|
|
||||||
struct s_sensors *next;
|
|
||||||
};
|
|
||||||
typedef s_sensors t_sensors;
|
|
||||||
|
|
||||||
|
|
||||||
static char *test_sensor_paths()
|
static char *test_sensor_paths()
|
||||||
{
|
{
|
||||||
t_sensors* sensors = retrieve_sensors();
|
t_sensors* sensors = retrieve_sensors();
|
||||||
|
|
|
@ -5,6 +5,16 @@
|
||||||
#define mu_run_test(test) do { char *message = test(); tests_run++; \
|
#define mu_run_test(test) do { char *message = test(); tests_run++; \
|
||||||
if (message) return message; } while (0)
|
if (message) return message; } while (0)
|
||||||
|
|
||||||
|
struct s_sensors {
|
||||||
|
char* path;
|
||||||
|
char* fan_output_path;
|
||||||
|
char* fan_manual_path;
|
||||||
|
unsigned int temperature;
|
||||||
|
struct s_sensors *next;
|
||||||
|
};
|
||||||
|
typedef s_sensors t_sensors;
|
||||||
|
|
||||||
|
|
||||||
extern int tests_run;
|
extern int tests_run;
|
||||||
|
|
||||||
static char *test_sensor_paths();
|
static char *test_sensor_paths();
|
||||||
|
|
Loading…
Add table
Reference in a new issue