Added Gentoo support and enhanced README.md
This commit is contained in:
commit
03ac20500b
6 changed files with 113 additions and 39 deletions
7
AUTHORS
7
AUTHORS
|
@ -1,12 +1,13 @@
|
|||
MAINTAINERS AND CONTRIBUTORS
|
||||
----------------------------
|
||||
AUTHORS, CONTRIBUTORS, MAINTAINERS
|
||||
----------------------------------
|
||||
|
||||
Daniel Graziotin <dgraziotin AT task3 DOT cc>
|
||||
Ismail Khatib <ikhatib AT gmail DOT com>
|
||||
Trevor Joynson
|
||||
Magnus Stubman <magnus AT stubman DOT eu>
|
||||
|
||||
|
||||
ORIGINARY AUTHORS
|
||||
-----------------
|
||||
|
||||
Allan McRae mbpfan <http://allanmcrae.com/2010/05/simple-macbook-pro-fan-daemon>
|
||||
rvega <https://github.com/rvega/Fan-Control-Daemon>
|
||||
|
|
59
README.md
59
README.md
|
@ -17,18 +17,48 @@ This enhanced version assumes any number of processors and fans (max. 10).
|
|||
* 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 with
|
||||
|
||||
make
|
||||
|
||||
Manually compile with
|
||||
|
||||
gcc -o bin/mbpfan src/mbpfan.c -lm
|
||||
|
||||
|
||||
Install Instructions
|
||||
--------------------
|
||||
Install with
|
||||
|
||||
sudo make install
|
||||
|
||||
It copies mbpfan to /usr/sbin and mbpfan.conf to /etc
|
||||
|
@ -37,20 +67,26 @@ It copies mbpfan to /usr/sbin and mbpfan.conf to /etc
|
|||
Run The Tests (Recommended)
|
||||
---------------------------
|
||||
It is recommended to run the tests after installing the program
|
||||
|
||||
sudo ./bin/mbpfan -t
|
||||
|
||||
or
|
||||
|
||||
sudo make tests
|
||||
|
||||
|
||||
Run Instructions
|
||||
----------------
|
||||
If not installed, run with
|
||||
|
||||
sudo bin/mbpfan
|
||||
|
||||
If installed, manually run with
|
||||
|
||||
sudo mbpfan
|
||||
|
||||
If installed and using the init file, run with (Ubuntu example)
|
||||
|
||||
sudo service mbpfan start
|
||||
|
||||
|
||||
|
@ -60,6 +96,7 @@ Starting at boot
|
|||
For upstart based init systems (Ubuntu), an example upstart job has been
|
||||
provided for use in place of the LSB-style init script.
|
||||
To use, execute:
|
||||
|
||||
sudo cp mbpfan.upstart /etc/init/mbpfan.conf
|
||||
sudo start mbpfan
|
||||
|
||||
|
@ -68,7 +105,9 @@ An init file suitable for /lib/lsb/init-functions (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)
|
||||
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**
|
||||
An init file suitable for /etc/rc.d/init.d/functions
|
||||
|
@ -76,23 +115,39 @@ An init file suitable for /etc/rc.d/init.d/functions
|
|||
mbpfan.init.redhat. Also rename it to mbpfan, give it execution permissions
|
||||
and move it to /etc/init.d
|
||||
To add the script to the default runlevels, run the following as root:
|
||||
|
||||
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**
|
||||
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 systemctl daemon-reload
|
||||
sudo systemctl start mbpfan.service
|
||||
|
||||
To start the service automatically at boot, also execute the following:
|
||||
|
||||
sudo systemctl enable mbpfan.service
|
||||
|
||||
|
||||
Usage
|
||||
-------
|
||||
|
||||
Usage: ./mbpfan OPTION(S)
|
||||
|
||||
-h Show the help screen
|
||||
-f Run in foreground
|
||||
-t Run the tests
|
||||
|
|
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;
|
||||
|
||||
|
||||
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()
|
||||
{
|
||||
t_sensors* sensors = retrieve_sensors();
|
||||
|
|
|
@ -5,6 +5,16 @@
|
|||
#define mu_run_test(test) do { char *message = test(); tests_run++; \
|
||||
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;
|
||||
|
||||
static char *test_sensor_paths();
|
||||
|
|
Loading…
Add table
Reference in a new issue