Difference between pages "Package:ACPI Daemon" and "Emerge"

From Funtoo
(Difference between pages)
Jump to: navigation, search
 
(Getting started with emerge)
 
Line 1: Line 1:
== Introduction ==
+
== Getting started with emerge ==
==== What is acpi? ====
+
Emerge is the front-end for funtoo's portage package manager. With emerge it is easy to install, update or remove packages.
"In computing, the Advanced Configuration and Power Interface (ACPI) specification provides an open standard for device configuration and power management by the operating system." ([http://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface Wikipedia])
+
  
==== What is acpid? ====
+
=== Update package database ===
"ACPID is a completely flexible, totally extensible daemon for delivering ACPI events. It listens on a file (<code>/proc/acpi/event</code>) and when an event occurs, executes programs to handle the event. The programs it executes are configured through a set of configuration files, which can be dropped into place by packages or by the admin." ([http://acpid.sourceforge.net/ acpid Sourceforge])
+
'''Sync local package database. This will update your local Portage tree with the latest Funtoo ebuilds.'''
 +
<console>
 +
###i## emerge --sync
 +
</console>
  
== Preparing to install ==
+
=== Search packages ===
==== Kernel configuration ====
+
'''Search packages by name.'''
Before we are ready to emerge acpid, it is a good idea to modify a few things in the kernel. If you have not modified your kernel before, you may want to check out the following page on configuring a kernel manually (page to be added..).
+
<console>
 +
###i## emerge -s firefox
 +
###i## emerge --search firefox
 +
</console>
  
{{kernelop
+
'''Search packages by description.'''
|'''Power management and ACPI options --->'''
+
<console>
|[*] ACPI (Advanced Configuration and Power Interface) Support
+
###i## emerge -S web browser
}}
+
###i## emerge --searchdesc web browser
 +
</console>
  
==== Optional: Other ACPI features ====
+
=== Install packages ===
Below are the locations and short descriptions of the function of different ACPI options in the kernel. In the majority of cases, you do not have to alter any of these to have a functional ACPI system.  
+
'''Install package.'''
 +
<console>
 +
###i## emerge firefox
 +
</console>
  
* '''AC Adapter'''
+
'''Install multiple packages.'''
{{kernelop
+
<console>
|'''Power management and ACPI options ---><br> ACPI (Advanced Configuration and Power Interface) Support --->'''
+
###i## emerge firefox thunderbird
|< > AC Adapter
+
</console>
}}
+
{{Note}} If you have a system that can switch between being plugged into AC and using a battery (i.e. a laptop), you should compile this option into your kernel.
+
  
'''Battery'''
+
'''Install package. Ask for confirmation before performing any changes. Show verbose output.'''
{{kernelop
+
<console>
|'''Power management and ACPI options ---><br> ACPI (Advanced Configuration and Power Interface) Support --->'''
+
###i## emerge -av firefox
|< > Battery
+
###i## emerge --ask firefox
}}
+
</console>
{{Note}} As its name would suggest, this option adds or removes support for the battery. More specifically, through /proc/acpi/battery. If you have a laptop or other mobile system, you should probably compile this into your kernel.
+
  
* '''Button'''
+
=== Remove packages ===
{{kernelop
+
'''Remove package.'''
|'''Power management and ACPI options ---><br> ACPI (Advanced Configuration and Power Interface) Support --->'''
+
<console>
|< > Button
+
###i## emerge -C firefox
}}
+
###i## emerge --unmerge firefox
{{Note}} This driver handles power, sleep, and other buttons. This driver is recommended because it is necessary for software controlled power-off.
+
</console>
  
* '''Video'''
+
'''Remove package. Ask for confirmation before performing any changes.'''
{{kernelop
+
<console>
|'''Power management and ACPI options ---><br> ACPI (Advanced Configuration and Power Interface) Support --->'''
+
###i## emerge -aC firefox
|< > Video
+
</console>
}}
+
{{Note}} Implements ACPI extensions for integrated graphics devices. Also adds support for setting up a video output.
+
  
* '''Fan'''
+
'''Remove orphaned packages. Ask for confirmation before performing any changes.'''
{{kernelop
+
|'''Power management and ACPI options ---><br>  ACPI (Advanced Configuration and Power Interface) Support --->'''
+
|< > Fan
+
}}
+
{{Note}} Allows user-controlled applications to control fan speeds and access status of fans.  
+
 
+
* '''Dock'''
+
{{kernelop
+
|'''Power management and ACPI options ---><br>  ACPI (Advanced Configuration and Power Interface) Support --->'''
+
|[ ] Dock
+
}}
+
{{Note}} Builds support in the kernel for docking stations like the Dell Module Bay and the IBM Ultrabay.  
+
 
+
* '''Processor'''
+
{{kernelop
+
|'''Power management and ACPI options ---><br>  ACPI (Advanced Configuration and Power Interface) Support --->'''
+
|< > Processor
+
}}
+
{{Note}} Helps save power while processor is idling and is required by several cpufreq drivers.
+
 
+
* '''Processor Aggregator'''
+
{{kernelop
+
|'''Power management and ACPI options ---><br>  ACPI (Advanced Configuration and Power Interface) Support --->'''
+
|< > Processor Aggregator
+
}}
+
{{Note}} Allows the host system to practice logical processor idling (a way to reduce power consumption)
+
 
+
* '''Thermal Zone'''
+
{{kernelop
+
|'''Power management and ACPI options ---><br>  ACPI (Advanced Configuration and Power Interface) Support --->'''
+
|< > Thermal Zone
+
}}
+
{{Note}} Enables support for ACPI thermal zones. It is encouraged to enable this option, as your system may be damaged without it.
+
 
+
== Installing acpid ==
+
==== Emerging ====
+
After configuring the kernel power management options, we are ready to install acpid. To install acpid, run the following command:
+
 
<console>
 
<console>
###i## emerge -av acpid
+
###i## emerge -a --depclean
 
</console>
 
</console>
  
==== Adding to rc ====
+
=== Update packages ===
After you have finished emerging acpid, you may want to add it to the list of rc services to be started with your system at boot.
+
'''Update all packages.'''
 
<console>
 
<console>
###i## rc-update add acpid default
+
###i## emerge -uDN @world
 
</console>
 
</console>
Then, run the following to start acpid:
+
 
 +
'''Update all packages. Ask for confirmation before performing any changes. Show verbose output.'''
 
<console>
 
<console>
###i## rc
+
###i## emerge -uavDN @world
 
</console>
 
</console>
 +
 +
== Emerge options ==
 +
 +
; --sync
 +
: Updates the portage tree that is located in /usr/portage by default.
 +
 +
; --search -s
 +
: Searches  for  matches  of  the  supplied  string in the portage tree.
 +
 +
; --searchdesc -S
 +
: Matches the search string against the description field as well as the package name.
 +
 +
; --ask -a
 +
: Ask for confirmation before performing any changes.
 +
 +
; --pretend -p
 +
: Instead of actually performing the merge, simply display what *would* have been installed if --pretend weren't used.
 +
 +
; --unmerge -C
 +
: Removes all matching packages.
 +
 +
; --update -u
 +
: Updates  packages to the best version available, which may not always be the  highest version number due to masking for testing and development.
 +
 +
; --deep [DEPTH] -D
 +
: force  emerge  to  consider  the  entire  dependency tree of packages, instead of checking only the immediate dependencies of the packages.
 +
 +
; --newuse -N
 +
: Tells emerge to include installed packages where USE flags have changed since compilation.
 +
 +
; --depclean -c
 +
: Remove orphaned packages. Cleans the system by removing packages that are not associated with explicitly merged packages.
 +
 +
; --autounmask-write
 +
: Automatically write package.use settings as necessary to satisfy dependencies.
 +
 +
; --resume -r
 +
: Resumes  the  most recent merge list that has been aborted due to an error.
 +
 +
; --jobs[=JOBS] -j [JOBS]
 +
: Specifies the number of packages to build simultaneously.
 +
 +
; --load-average [LOAD]
 +
: Specifies  that  no  new  builds should be started if there are other builds running and the load average is at least LOAD (a floating-point number).
 +
 +
== Configuration ==
 +
Emerge can be configured with /etc/portage/make.conf
 +
<pre>CFLAGS="-march=native -O2 -pipe"
 +
CXXFLAGS="-march=native -O2 -pipe"
 +
 +
MAKEOPTS="-j2"
 +
EMERGE_DEFAULT_OPTS="--jobs 2 --load-average 2"
 +
INPUT_DEVICES="evdev synaptics"
 +
VIDEO_CARDS="intel i965"
 +
LINGUAS="en en_US en_GB"
 +
ACCEPT_LICENSE="*"
 +
 +
USE="mmx mmxext sse sse2 sse3 ssse3 threads alsa X gtk xcb dri opengl vaapi udev \
 +
    svg x264 xvid gstreamer webm vpx icu bash-completion vim-pager \
 +
    -gnome -xscreensaver -cups -fortran -deprecated -iptables -ipv6 -geoloc \
 +
    -mta -sendmail -kmod -tiff -live -quicktime -real -gpm -themes"</pre>
 +
 +
Per-package use flags can be configured with /etc/portage/package.use
 +
<pre>x11-wm/dwm savedconfig
 +
media-sound/ncmpcpp visualizer clock taglib</pre>
 +
 +
If you want to install package that has not been tested on your architecture you need to edit /etc/portage/package.accept_keywords
 +
<pre>=app-misc/screenfetch-9999 **</pre>
 +
 +
== Further info ==
 +
For further info see emerge man page.
 +
<console>$ man emerge</console>
 +
 +
[[Category:Portage]]
 +
 +
[[Category:HOWTO]]
 +
[[Category:Tutorial]]
 
[[Category:System]]
 
[[Category:System]]

Revision as of 23:09, 10 January 2014

Contents

Getting started with emerge

Emerge is the front-end for funtoo's portage package manager. With emerge it is easy to install, update or remove packages.

Update package database

Sync local package database. This will update your local Portage tree with the latest Funtoo ebuilds.

# emerge --sync

Search packages

Search packages by name.

# emerge -s firefox
# emerge --search firefox

Search packages by description.

# emerge -S web browser
# emerge --searchdesc web browser

Install packages

Install package.

# emerge firefox

Install multiple packages.

# emerge firefox thunderbird

Install package. Ask for confirmation before performing any changes. Show verbose output.

# emerge -av firefox
# emerge --ask firefox

Remove packages

Remove package.

# emerge -C firefox
# emerge --unmerge firefox

Remove package. Ask for confirmation before performing any changes.

# emerge -aC firefox

Remove orphaned packages. Ask for confirmation before performing any changes.

# emerge -a --depclean

Update packages

Update all packages.

# emerge -uDN @world

Update all packages. Ask for confirmation before performing any changes. Show verbose output.

# emerge -uavDN @world

Emerge options

--sync
Updates the portage tree that is located in /usr/portage by default.
--search -s
Searches for matches of the supplied string in the portage tree.
--searchdesc -S
Matches the search string against the description field as well as the package name.
--ask -a
Ask for confirmation before performing any changes.
--pretend -p
Instead of actually performing the merge, simply display what *would* have been installed if --pretend weren't used.
--unmerge -C
Removes all matching packages.
--update -u
Updates packages to the best version available, which may not always be the highest version number due to masking for testing and development.
--deep [DEPTH] -D
force emerge to consider the entire dependency tree of packages, instead of checking only the immediate dependencies of the packages.
--newuse -N
Tells emerge to include installed packages where USE flags have changed since compilation.
--depclean -c
Remove orphaned packages. Cleans the system by removing packages that are not associated with explicitly merged packages.
--autounmask-write
Automatically write package.use settings as necessary to satisfy dependencies.
--resume -r
Resumes the most recent merge list that has been aborted due to an error.
--jobs[=JOBS] -j [JOBS]
Specifies the number of packages to build simultaneously.
--load-average [LOAD]
Specifies that no new builds should be started if there are other builds running and the load average is at least LOAD (a floating-point number).

Configuration

Emerge can be configured with /etc/portage/make.conf

CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="-march=native -O2 -pipe"

MAKEOPTS="-j2"
EMERGE_DEFAULT_OPTS="--jobs 2 --load-average 2"
INPUT_DEVICES="evdev synaptics"
VIDEO_CARDS="intel i965"
LINGUAS="en en_US en_GB"
ACCEPT_LICENSE="*"

USE="mmx mmxext sse sse2 sse3 ssse3 threads alsa X gtk xcb dri opengl vaapi udev \
     svg x264 xvid gstreamer webm vpx icu bash-completion vim-pager \
     -gnome -xscreensaver -cups -fortran -deprecated -iptables -ipv6 -geoloc \
     -mta -sendmail -kmod -tiff -live -quicktime -real -gpm -themes"

Per-package use flags can be configured with /etc/portage/package.use

x11-wm/dwm savedconfig
media-sound/ncmpcpp visualizer clock taglib

If you want to install package that has not been tested on your architecture you need to edit /etc/portage/package.accept_keywords

=app-misc/screenfetch-9999 **

Further info

For further info see emerge man page.

$ man emerge