https://wiki.archlinux.org/api.php?action=feedcontributions&user=Skorpan&feedformat=atomArchWiki - User contributions [en]2024-03-29T09:20:33ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Hp_6510b&diff=70195Hp 6510b2009-06-08T13:22:06Z<p>Skorpan: Redirected page to HP Compaq 6510b</p>
<hr />
<div>#REDIRECT[[HP Compaq 6510b]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=X&diff=70054X2009-06-05T14:43:19Z<p>Skorpan: Fixing the redirect...</p>
<hr />
<div>#REDIRECT[[Xorg]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=X&diff=70053X2009-06-05T14:42:42Z<p>Skorpan: Redirecting to Xorg. Why was this deleted?</p>
<hr />
<div>#REDIRECT[[X]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Emacs&diff=64223Emacs2009-03-06T16:32:42Z<p>Skorpan: /* More Editing Commands */ Correcting.</p>
<hr />
<div>[[Category:Utilities (English)]]<br />
Emacs is an advanced text editor often compared with [[vi]]* or [[vim]]*. Its core is a elisp interpreter (the emacs dialect of [[wikipedia:LISP|LISP]]), which is extended by elisp scripts. It has an X frontend that supports GTK as of version 22, but you can also use it from the command line.<br />
<br />
<nowiki>*</nowiki>''Note that the Church of emacs has found that Vi/Vim may cause dry mouth, blurred vision, drowsiness, dizziness, profuse sweating, tremors, sexual problems, headache, nausea and abdominal pain.''<br />
<br />
== Installation ==<br />
To install regular GNU emacs execute this as root<br />
pacman -S emacs<br />
There are also alternatives like xemacs.<br />
<br />
== Quick Start ==<br />
<br />
The complexity of Emacs may deter the novice, but once you made your first steps and learned your first control sequences, you will realize the benefit of using Emacs and the excellent support you can get by its various plug-ins. These packages make Emacs into a highly efficient tool for Java programming, LaTeX type setting or HTML editing.<br />
<br />
Break the barrier now! Dare to dive into Emacs!<br />
<br />
This short tutorial is meant to guide you in your first steps and give you all the knowledge to beat Vi users in speed and safety.<br />
===Starting Emacs, File Commands===<br />
<br />
Start your emacs editor:<br />
emacs ''mytextfile''<br />
or if you want to use it from the console:<br />
emacs -nw<br />
Emacs is configured in ~/.emacs, and it is controlled by keyboard shortcuts.<br />
<br />
You are probably used to the reappearing menu pattern from GUIs: File, Edit, View, Help. Emacs has a structure that looks similar in the beginning, but turns out to be badly organized--flooding you with a lot of irrelevant functions, but hiding the most basic editing commands like cut & paste from you. In Emacs you are better off learning the control key sequences rather than fussing with the menu. You will find it much more efficient once you become proficient at it.<br />
<br />
The Emacs community has a special tradition of naming the key modifiers CTRL and ALT:<br />
<br />
'''C-x''' CTRL-x <br />
<br />
'''M-x''' Meta-x, i.e., ALT-x or ESC-x <br />
<br />
Here is a list of the basic file commands:<br />
<br />
'''C-x C-f''' Open... (Find file)<br />
<br />
'''C-x C-s''' Save<br />
<br />
'''C-x C-w''' Save as... (Write file)<br />
<br />
'''C-x s''' Save all... <br />
<br />
'''C-x k''' Close... (Kill buffer)<br />
<br />
'''C-x C-c''' Exit (Close emacs) <br />
<br />
<br />
Most interactive commands like "find file" or "write file" prompt for input in the so-called mini buffer, the last line of the emacs window. The minibuffer supports edit commands like cut & paste and, what is very comfortable, the file name completion known from Unix shells: Just press the tab key to complete a filename, and space to get a list of possible completions, from which you can select one with the mouse. Navigating through your file structure with the keyboard and completion is much faster than double-clicking through file dialogs. The minibuffer also facilitates a history: repeated up brings back the last inputs. Minibuffer commands:<br />
<br />
'''tab''' Filename completion <br />
<br />
'''space''' List completions <br />
<br />
'''up''' History invokation<br />
<br />
===Editing Commands===<br />
<br />
Cursor movement and basic editing is almost identical to Windows editors. Here is a list of useful deleting commands:<br />
<br />
'''C-d''' Delete (to the right)<br />
<br />
'''M-d''' Delete word<br />
<br />
'''C-k''' Delete to the end of the line (Kill characters) <br />
<br />
Essential for editing is cut & paste. All deleting commands that delete more than one character are indeed cut-commands. They accumulate the killed characters in the cut buffer until you move the cursor with other commands. If you start cutting more text then, the cut buffer will be emptied before accumulating the new characters. Another way to cut is to mark text and killing the selection, region in Emacs terminology. Here are the keys for cut & paste:<br />
<br />
'''C-space''' Start selection <br />
<br />
'''C-w''' Cut <br />
<br />
'''M-w''' Copy <br />
<br />
'''C-y''' Paste (yank) <br />
<br />
'''C-_''' Undo <br />
<br />
Usually you will cut text by a sequence of C-k commands or by C-space, marking a region and C-w and then paste it back with C-y.<br />
B.2.1 Find and Replace<br />
<br />
'''C-s''' Find... (Search) <br />
<br />
'''C-s C-s''' Find again <br />
<br />
'''M-%''' Replace... <br />
<br />
'''C-g''' Abort <br />
<br />
Find and replace always start at the cursor position. If you want to move to the next occurence in a search, just hit C-s again.<br />
<br />
After entering text and replacement you are prompted at each occurrence whether to replace or not. You have the options yes, no, ! to replace all and C-g to abort. (Abort and undo work in all contexts.)<br />
<br />
===Indentation===<br />
<br />
Many Emacs plug-ins (modes in Emacs terminology) provide special indentation modules for the supported programming language. You invoke these modules by:<br />
<br />
'''tab''' Indent line <br />
<br />
'''M-C-\''' Indent region <br />
<br />
If you do not have a special Emacs mode for you file syntax, you have to indent manually. To indent a region, mark it and indent it with C-x tab. The region then becomes inactive, but you can reactivate it with M-C-z and indent it for one more column. A better way is to supply an argument to the indentation command and indent the region as far as you want in one step. You can provide arguments to commands by C-u <arg>. Examples:<br />
<br />
'''C-u 4 C-x tab''' Indent the region by four columns. <br />
<br />
'''C-u -2 C-x tab''' Unindent the region by two columns. <br />
<br />
A good default indentation is provided in the "indented text mode". You can switch to it by invoking the command `indented-text-mode', which has no key sequence binding. Commands without a key sequence bound to them are launched by M-x <command>. Completion with tab also works for commands, therefore type:<br />
<br />
'''M-x''' indented tab<br />
<br />
===Editing Several Files===<br />
<br />
Emacs is designed for convenient editing of several files at a time. It has a clean philosophy of "multi editing", by distinguishing buffers, frames and windows.<br />
<br />
Buffer: Data structure to hold a file to edit or a process to interact. <br />
<br />
Frame: An Emacs "window" (in standard terminology) with title and menu bar. It contains one or more windows (in Emacs terminology).<br />
<br />
Window: A horizontal part of the frame (usually the whole free area or half of it) with a status bar displaying file name etc. A window displays one buffer. Several windows can display the same buffer. <br />
<br />
Here are some commands to change the buffer displayed in the current window:<br />
<br />
'''M-C-l''' Switch back to the previously displayed buffer. <br />
<br />
'''C-x b''' Switch to entered buffer (completion with tab works) <br />
<br />
'''C-x C-b''' Display buffer list. <br />
<br />
'''C-x k''' Kill buffer. <br />
<br />
<br />
You will find that you often need M-C-l. An alternative to C-x b is C-x C-f, since the latter does not load the file again if it already occupies one buffer. Window and frame commands:<br />
<br />
'''C-x 2''' Split window into two <br />
<br />
'''C-x 1''' Unsplit window (keep this) <br />
<br />
'''C-x 0''' Unsplit window (keep others) <br />
<br />
'''C-tab''' Switch window <br />
<br />
'''C-x 5 2''' New frame <br />
<br />
'''C-x 5 0''' Delete frame <br />
<br />
<br />
All these commands do not affect the buffers. Deleting a window does not kill the buffer.<br />
<br />
===Modes and Customization===<br />
<br />
This is where the big potential of Emacs is present, and here it gets complicated. We focus on some very basic issues.<br />
<br />
An Emacs mode is a plug-in written in Emacs LISP that controls the behaviour of the buffer it is attached to. Usually it provides indentation, syntax highlighting and hotkeys for compiling and jumping to error locations. Sophisticated modes turn Emacs into a full-fledged IDE (integrated development environment). Emacs decides on base of the file extension which editing mode is loaded.<br />
<br />
Useful modes for editing Tutch files are the indented text, line and column number mode. They can be used in parallel and are invoked by<br />
<br />
'''M-x''' indented-text-mode return<br />
<br />
'''M-x''' line-number-mode return<br />
<br />
'''M-x''' column-number-mode return<br />
<br />
The indented text mode is one of the major modes, which are exclusive. The other two are minor modes which can be used as add-ons onto any major mode. Keys for the indented text mode are:<br />
<br />
'''tab''' Indent line like the previous one. <br />
<br />
'''C-e C-j''' Start new line with indentation (use instead of return). <br />
<br />
You can configure Emacs to load these modes automatically when loading `.tut'-files. Personal customization of Emacs is put into the file `~/.emacs'. Here are the necessary lines to add:<br />
<br />
(command-execute 'line-number-mode)<br />
(command-execute 'column-number-mode)<br />
(setq auto-mode-alist <br />
(append<br />
'(("\\.tut$" . indented-text-mode) <br />
("\\.req$" . indented-text-mode))<br />
auto-mode-alist))<br />
<br />
===More Editing Commands===<br />
<br />
Here is a random list of some useful commands:<br />
<br />
'''M-q''' Justify paragraph ("fill" in Emacs terminology).<br />
<br />
'''M-t''' Transpose words. Example: <code>Hello World!</code> → <code>World! Hello</code><br />
<br />
'''M-l''' Make word lower case from point. Example: <code>HELLO</code> → <code>hello</code><br />
<br />
'''M-u''' Make word upper case from point. Example: <code>hello</code> → <code>HELLO</code><br />
<br />
'''M-c''' Make word capital from point. Example: <code>hello</code> → <code>Hello</code><br />
<br />
Here are more deleting commands:<br />
<br />
'''M-backspace''' Remove word backwards.<br />
<br />
'''M-k''' Delete paragraph forwards.<br />
<br />
'''M-\''' Delete spaces between two words.<br />
<br />
'''M-space''' Delete spaces between two words, leave one.<br />
<br />
'''M-^''' Join two lines.<br />
<br />
== Troubleshooting ==<br />
=== Problems displaying characters in X Windows ===<br />
<br />
If when you start emacs in X windows all the characters in the main window are white boxes with black borders (the ones you see if you try to view characters for which you do not have the correct font installed), you need to install xorg-fonts-75dpi and/or xorg-fonts-100dpi and restart X windows.<br />
<br />
= Resources =<br />
* [http://www.gnu.org/software/emacs/ GNU's own site about emacs]<br />
* [http://www2.lib.uchicago.edu/keith/tcl-course/emacs-tutorial.html Useful introduction to emacs and it's shortcuts]<br />
* [http://www.clip.dia.fi.upm.es/~logalg/doc/emacsreference.pdf Cheat sheet/reference card]<br />
* [http://www.dina.kvl.dk/~abraham/religion/ The Church of Emacs]<br />
* [http://www.emacswiki.org/cgi-bin/wiki/ Emacs Wiki]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Talk:Music_Player_Daemon&diff=64221Talk:Music Player Daemon2009-03-06T16:24:59Z<p>Skorpan: moved Talk:Mpd to Talk:MPD</p>
<hr />
<div>I think this article needs to be reworked. Right now it's just single user with weird permissions (which did not work for me.) This needs to be more generalized for multiple users so it can be done properly. I'll look into it and consider some major modifications.<br />
--[[User:Statix|Statix]] 01:01, 5 October 2008 (EDT)<br />
<br />
<br />
Still planning to?--[[User:Stefanwilkens|stefanwilkens]] 20:31, 5 March 2009 (EST)</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Mpd&diff=64220Mpd2009-03-06T16:24:59Z<p>Skorpan: moved Mpd to MPD over redirect</p>
<hr />
<div>#REDIRECT [[MPD]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Music_Player_Daemon&diff=64219Music Player Daemon2009-03-06T16:24:59Z<p>Skorpan: moved Mpd to MPD over redirect</p>
<hr />
<div>[[Category:Audio/Video (English)]]<br />
[[Category:Daemons and system services (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|mpd}}<br />
{{i18n_entry|Polski|mpd (polski)}}<br />
{{i18n_entry|Nederlands|Music Player Daemon (Nederlands)}}<br />
{{i18n_entry|Русский|MPD - Music Player Daemon (Русский)}}<br />
{{i18n_entry|简体中文|MPD(简体中文)}}<br />
{{i18n_links_end}}<br />
<br />
==What is mpd?==<br />
'''mpd''' (Music Player Daemon) is an audio player that has a server-client architecture. mpd runs in the background as a daemon, manages playlists and a music database, and uses very few resources. In order to interface with it, you need a separate client. More information can be found on their [http://www.musicpd.org/ website]<br />
<br />
==Daemon Install Procedure==<br />
<br />
Sync and install with pacman:<br />
# pacman -S mpd<br />
<br />
==Configure mpd==<br />
<br />
For more information about mpd configuration visit http://mpd.wikia.com/wiki/Configuration<br />
<br />
===Timeline of mpd's behavior on a typical working setup===<br />
* mpd is started on boot by /etc/rc.conf, by including it in the DAEMONS array. (Or, this can be done manually each session by running '''/etc/rc.d/mpd start''' with root privileges).<br />
* Since mpd is now started as root, it first reads the /etc/mpd.conf file.<br />
* mpd reads the user variable in the /etc/mpd.conf file, and changes from root to this user.<br />
* mpd then reads the contents of the /etc/mpd.conf file and configures itself accordingly.<br />
<br />
Notice that mpd changes the running user from root to the one named in the /etc/mpd.conf file. This way, uses of "~" in the configuration file point correctly to the home user's directory, and not root's directory. It may be worthwhile to change all uses of "~" to "/home/username" to avoid any confusion over this aspect of mpd's behavior.<br />
<br />
===Quick Single User Installation===<br />
<br />
* As root, check if ''/etc/mpd.conf'' exists and delete the file if it does. This is safe.<br />
<br />
Mpd comes with an example configuration file, available at ''/etc/mpd.conf.example''. This file holds an abundance of information on mpd configuration, and holds default mixer values you can simply uncomment.<br />
<br />
* As root, copy this example file to ''/etc/mpd.conf''.<br />
cp /etc/mpd.conf.example /etc/mpd.conf<br />
<br />
Never put this file in the user's directory like some tutorials suggest. This would complicate things and most of the time doing this is useless (notice you're reading a quick installation howto). If you previously created a .mpdconf file in your home, remove it now. This is important to prevent conflicts. When placing it in /etc, like we do here, mpd will be able to run as a daemon at boot. Otherwise, a script would be needed to run mpd AFTER the user has logged (like kdm or ~/.fluxbox/startup) or it would require a manual move each time. For a single music collection, the method used here is simply better, even while the collection is shared to multiple users. Also, don't be afraid about root privileges: even while mpd runs as a daemon, it never completely runs as root since it automatically drops its root privileges after execution.<br />
<br />
To make audio output actually work ensure that you have setup audio card and mixer correctly. See [[ALSA]]. Do not forget to unmute the required channels in alsamixer, raise the volume and save changes with alsactl store. See ~/.mpd/error if it still doesn't work.<br />
<br />
Make sure your card can do hardware mixing (most of them can, including onboard audio). Or else this could cause problems with multiple sound playback. For example, this can prevent Mplayer from playing back sound while the mpd daemon is running, returning an audio error message stating the device is busy.<br />
<br />
<br />
We can now move on to edit the file, once again, as root:<br />
$EDITOR /etc/mpd.conf<br />
<br />
* In /etc/mpd.conf, look for these options and configure them as listed below: <br />
<br />
music_directory "~/Music"<br />
playlist_directory "~/Playlists"<br />
db_file "~/.mpd/db"<br />
log_file "~/.mpd/log"<br />
error_file "~/.mpd/error"<br />
pid_file "~/.mpd/mpd.pid"<br />
state_file "~/.mpd/mpdstate"<br />
user "mpd" (replace this with your username)<br />
bind_to_address "127.0.0.1"<br />
port "6600"<br />
#connection_timeout "60"<br />
#max_playlist_length "16384"<br />
#filesystem_charset "ISO-8859-1"<br />
#id3v1_encoding "ISO-8859-1"<br />
<br />
These are the most common lines. You shouldn't need anything else. You may want to change all paths to absolute paths, in order to avoid any ambiguities in the future in case you forget how mpd behaves (see above). See the file /etc/mpd.conf.example for more specific options.<br />
<br />
* Look at the line starting with ''user'' and replace '''mpd''' with your username. Save changes and exit the editor.<br />
* Now exit the root mode and log as the normal user (the same you specified in mpd.conf).<br />
* Create the new directories<br />
$ mkdir ~/Music<br />
$ mkdir ~/Playlists<br />
$ mkdir ~/.mpd<br />
<br />
* Make symbolic links to your music collection:<br />
$ ln -s /media/sda5/music_collection1 ~/Music<br />
$ ln -s /media/sdb7/music_collection2 ~/Music<br />
<br />
* Create the pid file<br />
$ touch ~/.mpd/mpd.pid<br />
<br />
* Create the mpd database (This can take a while depending on the size of your collection.): <br />
$ mpd --create-db<br />
<br />
* Change back to root, and start mpd:<br />
$ /etc/rc.d/mpd start<br />
Although you can start mpd as root with just "mpd", doing the above gives more information (such as on '''htop''').<br />
<br />
* Edit '''/etc/rc.conf''' and add '''mpd''' to the list of daemons to start on bootup.<br />
<br />
* To test it out, install a very small client called mpc<br />
# pacman -S mpc (as root)<br />
$ mpc ls | mpc add (as user)<br />
$ mpc play<br />
<br />
{{Box Note | No sound? mpd's autodetection system may have failed to correctly detect your set-up, please scroll down to ''Troubleshooting''}}<br />
<br />
==Troubleshooting==<br />
<br />
=== Autodetection failed ===<br />
<br />
During the start of mpd, it tries to autodetect your set-up and configure output and volume control accordingly. Though this mostly goes well, it will fail for some systems. It may help to tell mpd specifically what to use as output and mixer control. If you copied /etc/mpd.conf over from /etc/mpd.conf.example as mentionned above, you can simply uncomment:<br />
<br />
Example for alsa output type:<br />
audio_output {<br />
type "alsa"<br />
name "My ALSA Device"<br />
device "hw:0,0" # optional<br />
format "44100:16:2" # optional<br />
}<br />
<br />
Example for alsa mixer:<br />
mixer_type "alsa"<br />
mixer_device "default"<br />
mixer_control "PCM"<br />
<br />
'''Note:''' in case of permission problems when using ESD with mpd run this as root:<br />
# chsh -s /bin/true mpd<br />
<br />
===Tips===<br />
<br />
To get rid of timeouts (i.e. when you paused music for long time) in gpmc and other clients uncomment and increase <code>connection_timeout</code> option in mpd.conf.<br />
<br />
If files and/or titles are shown in wrong encoding, uncomment and change <code>filesystem_charset</code> and <code>id3v1_encoding</code> options.<br />
Note that you cannot set encoding for ID3 v2 tags. To workaround this you may use [http://mpd.wikia.com/wiki/GenericDecoder#Generic_Tagreader external tag readers].<br />
<br />
If you want to use another computer to control mpd over a network, the <code>bind_to_address</code> option in mpd.conf will need to be set to either your IP address, or <code>any</code> if your IP address changes frequently. Remember to add mpd to the /etc/hosts.allow file to enable external access.<br />
<br />
==Client Install Procedure==<br />
<br />
Install a client program for mpd. Popular options are:<br />
<br />
* '''mpc''' - Command Line Client (you'll probably want this one no matter what)<br />
* '''ncmpc''' - NCurses Client (this one is very handy for running in a console) [http://hem.bredband.net/kaw/ncmpc/ Official Website of ncmpc]<br />
* '''sonata''' - Python GTK+ Client [http://sonata.berlios.de/ Official Website of Sonata]<br />
* '''gmpc''' - Gnome Client [http://gmpcwiki.sarine.nl/index.php?title=GMPC Official Website of gmpc]<br />
<br />
<br />
Install with:<br />
# pacman -Sy mpc<br />
# pacman -Sy ncmpc<br />
# pacman -Sy sonata<br />
# pacman -Sy gmpc<br />
<br />
==Extra stuff==<br />
<br />
===Last.fm scrobbling===<br />
<br />
To scrobble your songs to [http://www.last.fm Last.fm] using MPD there are several alternatives.<br />
<br />
====mpdscribble====<br />
mpdscribble is another daemon, but is only available in the [http://aur.archlinux.org/packages.php?ID=22274 AUR]. This is arguably the best alternative, because it's the semi-official MPD scrobbler and uses the new "idle" feature in MPD for more accurate scrobbling. Also, you don't need root access to configure it, because it doesn't need any changes to <code>/etc</code> at all. Visit [http://mpd.wikia.com/wiki/Client:Mpdscribble the official website] for more information.<br />
<br />
To install mpdscribble, just install it from the AUR and do the following (not as root):<br />
<br />
* mkdir ~/.mpdscribble<br />
* Create the file ~/.mpdscribble/mpdscribble.conf and add the following:<br />
username = <your last.fm username><br />
password = <md5 sum of your last.fm password> # Generated using "echo -n password | md5sum"<br />
host = <your mpd host> # defaults to $MPD_HOST or localhost<br />
port = <your mpd port> # defaults to $MPD_PORT or 6600<br />
log = ~/.mpdscribble/mpdscribble.log<br />
cache = ~/.mpdscribble/mpdscribble.cache<br />
verbose = 2<br />
sleep = 1<br />
musicdir = <your music directory><br />
* Add <code>mpdscribble</code> to your <code>~/.xinitrc</code><br />
<br />
====Sonata====<br />
The easiest way, if you don't care about having to have a program window open all the time, is using Sonata which is a graphical frontend to MPD. It has built-in support for Last.fm scrobbling in its preferences. The downside of this is that Sonata doesn't cache your songs if for some reason you don't happen to have an Internet connection at the time of playing.<br />
<br />
====lastfmsubmitd====<br />
lastfmsubmitd is a daemon which is available in the "community" repository. To install it, first edit <code>/etc/lastfmsubmitd.conf</code> and add both <code>lastfmsubmitd</code> and <code>lastmp</code> to the <code>DAEMONS</code> array in <code>/etc/rc.conf</code>.<br />
<br />
=== Never play on start ===<br />
If you don't want mpd to always play on your system start, but yet you want to preserve the other state information, add the following lines to your <code>/etc/rc.d/mpd</code> file:<br />
'' ...''<br />
'' stat_busy "Starting Music Player Daemon"''<br />
<br />
# always start in paused state<br />
awk '/^state_file[ \t]+"[^"]+"$/ {<br />
match($0, "\".+\"")<br />
sfile = substr($0, RSTART + 1, RLENGTH - 2)<br />
} /^user[ \t]+"[^"]+"$/ {<br />
match($0, "\".+\"")<br />
user = substr($0, RSTART + 1, RLENGTH - 2)<br />
} END {<br />
if (sfile == "")<br />
exit;<br />
if (user != "")<br />
sub(/^~/, "/home/" user, sfile)<br />
system("sed -i \x27s|^\\(state:[ \\t]\\{1,\\}\\)play$|\\1pause|\x27 \x27" sfile "\x27")<br />
}' /etc/mpd.conf<br />
<br />
'' /usr/bin/mpd /etc/mpd.conf &> /dev/null''<br />
'' ...''<br />
<br />
This will change the player status to "paused", if it was stopped while playing. Next, you want this file to be preserved, so mpd updates won't erase this edit. Add (or edit) this line to your <code>/etc/pacman.conf</code>:<br />
NoUpgrade = etc/rc.d/mpd<br />
<br />
=== MPD & Alsa ===<br />
<br />
Sometimes, when you use other audio output, e.g: some web pages containing Flash applets, mpd cannot reproduce anything anymore (until you restart). The error looks something like: (if you search the file /var/log/mpd/mpd.error)<br />
<br />
Error opening alsa device "hw:0,0": Device or resource busy<br />
<br />
And here is the solution (dmix saving our life again). Apply these lines in your /etc/mpd.conf:<br />
<br />
<pre><br />
audio_output {<br />
type "alsa"<br />
name "Sound Card"<br />
options "dev=dmixer"<br />
device "plug:dmix"<br />
}<br />
</pre><br />
<br />
And then restart with /etc/rc.d/mpd restart<br />
<br />
Searching on Internet I found the reason for why that happens in Gentoo's wiki:<br />
* The sound card does not support hardware mixing (uses '''dmix''' plugin)<br />
* An application does not work with ALSA with it's default settings<br />
<br />
=== Control mpd with lirc ===<br />
There are already some clients designe for communications between lircd and mpd, however, as far as the practical use, they aren't very useful since their funcstions are limited.<br />
<br />
It's recommended to use mpc with irexec. mpc is a command line player which only sends the command to mpd and exits immediately, which is perfect for irexec, the command runner included in lirc. What irexec does is that it runs a specified command once received a remote control button.<br />
<br />
First of all, please setup your remotes as referred to the '''[[Lirc]]''' article.<br />
<br />
Edit your favored lirc startup configuration file, default location is '''~/.lircrc'''<br />
<br />
Fill the file with the following pattern:<br />
<br />
begin<br />
prog = irexec<br />
button = <button_name><br />
config = <command_to_run><br />
repeat = <0 or 1><br />
end<br />
<br />
An useful example:<br />
<br />
## irexec<br />
begin<br />
prog = irexec<br />
button = play_pause<br />
config = mpc toggle<br />
repeat = 0<br />
end<br />
<br />
begin<br />
prog = irexec<br />
button = stop<br />
config = mpc stop<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = previous<br />
config = mpc prev<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = next<br />
config = mpc next<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = volup<br />
config = mpc volume +2<br />
repeat = 1<br />
end<br />
begin<br />
prog = irexec<br />
button = voldown<br />
config = mpc volume -2<br />
repeat = 1<br />
end<br />
begin<br />
prog = irexec<br />
button = pbc<br />
config = mpc random<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = pdvd<br />
config = mpc update<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = right<br />
config = mpc seek +00:00:05<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = left<br />
config = mpc seek -00:00:05<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = up<br />
config = mpc seek +1%<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = down<br />
config = mpc seek -1%<br />
repeat = 0<br />
end<br />
<br />
There are more functions for mpc, run '''''man mpc''''' for more info.<br />
<br />
==External links==<br />
<br />
* [http://www.musicpd.org/ Official Web Site]<br />
* [http://mpd.wikia.com/wiki/Main_Page Official Wiki]<br />
* [http://mpd.wikia.com/wiki/Clients Sorted List of MPD Clients]<br />
* [http://www.musicpd.org/forum/ MPD forum]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Music_Player_Daemon&diff=64218Music Player Daemon2009-03-06T16:24:31Z<p>Skorpan: /* Last.fm scrobbling */ Extending.</p>
<hr />
<div>[[Category:Audio/Video (English)]]<br />
[[Category:Daemons and system services (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|mpd}}<br />
{{i18n_entry|Polski|mpd (polski)}}<br />
{{i18n_entry|Nederlands|Music Player Daemon (Nederlands)}}<br />
{{i18n_entry|Русский|MPD - Music Player Daemon (Русский)}}<br />
{{i18n_entry|简体中文|MPD(简体中文)}}<br />
{{i18n_links_end}}<br />
<br />
==What is mpd?==<br />
'''mpd''' (Music Player Daemon) is an audio player that has a server-client architecture. mpd runs in the background as a daemon, manages playlists and a music database, and uses very few resources. In order to interface with it, you need a separate client. More information can be found on their [http://www.musicpd.org/ website]<br />
<br />
==Daemon Install Procedure==<br />
<br />
Sync and install with pacman:<br />
# pacman -S mpd<br />
<br />
==Configure mpd==<br />
<br />
For more information about mpd configuration visit http://mpd.wikia.com/wiki/Configuration<br />
<br />
===Timeline of mpd's behavior on a typical working setup===<br />
* mpd is started on boot by /etc/rc.conf, by including it in the DAEMONS array. (Or, this can be done manually each session by running '''/etc/rc.d/mpd start''' with root privileges).<br />
* Since mpd is now started as root, it first reads the /etc/mpd.conf file.<br />
* mpd reads the user variable in the /etc/mpd.conf file, and changes from root to this user.<br />
* mpd then reads the contents of the /etc/mpd.conf file and configures itself accordingly.<br />
<br />
Notice that mpd changes the running user from root to the one named in the /etc/mpd.conf file. This way, uses of "~" in the configuration file point correctly to the home user's directory, and not root's directory. It may be worthwhile to change all uses of "~" to "/home/username" to avoid any confusion over this aspect of mpd's behavior.<br />
<br />
===Quick Single User Installation===<br />
<br />
* As root, check if ''/etc/mpd.conf'' exists and delete the file if it does. This is safe.<br />
<br />
Mpd comes with an example configuration file, available at ''/etc/mpd.conf.example''. This file holds an abundance of information on mpd configuration, and holds default mixer values you can simply uncomment.<br />
<br />
* As root, copy this example file to ''/etc/mpd.conf''.<br />
cp /etc/mpd.conf.example /etc/mpd.conf<br />
<br />
Never put this file in the user's directory like some tutorials suggest. This would complicate things and most of the time doing this is useless (notice you're reading a quick installation howto). If you previously created a .mpdconf file in your home, remove it now. This is important to prevent conflicts. When placing it in /etc, like we do here, mpd will be able to run as a daemon at boot. Otherwise, a script would be needed to run mpd AFTER the user has logged (like kdm or ~/.fluxbox/startup) or it would require a manual move each time. For a single music collection, the method used here is simply better, even while the collection is shared to multiple users. Also, don't be afraid about root privileges: even while mpd runs as a daemon, it never completely runs as root since it automatically drops its root privileges after execution.<br />
<br />
To make audio output actually work ensure that you have setup audio card and mixer correctly. See [[ALSA]]. Do not forget to unmute the required channels in alsamixer, raise the volume and save changes with alsactl store. See ~/.mpd/error if it still doesn't work.<br />
<br />
Make sure your card can do hardware mixing (most of them can, including onboard audio). Or else this could cause problems with multiple sound playback. For example, this can prevent Mplayer from playing back sound while the mpd daemon is running, returning an audio error message stating the device is busy.<br />
<br />
<br />
We can now move on to edit the file, once again, as root:<br />
$EDITOR /etc/mpd.conf<br />
<br />
* In /etc/mpd.conf, look for these options and configure them as listed below: <br />
<br />
music_directory "~/Music"<br />
playlist_directory "~/Playlists"<br />
db_file "~/.mpd/db"<br />
log_file "~/.mpd/log"<br />
error_file "~/.mpd/error"<br />
pid_file "~/.mpd/mpd.pid"<br />
state_file "~/.mpd/mpdstate"<br />
user "mpd" (replace this with your username)<br />
bind_to_address "127.0.0.1"<br />
port "6600"<br />
#connection_timeout "60"<br />
#max_playlist_length "16384"<br />
#filesystem_charset "ISO-8859-1"<br />
#id3v1_encoding "ISO-8859-1"<br />
<br />
These are the most common lines. You shouldn't need anything else. You may want to change all paths to absolute paths, in order to avoid any ambiguities in the future in case you forget how mpd behaves (see above). See the file /etc/mpd.conf.example for more specific options.<br />
<br />
* Look at the line starting with ''user'' and replace '''mpd''' with your username. Save changes and exit the editor.<br />
* Now exit the root mode and log as the normal user (the same you specified in mpd.conf).<br />
* Create the new directories<br />
$ mkdir ~/Music<br />
$ mkdir ~/Playlists<br />
$ mkdir ~/.mpd<br />
<br />
* Make symbolic links to your music collection:<br />
$ ln -s /media/sda5/music_collection1 ~/Music<br />
$ ln -s /media/sdb7/music_collection2 ~/Music<br />
<br />
* Create the pid file<br />
$ touch ~/.mpd/mpd.pid<br />
<br />
* Create the mpd database (This can take a while depending on the size of your collection.): <br />
$ mpd --create-db<br />
<br />
* Change back to root, and start mpd:<br />
$ /etc/rc.d/mpd start<br />
Although you can start mpd as root with just "mpd", doing the above gives more information (such as on '''htop''').<br />
<br />
* Edit '''/etc/rc.conf''' and add '''mpd''' to the list of daemons to start on bootup.<br />
<br />
* To test it out, install a very small client called mpc<br />
# pacman -S mpc (as root)<br />
$ mpc ls | mpc add (as user)<br />
$ mpc play<br />
<br />
{{Box Note | No sound? mpd's autodetection system may have failed to correctly detect your set-up, please scroll down to ''Troubleshooting''}}<br />
<br />
==Troubleshooting==<br />
<br />
=== Autodetection failed ===<br />
<br />
During the start of mpd, it tries to autodetect your set-up and configure output and volume control accordingly. Though this mostly goes well, it will fail for some systems. It may help to tell mpd specifically what to use as output and mixer control. If you copied /etc/mpd.conf over from /etc/mpd.conf.example as mentionned above, you can simply uncomment:<br />
<br />
Example for alsa output type:<br />
audio_output {<br />
type "alsa"<br />
name "My ALSA Device"<br />
device "hw:0,0" # optional<br />
format "44100:16:2" # optional<br />
}<br />
<br />
Example for alsa mixer:<br />
mixer_type "alsa"<br />
mixer_device "default"<br />
mixer_control "PCM"<br />
<br />
'''Note:''' in case of permission problems when using ESD with mpd run this as root:<br />
# chsh -s /bin/true mpd<br />
<br />
===Tips===<br />
<br />
To get rid of timeouts (i.e. when you paused music for long time) in gpmc and other clients uncomment and increase <code>connection_timeout</code> option in mpd.conf.<br />
<br />
If files and/or titles are shown in wrong encoding, uncomment and change <code>filesystem_charset</code> and <code>id3v1_encoding</code> options.<br />
Note that you cannot set encoding for ID3 v2 tags. To workaround this you may use [http://mpd.wikia.com/wiki/GenericDecoder#Generic_Tagreader external tag readers].<br />
<br />
If you want to use another computer to control mpd over a network, the <code>bind_to_address</code> option in mpd.conf will need to be set to either your IP address, or <code>any</code> if your IP address changes frequently. Remember to add mpd to the /etc/hosts.allow file to enable external access.<br />
<br />
==Client Install Procedure==<br />
<br />
Install a client program for mpd. Popular options are:<br />
<br />
* '''mpc''' - Command Line Client (you'll probably want this one no matter what)<br />
* '''ncmpc''' - NCurses Client (this one is very handy for running in a console) [http://hem.bredband.net/kaw/ncmpc/ Official Website of ncmpc]<br />
* '''sonata''' - Python GTK+ Client [http://sonata.berlios.de/ Official Website of Sonata]<br />
* '''gmpc''' - Gnome Client [http://gmpcwiki.sarine.nl/index.php?title=GMPC Official Website of gmpc]<br />
<br />
<br />
Install with:<br />
# pacman -Sy mpc<br />
# pacman -Sy ncmpc<br />
# pacman -Sy sonata<br />
# pacman -Sy gmpc<br />
<br />
==Extra stuff==<br />
<br />
===Last.fm scrobbling===<br />
<br />
To scrobble your songs to [http://www.last.fm Last.fm] using MPD there are several alternatives.<br />
<br />
====mpdscribble====<br />
mpdscribble is another daemon, but is only available in the [http://aur.archlinux.org/packages.php?ID=22274 AUR]. This is arguably the best alternative, because it's the semi-official MPD scrobbler and uses the new "idle" feature in MPD for more accurate scrobbling. Also, you don't need root access to configure it, because it doesn't need any changes to <code>/etc</code> at all. Visit [http://mpd.wikia.com/wiki/Client:Mpdscribble the official website] for more information.<br />
<br />
To install mpdscribble, just install it from the AUR and do the following (not as root):<br />
<br />
* mkdir ~/.mpdscribble<br />
* Create the file ~/.mpdscribble/mpdscribble.conf and add the following:<br />
username = <your last.fm username><br />
password = <md5 sum of your last.fm password> # Generated using "echo -n password | md5sum"<br />
host = <your mpd host> # defaults to $MPD_HOST or localhost<br />
port = <your mpd port> # defaults to $MPD_PORT or 6600<br />
log = ~/.mpdscribble/mpdscribble.log<br />
cache = ~/.mpdscribble/mpdscribble.cache<br />
verbose = 2<br />
sleep = 1<br />
musicdir = <your music directory><br />
* Add <code>mpdscribble</code> to your <code>~/.xinitrc</code><br />
<br />
====Sonata====<br />
The easiest way, if you don't care about having to have a program window open all the time, is using Sonata which is a graphical frontend to MPD. It has built-in support for Last.fm scrobbling in its preferences. The downside of this is that Sonata doesn't cache your songs if for some reason you don't happen to have an Internet connection at the time of playing.<br />
<br />
====lastfmsubmitd====<br />
lastfmsubmitd is a daemon which is available in the "community" repository. To install it, first edit <code>/etc/lastfmsubmitd.conf</code> and add both <code>lastfmsubmitd</code> and <code>lastmp</code> to the <code>DAEMONS</code> array in <code>/etc/rc.conf</code>.<br />
<br />
=== Never play on start ===<br />
If you don't want mpd to always play on your system start, but yet you want to preserve the other state information, add the following lines to your <code>/etc/rc.d/mpd</code> file:<br />
'' ...''<br />
'' stat_busy "Starting Music Player Daemon"''<br />
<br />
# always start in paused state<br />
awk '/^state_file[ \t]+"[^"]+"$/ {<br />
match($0, "\".+\"")<br />
sfile = substr($0, RSTART + 1, RLENGTH - 2)<br />
} /^user[ \t]+"[^"]+"$/ {<br />
match($0, "\".+\"")<br />
user = substr($0, RSTART + 1, RLENGTH - 2)<br />
} END {<br />
if (sfile == "")<br />
exit;<br />
if (user != "")<br />
sub(/^~/, "/home/" user, sfile)<br />
system("sed -i \x27s|^\\(state:[ \\t]\\{1,\\}\\)play$|\\1pause|\x27 \x27" sfile "\x27")<br />
}' /etc/mpd.conf<br />
<br />
'' /usr/bin/mpd /etc/mpd.conf &> /dev/null''<br />
'' ...''<br />
<br />
This will change the player status to "paused", if it was stopped while playing. Next, you want this file to be preserved, so mpd updates won't erase this edit. Add (or edit) this line to your <code>/etc/pacman.conf</code>:<br />
NoUpgrade = etc/rc.d/mpd<br />
<br />
=== MPD & Alsa ===<br />
<br />
Sometimes, when you use other audio output, e.g: some web pages containing Flash applets, mpd cannot reproduce anything anymore (until you restart). The error looks something like: (if you search the file /var/log/mpd/mpd.error)<br />
<br />
Error opening alsa device "hw:0,0": Device or resource busy<br />
<br />
And here is the solution (dmix saving our life again). Apply these lines in your /etc/mpd.conf:<br />
<br />
<pre><br />
audio_output {<br />
type "alsa"<br />
name "Sound Card"<br />
options "dev=dmixer"<br />
device "plug:dmix"<br />
}<br />
</pre><br />
<br />
And then restart with /etc/rc.d/mpd restart<br />
<br />
Searching on Internet I found the reason for why that happens in Gentoo's wiki:<br />
* The sound card does not support hardware mixing (uses '''dmix''' plugin)<br />
* An application does not work with ALSA with it's default settings<br />
<br />
=== Control mpd with lirc ===<br />
There are already some clients designe for communications between lircd and mpd, however, as far as the practical use, they aren't very useful since their funcstions are limited.<br />
<br />
It's recommended to use mpc with irexec. mpc is a command line player which only sends the command to mpd and exits immediately, which is perfect for irexec, the command runner included in lirc. What irexec does is that it runs a specified command once received a remote control button.<br />
<br />
First of all, please setup your remotes as referred to the '''[[Lirc]]''' article.<br />
<br />
Edit your favored lirc startup configuration file, default location is '''~/.lircrc'''<br />
<br />
Fill the file with the following pattern:<br />
<br />
begin<br />
prog = irexec<br />
button = <button_name><br />
config = <command_to_run><br />
repeat = <0 or 1><br />
end<br />
<br />
An useful example:<br />
<br />
## irexec<br />
begin<br />
prog = irexec<br />
button = play_pause<br />
config = mpc toggle<br />
repeat = 0<br />
end<br />
<br />
begin<br />
prog = irexec<br />
button = stop<br />
config = mpc stop<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = previous<br />
config = mpc prev<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = next<br />
config = mpc next<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = volup<br />
config = mpc volume +2<br />
repeat = 1<br />
end<br />
begin<br />
prog = irexec<br />
button = voldown<br />
config = mpc volume -2<br />
repeat = 1<br />
end<br />
begin<br />
prog = irexec<br />
button = pbc<br />
config = mpc random<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = pdvd<br />
config = mpc update<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = right<br />
config = mpc seek +00:00:05<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = left<br />
config = mpc seek -00:00:05<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = up<br />
config = mpc seek +1%<br />
repeat = 0<br />
end<br />
begin<br />
prog = irexec<br />
button = down<br />
config = mpc seek -1%<br />
repeat = 0<br />
end<br />
<br />
There are more functions for mpc, run '''''man mpc''''' for more info.<br />
<br />
==External links==<br />
<br />
* [http://www.musicpd.org/ Official Web Site]<br />
* [http://mpd.wikia.com/wiki/Main_Page Official Wiki]<br />
* [http://mpd.wikia.com/wiki/Clients Sorted List of MPD Clients]<br />
* [http://www.musicpd.org/forum/ MPD forum]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=RTorrent&diff=58352RTorrent2009-01-19T14:22:30Z<p>Skorpan: Removing category "Audio/Video".</p>
<hr />
<div>[[Category:Internet and Email (English)]]<br />
[[Category:Utilities (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|Español|RTorrent - cliente de bittorrent en línea de órdenes}}<br />
{{i18n_links_end}}<br />
<br />
= RTorrent =<br />
<br />
[http://libtorrent.rakshasa.no/ RTorrent] is a very simple, elegant and ultra-light bittorent client. It is written in C++ and uses ncurses, so it is completely text based and runs entirely in a console. RTorrent is ideal for low-end systems and with the addition of GNU Screen and openssh it is convenient as a remote bittorrent client. <br />
<br />
== Installing ==<br />
<br />
<pre><br />
pacman -S rtorrent<br />
</pre><br />
<br />
== Configuring ==<br />
<br />
Before running RTorrent, the first step is to copy the default configuration file which is available at the RTorrent [http://libtorrent.rakshasa.no/browser/trunk/rtorrent/doc/rtorrent.rc?format=raw project page] and save the file as .rtorrent.rc into your home directory. <br />
<br />
Once the file has been saved, open it with your preferred text editor and make any necessary changes. Simply uncomment the options you wish to enable/utilize. For more detailed information on the options available, visit [http://libtorrent.rakshasa.no/wiki/RTorrentCommonTasks RTorrent Common Tasks]<br />
<br />
=== Recommended Configuration ===<br />
<br />
These values in the following are subjective and dependent upon your own system and Internet connection speed. To find the optimal settings for you to use, visit the following website and follow the instructions: [http://torrentfreak.com/optimize-your-BitTorrent-download-speed Optimize Your BitTorrent Download Speed]<br />
<br />
<pre><br />
# Maximum and minimum number of peers to connect to per torrent.<br />
#min_peers = 40<br />
max_peers = 52<br />
<br />
# Same as above but for seeding completed torrents (-1 = same as downloading)<br />
#min_peers_seed = 10<br />
max_peers_seed = 52<br />
<br />
# Maximum number of simultanious uploads per torrent.<br />
max_uploads = 8<br />
<br />
# Global upload and download rate in KiB. "0" for unlimited.<br />
download_rate = 200<br />
upload_rate = 28<br />
</pre><br />
<br />
This option below will determine where your torrents data will be saved. Change the default save directory to whatever you wish to use. Be sure to enter the absolute path; there is an odd bug with RTorrent ''sometimes'' does not respect relative paths (i.e. ~/torrents):<br />
<br />
<pre><br />
# Default directory to save the downloaded torrents.<br />
directory = /home/[user]/torrents/<br />
</pre><br />
<br />
This option will allow RTorrent to save the progess of your torrents. Be sure to create a directory called .session (simply run as normal user:''mkdir ~/.session''):<br />
<br />
<pre><br />
# Default session directory. Make sure you don't run multiple instance<br />
# of rtorrent using the same session directory. Perhaps using a<br />
# relative path?<br />
session = /home/[user]/.session/<br />
</pre><br />
<br />
The following option will have RTorrent "watch" a particular directory for new .torrent files. Using your browser, when you find a .torrent file you would like to download, just save the file into this directory and RTorrent will automatically start the torrent. Be sure to create the directory that will be watched (simply run as normal user:''mkdir ~/watch''): <br />
<br />
<pre><br />
# Watch a directory for new torrents, and stop those that have been<br />
# deleted.<br />
#schedule = watch_directory,5,5,load_start=./watch/*.torrent<br />
#schedule = untied_directory,5,5,stop_untied=<br />
schedule = watch_directory,5,5,load_start=/home/[user]/watch/*.torrent<br />
schedule = untied_directory,5,5,stop_untied=<br />
schedule = tied_directory,5,5,start_tied=<br />
</pre><br />
<br />
This option below will stop RTorrent from downloading any further when disk space is low. This is particuarly useful with a [http://en.wikipedia.org/wiki/Seedbox Seedbox] where disk space is quite limited. Change the value as you like: <br />
<br />
<pre><br />
# Close torrents when diskspace is low.<br />
schedule = low_diskspace,5,60,close_low_diskspace=100M<br />
</pre><br />
<br />
This option will set what port to use for listening. It is recommended to use a port that is higher than 49152. RTorrent allows the use of a single port rather than a range; a single port rather than an actual range is recommended.<br />
<br />
<pre><br />
# Port range to use for listening.<br />
port_range = 49164-49164<br />
</pre><br />
<br />
The following option allow for a hash check whenever a torrent is complete or whenever RTorrent is restarted. This will make sure there are no errors with your acquired/seeding files. <br />
<br />
<pre><br />
# Check hash for finished torrents. Might be usefull until the bug is<br />
# fixed that causes lack of diskspace not to be properly reported.<br />
check_hash = yes<br />
</pre><br />
<br />
The following option allows for the enabling of encryption. This is very important to enable, if not for yourself, but for others in the torrent swarm; people might need to obscure their bandwidth usage from their ISP. Does not hurt you to enable even if you do not need such protection. More information: [http://en.wikipedia.org/wiki/BitTorrent_protocol_encryption Bittorrent Protocol Encryption]<br />
<br />
<pre><br />
# Encryption options, set to none (default) or any combination of the following:<br />
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext<br />
#<br />
# The example value allows incoming encrypted connections, starts unencrypted<br />
# outgoing connections but retries with encryption if they fail, preferring<br />
# plaintext to RC4 encryption after the encrypted handshake<br />
#<br />
# encryption = allow_incoming,enable_retry,prefer_plaintext<br />
encryption = allow_incoming,try_outgoing,enable_retry<br />
</pre><br />
<br />
The following is for DHT support. If you use public trackers, you'll want to enable DHT to acquire more peers. If you use only private trackers, '''do not enable DHT''' as this will reduce your speeds and can create a privacy risk. Some private trackers will even warn you if you use DHT. <br />
<br />
<pre><br />
# Enable DHT support for trackerless torrents or when all trackers are down.<br />
# May be set to "disable" (completely disable DHT), "off" (do not start DHT),<br />
# "auto" (start and stop DHT as needed), or "on" (start DHT immediately).<br />
# The default is "off". For DHT to work, a session directory must be defined.<br />
# <br />
# dht = auto<br />
<br />
# UDP port to use for DHT. <br />
# <br />
# dht_port = 6881<br />
<br />
# Enable peer exchange (for torrents not marked private)<br />
#<br />
# peer_exchange = yes<br />
</pre><br />
<br />
Be sure to forward the proper port(s) with your router if you use one. A decent guide per router make/model can be found [http://portforward.com/english/routers/port_forwarding/routerindex.htm here].<br />
<br />
== Controls ==<br />
<br />
RTorrent relies exclusively on keyboard shortcuts for user input.<br />
A complete guide is available on the main site: [http://libtorrent.rakshasa.no/wiki/RTorrentUserGuide RTorrent User Guide]<br />
<br />
Here are the basics for quick reference:<br />
<br />
*Control-q : closes RTorrent, done twice makes the program shutdown without waiting to send stopping information to the trackers.<br />
*Left arrow : returns to the previous screen.<br />
*Right arrow : goes to the next screen.<br />
*a|s|d : increase global upload throttle about 1|5|50 KB/s<br />
*A|S|D : increase global download throttle about 1|5|50 KB/s<br />
*z|x|c : decrease global upload throttle about 1|5|50 KB/s<br />
*Z|X|C : decrease global download throttle about 1|5|50 KB/s<br />
*Control-S : starts download<br />
*Control-D : stops an active download, removes a stopped download.<br />
*+ or - : changes the download priority of selected torrent.<br />
*Backspace : adds the specified .torrent. After pressing this button write full path or URL of .torrent file. You can use Tab and other tricks from bash.<br />
<br />
== Use RTorrent with Screen ==<br />
<br />
Screen is a program that will allow CLI applications to be run in the background and without X running. <br />
<br />
To install:<br />
<br />
<pre><br />
pacman -S screen<br />
</pre><br />
<br />
and then copy screenrc to your home directory as normal user:<br />
<br />
<pre><br />
cp /etc/screenrc ~/.screenrc<br />
</pre><br />
<br />
To have RTorrent always start with screen, add the following to your .screenrc file:<br />
<br />
<pre><br />
screen -t rtorrent rtorrent <br />
</pre><br />
<br />
To start screen + RTorrent, simply run ''screen'' from a terminal. Control-a followed by d will detach screen, and running ''screen -r'' will open screen again.<br />
<br />
===On a remote machine===<br />
Most setups of rTorrent on a remote machine involve using Screen. Supposing you have a detached Screen session with rtorrent on the remote machine (and the option to [[SSH]] into it), you can gain access to it using:<br />
<pre>/usr/bin/ssh -t -p <ssh port on remote machine> <user>@<remote machine> screen -RD</pre><br />
If you want immediate access on startup, you will need to [http://bloggerdigest.blogspot.com/2006/11/ssh-auto-login-or-passwordless-login.html upload a key] from your machine to remote host (so you will not be prompted for a password) and setup a terminal to run the command above. An inittab example using [http://aur.archlinux.org/packages.php?ID=19631 rungetty] on virtual console 4:<br />
<pre>sam:45:respawn:/sbin/rungetty tty4 -u <local user> -- /usr/bin/ssh -t -p <ssh port on remote machine> <remote user>@<remote machine> screen -RD</pre><br />
<br />
===rtorrent Daemon with screen===<br />
<br />
I use this on my home server to run rtorrent w/ screen as a daemon. With the username ''rtorrent''<br />
Just create an ''rtorrent'' file in your ''/etc/rc.d/'' and add the following code.<br />
<br />
<pre><br />
#!/bin/bash<br />
<br />
. /etc/rc.conf<br />
. /etc/rc.d/functions<br />
<br />
case "$1" in<br />
start)<br />
stat_busy "Starting rtorrent"<br />
su rtorrent -c 'screen -d -m rtorrent' &> /dev/null<br />
if [ $? -gt 0 ]; then<br />
stat_fail<br />
else<br />
add_daemon rtorrent<br />
stat_done<br />
fi<br />
;;<br />
stop)<br />
stat_busy "Stopping rtorrent"<br />
killall -s 2 rtorrent &> /dev/null<br />
if [ $? -gt 0 ]; then<br />
stat_fail<br />
else<br />
rm_daemon rtorrent<br />
stat_done<br />
fi<br />
;;<br />
restart)<br />
$0 stop<br />
sleep 1<br />
$0 start<br />
;;<br />
*)<br />
echo "usage: $0 {start|stop|restart}"<br />
esac<br />
exit 0<br />
</pre><br />
<br />
On a remote computer I use the following script to connect to the server's daemon process:<br />
<br />
<pre><br />
ssh -t rtorrent@192.168.1.10 'screen -r'<br />
</pre><br />
<br />
== Additional Tips ==<br />
<br />
*To use RTorrent with a tracker that uses https, do the following as root:<br />
<br />
<pre><br />
cd /etc/ssl/certs<br />
wget --no-check-certificate https://www.geotrust.com/resources/root_certificates/certificates/Equifax_Secure_Global_eBusiness_CA-1.cer<br />
mv Equifax_Secure_Global_eBusiness_CA-1.cer Equifax_Secure_Global_eBusiness_CA-1.pem<br />
c_rehash<br />
</pre><br />
<br />
And from now on run RTorrent with:<br />
<br />
<pre><br />
rtorrent -o http_capath=/etc/ssl/certs<br />
</pre><br />
<br />
Be sure to change .screenrc to reflect this change if you use screen:<br />
<br />
<pre><br />
screen -t rtorrent rtorrent -o http_capath=/etc/ssl/certs<br />
</pre><br />
<br />
<br />
*To create .torrent files, I recommend [http://aur.archlinux.org/packages.php?do_Details=1&ID=10635&O=0&L=0&C=0&K=mktorrent&SB=n&SO=a&PP=25&do_MyPackages=0&do_Orphans=0&SeB=nd mktorrent] for commandline interface or [http://benclarke.ca/rubytorrent/ RubyTorrent] for GUI. <br />
<br />
<br />
== Conclusion ==<br />
<br />
Rtorrent is a most excellent bittorrent client. Its stellar performance, low requirements and excellent configurability separate it from the competition.<br />
<br />
== See Also ==<br />
<br />
[[Screen Tips|Screen Tips]]<br />
<br />
A Detailed Intro to Bittorrent including definition of terms [http://www.dessent.net/btfaq/#terms terms]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=6510b&diff=556626510b2008-12-16T18:14:33Z<p>Skorpan: Redirecting to HP Compaq 6510b</p>
<hr />
<div>#REDIRECT[[HP Compaq 6510b]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=HP_Compaq_6510b&diff=55600HP Compaq 6510b2008-12-15T19:45:35Z<p>Skorpan: /* New XOrg */ Clarifying that I really have no clue.</p>
<hr />
<div>The HP 6510b is a compact yet powerful laptop with a high-resolution screen (if you pick the WXGA+ version). It has been labeled "Novel SuSE Enterprise certified" by HP, which should mean Linux runs fine on it.<br />
<br />
= Hardware specifications =<br />
* Intel Core 2 Duo T7100 / T7300<br />
* 2 GB of DDR2 533 Mhz SO-DIMM<br />
* 14.1" 1280x800 WXGA / 1440x900 WXGA+ TFT<br />
* Intel GMA965GM chipset with X3100 onboard GPU<br />
* IPW3945 a/b/g wireless LAN miniPCI with wireless hardware switch<br />
* Broadcom Tigon Gigabit LAN adapter<br />
* Infineon <span title="Trusted Platform Module" style="border-bottom:1px dotted">TPM</span><br />
* AuthenTec AES2501 fingerprint reader<br />
* built-in Bluetooth<br />
* cardreader (supporting SD, MemoryStick, ea.)<br />
* 4x USB 2.0<br />
* 1x FireWire 400 4-pin connector<br />
<br />
= Setup =<br />
<br />
== Intel Core 2 Duo ==<br />
Automatic frequency throttling and voltage adjustment can be enabled by loading the acpi_cpufreq module (this one is to be preferred over the Intel Speedstep ones; those will be deprecated soon). Install cpufreqd, which will pull in cpufreq-utils along with it. Set up both utilities, and add cpufreqd as a daemon to your DAEMONS=() array (in /etc/rc.conf, that is).<br />
<br />
<br />
== X3100 onboard GPU ==<br />
Feature-wise this is an awesome GPU. Opensource drivers that support 3D out of the box. However, it has a problem many of the Intel GPUs have: it will stick to VESA resolutions in the framebuffer. Since the only fitting resolution is 1024x768, that is what you'll when using a framebuffer (on boot, and in a command line environment). You can check what modes the GPU supports like this:<br />
[stijn@lysithea ~]$ cat /sys/class/graphics/fb0/modes<br />
U:1024x768p-75<br />
As you can see this is the only resolution. According to the uvesafb FAQ, if that's all you get, not even uvesafb can fix it up for you. For earlier chipsets (865 and 915 for example) tools like <tt>855resolution</tt> and <tt>915resolution</tt> are available, but the latter does not support the Intel G965M yet.<br />
<br />
There are modified PKGBUILDs and patches to fix that, but the URLs provided on this page before don't exist anymore. They allow you to set the 1440x900 resolution, but one needs to dig far deeper into the system to get the system booting in that resolution, it seems.<br />
<br />
== IPW3945 ABG wireless LAN ==<br />
You have two choices for this card, either go with the present (and soon to be phased out) ieee80211 stack, or with the successor, the mac80211 stack. Both are present in the Arch kernel from 2.6.22 on. With the former you'll need Intel's [http://archlinux.org/packages/13310/ proprietary regulatory daemon] and [http://archlinux.org/packages/13309/ firmware], and - last but not least - [http://archlinux.org/packages/14046/ the driver]; the latter does not require any regulatory daemon, but still requires the [http://archlinux.org/packages/13312/ driver] and [http://archlinux.org/packages/13313/ firmware] to be installed.<br />
<br />
<b>Note:</b> each driver needs different firmware!<br />
<br />
The radio switch is hardware (it sits on the [[HP_Compaq_6510b#Tactile_strip|tactile strip]]), which is pretty convenient. Just touch it and the radio gets enabled. The switch could also be pretty shitty at times, as it will disable radio if you scrape away some dust from the tactile strip.<br />
<br />
== Broadcom NetLink BCM5787M Gigabit LAN ==<br />
No setup required, it just needs the tg3 module.<br />
<br />
<br />
== Suspension and hibernation ==<br />
<br />
In the early days, there were a bunch of different hacks that you had to perform in order to be able to suspend/hibernate your 6510b. Nowadays, all you should need is the following:<br />
<br />
sudo pacman -S pm-utils<br />
<br />
That will install the pm-utils package which contains the programs pm-suspend, pm-hibernate, etc. To suspend to RAM, just do the following:<br />
<br />
sudo pm-suspend<br />
<br />
...and to hibernate...<br />
<br />
sudo pm-hibernate<br />
<br />
Pretty straight-forward! There is also a "hybrid", called pm-suspend-hybrid. What this does is that it does everything it needs to hibernate and then ''suspends'' the computer instead of shutting it down, as it normally would when hibernating! So if you don't run out of power during this suspended state, you can start the computer up again as if it was a normal supension&mdash;if you do run out of power, it would just act like a normal hibernation.<br />
<br />
== FireWire ==<br />
FireWire is supported out of the box, however, for FireWire HD support, you might need to load the sbp2 module (that is, if you are using the common stack, since a new one is in the works and already present in the kernel). You have the common stack if you run stock Arch kernels.<br />
<br />
<br />
== AuthenTec AES2501 fingerprint reader ==<br />
As duly pointed out on the forums, fingerprint readers are more a threat to your privacy than a safeguard. Your fingerprints (unless you are paranoid and type with gloves on) are likely to be all over your keyboard, rendering the 'security' purpose of this device useless. Keep this in mind if you intend to use the reader as a replacement for your password; fingerprints can be duplicated easily with basic stuff (graphite ea.).<br><br />
There is a utility called [http://reactivated.net/fprint/wiki/Main_Page fprint] available, together with a libfprint library it depends on. Both are packaged for Arch Linux. The fprint program is still called fprint_demo for the moment, but it works :-).<br />
Integration with the login manager seems possible - for that you'll need amongst others the pam_fprint module installed (find a PKGBUILD [http://aur.archlinux.org/packages/pam_fprint/pam_fprint/PKGBUILD here]). Afer installing the package, run<br />
pam_fprint_enroll<br />
and follow the instructions to scan the finger you want to use for authentication. The next step is to configure PAM. First edit /etc/pam.d/login, and make the first lines look like this:<br />
#%PAM-1.0<br />
auth required pam_securetty.so<br />
auth requisite pam_nologin.so<br />
auth sufficient pam_fprint.so<br />
auth required pam_unix.so nullok<br />
auth required pam_tally.so onerr=succeed file=/var/log/faillog<br />
This will make PAM accept a successful fingerprint scan as a valid login token, if the scan fails, it will fall back to a password. From this moment on, you'll be able to log on with a scan on a tty - enter your username, press Enter, and scan the finger you told pam_fprint_enroll to use as default. Voilà :-).<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=36134 On the forum] you can also find a topic that covers setting up your fingerprint reader with PAM and SLiM, but this is with the aes2501 kernelspace driver.<br />
<br />
== Tactile strip ==<br />
This laptop sports a fancy tactile strip, providing some extra buttons as well as volume control (toggling mute and changing volume). I have not tried yet to get [http://people.freedesktop.org/~hughsient/quirk/quirk-keymap-index.html hal working for my multimedia keys] yet, the present solution works fine. Enter [[Extra_Keyboard_Keys#The_Keytouch_Program|keytouch]]: The HP NC6320 settings (pre-supplied by keytouch) seem to work just fine for muting & adjusting the volume. The 'Help' key (left to the radio switch) fires up your DE's help center if everything goes well, the button to the right is recognised too (you have to configure it though ;-)).<br />
As a fancy plus, you'll get a nice OSD when you mute/unmute or change volume.<br />
<br />
== lspci output ==<br />
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)<br />
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03)<br />
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)<br />
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)<br />
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)<br />
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)<br />
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)<br />
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)<br />
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)<br />
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)<br />
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)<br />
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)<br />
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)<br />
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)<br />
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)<br />
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)<br />
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)<br />
02:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b6)<br />
02:04.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 02)<br />
10:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)<br />
18:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02)<br />
<br />
<br />
== lsusb output ==<br />
Bus 007 Device 001: ID 0000:0000 <br />
Bus 006 Device 001: ID 0000:0000 <br />
Bus 005 Device 001: ID 0000:0000 <br />
Bus 004 Device 001: ID 0000:0000 <br />
Bus 003 Device 003: ID 08ff:2580 AuthenTec, Inc. <br />
Bus 003 Device 001: ID 0000:0000 <br />
Bus 002 Device 001: ID 0000:0000 <br />
Bus 001 Device 003: ID 03f0:171d Hewlett-Packard <br />
Bus 001 Device 001: ID 0000:0000<br />
<br />
The AuthenTec device is the fingerprint reader, the Hewlett-Packard one is the Bluetooth module.<br />
<br />
= Issues =<br />
People running kernel 2.6.23 on this laptop experience hard lockups when they close the laptop lid. 2.6.22 does not have this problem. It seems also 6710b owners are affected.<br />
<br />
This is due to a fix in the ACPI video driver in 2.6.23; however, this messes things up for some hardware... You can fix it by putting this in rc.local:<br />
echo 1 > /proc/acpi/video/*/DOS<br />
More info on this 'fix' can be found on [http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=commitdiff;h=a21101c46ca5b4320e31408853cdcbf7cb1ce4ed here]. It seems this behaviour might be changed again with 2.6.24 (before 2.6.23 the value use to be 1 by default), but until it hits stable there is of course no certainty about that :-).<br />
<br />
== New XOrg ==<br />
<br />
This section is really straight-forward, but be aware that '''I don't understand most of this'''.<br />
<br />
After a lot of testing I managed to get everything (keyboard and mouse) running again in the new XOrg. '''I don't really understand everything that's going on''', but this is what you do:<br />
<br />
# Remove /etc/X11/xorg.conf (or simply rename it to something else -- just make sure it doesn't get loaded).<br />
# Install "xf86-input-evdev", "hal" and "dbus".<br />
# Add "hal" to the DAEMONS array in /etc/rc.conf. Mine looks like this: DAEMONS=(syslog-ng netfs hal cpufreq crond openntpd wicd sshd alsa mpd slim)<br />
# Note that "hal" loads "dbus" automatically, so you're probably better off not adding "dbus" at all. Also note that the order of the DAEMONS array ''does'' matter. Make sure you put "hal" pretty far back and make sure any XOrg related stuff (such as SLiM) are started ''after'' "hal".<br />
# Make this directory: /etc/hal/fdi/policy/10osvendor/<br />
# Enter the following into the file /etc/hal/fdi/policy/10osvendor/11-x11-synaptics.fdi:<br />
<br />
<?xml version="1.0" encoding="ISO-8859-1"?><br />
<deviceinfo version="0.2"><br />
<device><br />
<match key="info.capabilities" contains="input.touchpad"><br />
<match key="info.product" contains="Synaptics TouchPad"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
<!-- Arbitrary options can be passed to the driver using<br />
the input.x11_options property since xorg-server-1.5. --><br />
<!-- EXAMPLE: --><br />
<merge key="input.x11_options.Device" type="string">/dev/input/mouse0</merge><br />
<merge key="input.x11_options.LeftEdge" type="string">120</merge><br />
<merge key="input.x11_options.LeftEdge" type="string">1700</merge><br />
<merge key="input.x11_options.RightEdge" type="string">5300</merge><br />
<merge key="input.x11_options.TopEdge" type="string">1700</merge><br />
<merge key="input.x11_options.BottomEdge" type="string">4200</merge><br />
<merge key="input.x11_options.FingerLow" type="string">25</merge><br />
<merge key="input.x11_options.FingerHigh" type="string">30</merge><br />
<merge key="input.x11_options.MaxTapTime" type="string">180</merge><br />
<merge key="input.x11_options.MaxTapMove" type="string">220</merge><br />
<merge key="input.x11_options.VertScrollDelta" type="string">100</merge><br />
<merge key="input.x11_options.MinSpeed" type="string">0.10</merge><br />
<merge key="input.x11_options.MaxSpeed" type="string">0.70</merge><br />
<merge key="input.x11_options.AccelFactor" type="string">0.00150</merge><br />
<merge key="input.x11_options.SHMConfig" type="string">on</merge><br />
<merge key="input.x11_options.VertTwoFingerScroll" type="string">1</merge><br />
<merge key="input.x11_options.HorizTwoFingerScroll" type="string">1</merge><br />
<merge key="input.x11_options.VertEdgeScroll" type="string">1</merge><br />
<merge key="input.x11_options.HorizEdgeScroll" type="string">1</merge><br />
<merge key="input.x11_options.TapButton1" type="string">1</merge><br />
<merge key="input.x11_options.TapButton2" type="string">2</merge><br />
<merge key="input.x11_options.TapButton3" type="string">3</merge><br />
</match><br />
<br />
<match key="info.product" contains="AlpsPS/2 ALPS"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
</match><br />
<match key="info.product" contains="appletouch"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
</match><br />
<match key="info.product" contains="bcm5974"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
</match><br />
</match><br />
</device><br />
</deviceinfo><br />
<br />
After you've followed all of these steps, make sure to restart "hal" and X (if you have already started it). If you don't know how to restart "hal", this is what you do:<br />
<br />
sudo /etc/rc.d/hal restart<br />
<br />
[[Category:Laptops (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=HP_Compaq_6510b&diff=54641HP Compaq 6510b2008-12-03T15:13:06Z<p>Skorpan: Adding information about XOrg.</p>
<hr />
<div>The HP 6510b is a compact yet powerful laptop with a high-resolution screen (if you pick the WXGA+ version). It has been labeled "Novel SuSE Enterprise certified" by HP, which should mean Linux runs fine on it.<br />
<br />
= Hardware specifications =<br />
* Intel Core 2 Duo T7100 / T7300<br />
* 2 GB of DDR2 533 Mhz SO-DIMM<br />
* 14.1" 1280x800 WXGA / 1440x900 WXGA+ TFT<br />
* Intel GMA965GM chipset with X3100 onboard GPU<br />
* IPW3945 a/b/g wireless LAN miniPCI with wireless hardware switch<br />
* Broadcom Tigon Gigabit LAN adapter<br />
* Infineon <span title="Trusted Platform Module" style="border-bottom:1px dotted">TPM</span><br />
* AuthenTec AES2501 fingerprint reader<br />
* built-in Bluetooth<br />
* cardreader (supporting SD, MemoryStick, ea.)<br />
* 4x USB 2.0<br />
* 1x FireWire 400 4-pin connector<br />
<br />
= Setup =<br />
<br />
== Intel Core 2 Duo ==<br />
Automatic frequency throttling and voltage adjustment can be enabled by loading the acpi_cpufreq module (this one is to be preferred over the Intel Speedstep ones; those will be deprecated soon). Install cpufreqd, which will pull in cpufreq-utils along with it. Set up both utilities, and add cpufreqd as a daemon to your DAEMONS=() array (in /etc/rc.conf, that is).<br />
<br />
<br />
== X3100 onboard GPU ==<br />
Feature-wise this is an awesome GPU. Opensource drivers that support 3D out of the box. However, it has a problem many of the Intel GPUs have: it will stick to VESA resolutions in the framebuffer. Since the only fitting resolution is 1024x768, that is what you'll when using a framebuffer (on boot, and in a command line environment). You can check what modes the GPU supports like this:<br />
[stijn@lysithea ~]$ cat /sys/class/graphics/fb0/modes<br />
U:1024x768p-75<br />
As you can see this is the only resolution. According to the uvesafb FAQ, if that's all you get, not even uvesafb can fix it up for you. For earlier chipsets (865 and 915 for example) tools like <tt>855resolution</tt> and <tt>915resolution</tt> are available, but the latter does not support the Intel G965M yet.<br />
<br />
There are modified PKGBUILDs and patches to fix that, but the URLs provided on this page before don't exist anymore. They allow you to set the 1440x900 resolution, but one needs to dig far deeper into the system to get the system booting in that resolution, it seems.<br />
<br />
== IPW3945 ABG wireless LAN ==<br />
You have two choices for this card, either go with the present (and soon to be phased out) ieee80211 stack, or with the successor, the mac80211 stack. Both are present in the Arch kernel from 2.6.22 on. With the former you'll need Intel's [http://archlinux.org/packages/13310/ proprietary regulatory daemon] and [http://archlinux.org/packages/13309/ firmware], and - last but not least - [http://archlinux.org/packages/14046/ the driver]; the latter does not require any regulatory daemon, but still requires the [http://archlinux.org/packages/13312/ driver] and [http://archlinux.org/packages/13313/ firmware] to be installed.<br />
<br />
<b>Note:</b> each driver needs different firmware!<br />
<br />
The radio switch is hardware (it sits on the [[HP_Compaq_6510b#Tactile_strip|tactile strip]]), which is pretty convenient. Just touch it and the radio gets enabled. The switch could also be pretty shitty at times, as it will disable radio if you scrape away some dust from the tactile strip.<br />
<br />
== Broadcom NetLink BCM5787M Gigabit LAN ==<br />
No setup required, it just needs the tg3 module.<br />
<br />
<br />
== Suspension and hibernation ==<br />
<br />
In the early days, there were a bunch of different hacks that you had to perform in order to be able to suspend/hibernate your 6510b. Nowadays, all you should need is the following:<br />
<br />
sudo pacman -S pm-utils<br />
<br />
That will install the pm-utils package which contains the programs pm-suspend, pm-hibernate, etc. To suspend to RAM, just do the following:<br />
<br />
sudo pm-suspend<br />
<br />
...and to hibernate...<br />
<br />
sudo pm-hibernate<br />
<br />
Pretty straight-forward! There is also a "hybrid", called pm-suspend-hybrid. What this does is that it does everything it needs to hibernate and then ''suspends'' the computer instead of shutting it down, as it normally would when hibernating! So if you don't run out of power during this suspended state, you can start the computer up again as if it was a normal supension&mdash;if you do run out of power, it would just act like a normal hibernation.<br />
<br />
== FireWire ==<br />
FireWire is supported out of the box, however, for FireWire HD support, you might need to load the sbp2 module (that is, if you are using the common stack, since a new one is in the works and already present in the kernel). You have the common stack if you run stock Arch kernels.<br />
<br />
<br />
== AuthenTec AES2501 fingerprint reader ==<br />
As duly pointed out on the forums, fingerprint readers are more a threat to your privacy than a safeguard. Your fingerprints (unless you are paranoid and type with gloves on) are likely to be all over your keyboard, rendering the 'security' purpose of this device useless. Keep this in mind if you intend to use the reader as a replacement for your password; fingerprints can be duplicated easily with basic stuff (graphite ea.).<br><br />
There is a utility called [http://reactivated.net/fprint/wiki/Main_Page fprint] available, together with a libfprint library it depends on. Both are packaged for Arch Linux. The fprint program is still called fprint_demo for the moment, but it works :-).<br />
Integration with the login manager seems possible - for that you'll need amongst others the pam_fprint module installed (find a PKGBUILD [http://aur.archlinux.org/packages/pam_fprint/pam_fprint/PKGBUILD here]). Afer installing the package, run<br />
pam_fprint_enroll<br />
and follow the instructions to scan the finger you want to use for authentication. The next step is to configure PAM. First edit /etc/pam.d/login, and make the first lines look like this:<br />
#%PAM-1.0<br />
auth required pam_securetty.so<br />
auth requisite pam_nologin.so<br />
auth sufficient pam_fprint.so<br />
auth required pam_unix.so nullok<br />
auth required pam_tally.so onerr=succeed file=/var/log/faillog<br />
This will make PAM accept a successful fingerprint scan as a valid login token, if the scan fails, it will fall back to a password. From this moment on, you'll be able to log on with a scan on a tty - enter your username, press Enter, and scan the finger you told pam_fprint_enroll to use as default. Voilà :-).<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=36134 On the forum] you can also find a topic that covers setting up your fingerprint reader with PAM and SLiM, but this is with the aes2501 kernelspace driver.<br />
<br />
== Tactile strip ==<br />
This laptop sports a fancy tactile strip, providing some extra buttons as well as volume control (toggling mute and changing volume). I have not tried yet to get [http://people.freedesktop.org/~hughsient/quirk/quirk-keymap-index.html hal working for my multimedia keys] yet, the present solution works fine. Enter [[Extra_Keyboard_Keys#The_Keytouch_Program|keytouch]]: The HP NC6320 settings (pre-supplied by keytouch) seem to work just fine for muting & adjusting the volume. The 'Help' key (left to the radio switch) fires up your DE's help center if everything goes well, the button to the right is recognised too (you have to configure it though ;-)).<br />
As a fancy plus, you'll get a nice OSD when you mute/unmute or change volume.<br />
<br />
== lspci output ==<br />
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)<br />
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03)<br />
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)<br />
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)<br />
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)<br />
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)<br />
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)<br />
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)<br />
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)<br />
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)<br />
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)<br />
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)<br />
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)<br />
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)<br />
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)<br />
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)<br />
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)<br />
02:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b6)<br />
02:04.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 02)<br />
10:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)<br />
18:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02)<br />
<br />
<br />
== lsusb output ==<br />
Bus 007 Device 001: ID 0000:0000 <br />
Bus 006 Device 001: ID 0000:0000 <br />
Bus 005 Device 001: ID 0000:0000 <br />
Bus 004 Device 001: ID 0000:0000 <br />
Bus 003 Device 003: ID 08ff:2580 AuthenTec, Inc. <br />
Bus 003 Device 001: ID 0000:0000 <br />
Bus 002 Device 001: ID 0000:0000 <br />
Bus 001 Device 003: ID 03f0:171d Hewlett-Packard <br />
Bus 001 Device 001: ID 0000:0000<br />
<br />
The AuthenTec device is the fingerprint reader, the Hewlett-Packard one is the Bluetooth module.<br />
<br />
= Issues =<br />
People running kernel 2.6.23 on this laptop experience hard lockups when they close the laptop lid. 2.6.22 does not have this problem. It seems also 6710b owners are affected.<br />
<br />
This is due to a fix in the ACPI video driver in 2.6.23; however, this messes things up for some hardware... You can fix it by putting this in rc.local:<br />
echo 1 > /proc/acpi/video/*/DOS<br />
More info on this 'fix' can be found on [http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=commitdiff;h=a21101c46ca5b4320e31408853cdcbf7cb1ce4ed here]. It seems this behaviour might be changed again with 2.6.24 (before 2.6.23 the value use to be 1 by default), but until it hits stable there is of course no certainty about that :-).<br />
<br />
== New XOrg ==<br />
<br />
This section is really straight-forward, but be aware that I don't understand most of this.<br />
<br />
After a lot of testing I managed to get everything (keyboard and mouse) running again in the new XOrg. I don't really understand everything that's going on, but this is what you do:<br />
<br />
# Remove /etc/X11/xorg.conf (or simply rename it to something else -- just make sure it doesn't get loaded).<br />
# Install "xf86-input-evdev", "hal" and "dbus".<br />
# Add "hal" to the DAEMONS array in /etc/rc.conf. Mine looks like this: DAEMONS=(syslog-ng netfs hal cpufreq crond openntpd wicd sshd alsa mpd slim)<br />
# Note that "hal" loads "dbus" automatically, so you're probably better off not adding "dbus" at all. Also note that the order of the DAEMONS array ''does'' matter. Make sure you put "hal" pretty far back and make sure any XOrg related stuff (such as SLiM) are started ''after'' "hal".<br />
# Make this directory: /etc/hal/fdi/policy/10osvendor/<br />
# Enter the following into the file /etc/hal/fdi/policy/10osvendor/11-x11-synaptics.fdi:<br />
<br />
<?xml version="1.0" encoding="ISO-8859-1"?><br />
<deviceinfo version="0.2"><br />
<device><br />
<match key="info.capabilities" contains="input.touchpad"><br />
<match key="info.product" contains="Synaptics TouchPad"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
<!-- Arbitrary options can be passed to the driver using<br />
the input.x11_options property since xorg-server-1.5. --><br />
<!-- EXAMPLE: --><br />
<merge key="input.x11_options.Device" type="string">/dev/input/mouse0</merge><br />
<merge key="input.x11_options.LeftEdge" type="string">120</merge><br />
<merge key="input.x11_options.LeftEdge" type="string">1700</merge><br />
<merge key="input.x11_options.RightEdge" type="string">5300</merge><br />
<merge key="input.x11_options.TopEdge" type="string">1700</merge><br />
<merge key="input.x11_options.BottomEdge" type="string">4200</merge><br />
<merge key="input.x11_options.FingerLow" type="string">25</merge><br />
<merge key="input.x11_options.FingerHigh" type="string">30</merge><br />
<merge key="input.x11_options.MaxTapTime" type="string">180</merge><br />
<merge key="input.x11_options.MaxTapMove" type="string">220</merge><br />
<merge key="input.x11_options.VertScrollDelta" type="string">100</merge><br />
<merge key="input.x11_options.MinSpeed" type="string">0.10</merge><br />
<merge key="input.x11_options.MaxSpeed" type="string">0.70</merge><br />
<merge key="input.x11_options.AccelFactor" type="string">0.00150</merge><br />
<merge key="input.x11_options.SHMConfig" type="string">on</merge><br />
<merge key="input.x11_options.VertTwoFingerScroll" type="string">1</merge><br />
<merge key="input.x11_options.HorizTwoFingerScroll" type="string">1</merge><br />
<merge key="input.x11_options.VertEdgeScroll" type="string">1</merge><br />
<merge key="input.x11_options.HorizEdgeScroll" type="string">1</merge><br />
<merge key="input.x11_options.TapButton1" type="string">1</merge><br />
<merge key="input.x11_options.TapButton2" type="string">2</merge><br />
<merge key="input.x11_options.TapButton3" type="string">3</merge><br />
</match><br />
<br />
<match key="info.product" contains="AlpsPS/2 ALPS"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
</match><br />
<match key="info.product" contains="appletouch"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
</match><br />
<match key="info.product" contains="bcm5974"><br />
<merge key="input.x11_driver" type="string">synaptics</merge><br />
</match><br />
</match><br />
</device><br />
</deviceinfo><br />
<br />
After you've followed all of these steps, make sure to restart "hal" and X (if you have already started it). If you don't know how to restart "hal", this is what you do:<br />
<br />
sudo /etc/rc.d/hal restart<br />
<br />
[[Category:Laptops (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Cpufrequtils&diff=52891Cpufrequtils2008-11-08T01:28:00Z<p>Skorpan: </p>
<hr />
<div>= Summary =<br />
:''Note: This is not the same thing as cpufreqd. Never run both cpufreq'''d''' and cpufreq.''<br />
<br />
<tt>Cpufrequtils</tt> is a set of utilities designed to assist CPU Frequency Scaling, a technology used primarily by notebooks which enables the OS to scale the CPU speed up or down, depending on the current system load and/or power scheme. For instance, CPU frequency scaling can reduce a 2Ghz processor down to 1Ghz when a notebook is on battery power, thereby conserving battery life, reducing heat and lowering fan noise.<br />
<br />
When used in conjunction with [[Pm-utils]], notebook owners are provided with a complete power management suite.<br />
<br />
= Installation =<br />
The <tt>cpufrequtils</tt> package is available from the [http://www.archlinux.org/packages/search/?q=cpufrequtils Extra] repository:<br />
# pacman -S cpufrequtils<br />
<br />
= Configuration =<br />
Configuring CPU scaling is a 3-part process:<br />
# Load appropriate CPU frequency driver<br />
# Load desired scaling governor(s)<br />
# Configure and load frequency scaling daemon (optional)<br />
<br />
== CPU Frequency Driver ==<br />
In order for frequency scaling to work properly, the OS must first know the limits of your CPU(s). To do this, we load a kernel driver that can read and manage the specifications of your CPU(s).<br />
<br />
Most modern notebooks and desktops can simply use the '''<tt>acpi-cpufreq</tt>''' driver, however other options include the ''p4-clockmod, powernow-k6, powernow-k7, powernow-k8,'' and ''speedstep-centrino'' drivers.<br />
<br />
To load the CPU Frequency driver manually:<br />
# modprobe acpi-cpufreq<br />
<br />
To load the driver automatically at startup, add the appropriate driver to the MODULES array within <tt>/etc/rc.conf</tt>. For example:<br />
MODULES=( '''''acpi-cpufreq''''' vboxdrv fuse fglrx iwl3945 ... )<br />
<br />
Once the appropriate cpufreq driver is loaded, you can view detailed information about your CPU(s) by running: <br />
<br />
$ cpufreq-info<br />
<br />
Sample output of <tt>cpufreq-info</tt> (from an Intel Duo Core T2500):<br />
analyzing CPU 0:<br />
driver: acpi-cpufreq<br />
CPUs which need to switch frequency at the same time: 0 1<br />
hardware limits: 1000 MHz - 2.00 GHz<br />
available frequency steps: 2.00 GHz, 1.67 GHz, 1.33 GHz, 1000 MHz<br />
available cpufreq governors: ondemand, performance<br />
current policy: frequency should be within 1000 MHz and 2.00 GHz.<br />
The governor "performance" may decide which speed to use<br />
within this range.<br />
current CPU frequency is 2.00 GHz.<br />
analyzing CPU 1:<br />
driver: acpi-cpufreq<br />
CPUs which need to switch frequency at the same time: 0 1<br />
hardware limits: 1000 MHz - 2.00 GHz<br />
available frequency steps: 2.00 GHz, 1.67 GHz, 1.33 GHz, 1000 MHz<br />
available cpufreq governors: ondemand, performance<br />
current policy: frequency should be within 1000 MHz and 2.00 GHz.<br />
The governor "performance" may decide which speed to use<br />
within this range.<br />
current CPU frequency is 2.00 GHz.<br />
<br />
== Scaling Governors (CPU Power Schemes) ==<br />
Governors can be thought of as pre-configured power schemes for the CPU. These governors must be loaded as kernel modules in order to be seen by such programs as kpowersave and gnome-power-manager. You may load as many governors as you like, however only one will be active at any given time.<br />
<br />
Available governors:<br />
*performance '''(default)''' -- The performance governor is built into the kernel and runs the CPU(s) at maximum clock speed<br />
*cpufreq_ondemand ''(recommended)'' -- Dynamically increases/decreases the CPU(s) clock speed based on system load<br />
*cpufreq_conservative -- Similar to ondemand, but more conservative (clock speed changes are more graceful)<br />
*cpufreq_powersave -- Runs the CPU at minimum speed<br />
*cpufreq_userspace -- Manually configured clock speeds by user<br />
<br />
Add the desired governor(s) to the MODULES array in <tt>/etc/rc.conf</tt>:<br />
MODULES=(acpi-cpufreq '''''cpufreq_ondemand cpufreq_powersave''''' vboxdrv fuse fglrx iwl3945 ... )<br />
<br />
Alternatively, you can manually set the governor by running the <tt>cpufreq-set</tt> command (as root), however this setting will not be saved after a reboot/shutdown. For example:<br />
<br />
# cpufreq-set -g ondemand<br />
<br />
Run '''<tt>cpufreq-set --help</tt>''' or '''<tt>man cpufreq-set</tt>''' for more information.<br />
<br />
== Daemon Mode ==<br />
<tt>cpufrequtils</tt> also installs a daemon which will allow you to set the desired scaling governor and min/max clock speeds at boot-time, without the need for additional tools such as kpowersave. This is a perfect solution for those running a lightweight desktop, such as Openbox.<br />
<br />
Before starting the daemon, edit <tt>/etc/conf.d/cpufreq</tt> as root, selecting the desired governor and setting the min/max speed for your CPU(s), for example:<br />
<br />
#configuration for cpufreq control<br />
# valid governors:<br />
# ondemand, performance, powersave,<br />
# conservative, userspace<br />
governor="ondemand"<br />
<br />
# valid suffixes: Hz, kHz (default), MHz, GHz, THz<br />
min_freq="1GHz"<br />
max_freq="2GHz"<br />
<br />
'''''Note:''' The exact min/max values of your CPU(s) can be found running '''cpufreq-info''' after loading the CPU driver from above (e.g. ''modprobe acpi-cpufreq''). However, these values are optional. You may omit them entirely by deleting or commenting out the min/max_freq lines. Things will work automatically.''<br />
<br />
With the config file taken care of, you may now start the daemon with the following command:<br />
# /etc/rc.d/cpufreq start<br />
<br />
To start the daemon automatically at startup, add <tt>cpufreq</tt> to the DAEMONS array in <tt>/etc/rc.conf</tt>, for example:<br />
DAEMONS=(syslog-ng hal '''''cpufreq''''' dhcdbd networkmanager !network !netfs @alsa @crond @cups @fam @ntpd @sshd)<br />
<br />
= Other Resources =<br />
[[CPU_Frequency_Scaling]] - Other useful info for desktop environment users (Arch Wiki Entry)<br><br />
[[Pm-utils]] - Hibernate/Suspend framework provided by the OpenSUSE community (Arch Wiki Entry)<br />
<br />
[[Category:Power management (English)]]<br />
[[Category:CPU (English)]]<br />
[[Category:Daemons and system services (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|Cpufrequtils}}<br />
{{i18n_entry|Русский|Cpufrequtils (Русский)}}<br />
{{i18n_entry|Español|Cpufrequtils (Español)}}<br />
{{i18n_entry|Português|Cpufrequtils (Português)}}<br />
{{i18n_entry|简体中文|Cpufrequtils (简体中文)}}<br />
{{i18n_links_end}}</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Cpufreq&diff=52890Cpufreq2008-11-08T01:26:56Z<p>Skorpan: Redirecting to Cpufrequtils</p>
<hr />
<div>#REDIRECT[[Cpufrequtils]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Advanced_Linux_Sound_Architecture&diff=51571Advanced Linux Sound Architecture2008-10-21T15:12:45Z<p>Skorpan: /* Alsamixer does not run */</p>
<hr />
<div>[[Category:Sound (English)]]<br />
[[Category:Audio/Video (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|ALSA}}<br />
{{i18n_entry|Español|ALSA (Español)}}<br />
{{i18n_entry|Deutsch|ALSA Einrichten}}<br />
{{i18n_entry|Italiano|ALSA (Italiano)}}<br />
{{i18n_entry|Nederlands|ALSA instellen}}<br />
{{i18n_entry|Русский|ALSA_(Russian)}}<br />
{{i18n_entry|Slovensky|Nastavenie ALSA}}<br />
{{i18n_entry|Česky|ALSA (Česky)}}<br />
{{i18n_entry|中文(简体)|设置ALSA}}<br />
{{i18n_entry|עברית|הגדרת ALSA}}<br />
{{i18n_entry|Рolski|ALSA Setup (Polski)}}<br />
{{i18n_entry|Português do Brasil|Instalação ALSA}}<br />
{{i18n_entry|ไทย|ALSA Setup (ไทย)}}<br />
{{i18n_entry|Türkçe|ALSA (Türkçe)}}<br />
{{i18n_links_end}}<br />
<br />
= Introduction =<br />
The Advanced Linux Sound Architecture (ALSA) is a Linux kernel component intended to provide device drivers for sound cards.<br />
<br />
See [[OSS]] if you are looking for alternatives.<br />
<br />
This document tells how to get ALSA working with 2.6 kernels. Also see how to <br />
[[Allow_multiple_programs_to_play_sound_at_once|allow multiple programs to play sound at once]].<br />
<br />
=Installation=<br />
<br />
==Kernel drivers==<br />
<br />
ALSA has been included in the 2.6 kernels and is included in all arch '''kernel26*''' packages. If you build a custom kernel, do not forget to enable the correct ALSA driver.<br />
<br />
All necessary modules should be detected and loaded automatically by udev. No special configuration has to be done unless you use ISA cards. '''NEVER''' use alsaconf if you have a PCI or ISAPNP sound card, as the entries alsaconf adds to the modprobe.conf file might break udev's autodetection.<br />
<br />
==Userspace utilities==<br />
<br />
* Required for native ALSA programs and administration<br />
# pacman -Sy alsa-lib alsa-utils<br />
* Recommended if you want to use applications with OSS sound support in combination with dmix:<br />
# pacman -S alsa-oss<br />
<br />
All ALSA programs will most likely have alsa-lib as a dependency.<br />
<br />
=Configuration=<br />
<br />
==Making sure the sound modules are loaded==<br />
<br />
You can assume that udev will autodetect your sound properly, including the OSS compatibility modules. You can check this with the command<br />
<br />
$ lsmod|grep '^snd'<br />
snd_usb_audio 69696 0 <br />
snd_usb_lib 13504 1 snd_usb_audio<br />
snd_rawmidi 20064 1 snd_usb_lib<br />
snd_hwdep 7044 1 snd_usb_audio<br />
snd_seq_oss 29412 0 <br />
snd_seq_midi_event 6080 1 snd_seq_oss<br />
snd_seq 46220 4 snd_seq_oss,snd_seq_midi_event<br />
snd_seq_device 6796 3 snd_rawmidi,snd_seq_oss,snd_seq<br />
snd_pcm_oss 45216 0 <br />
snd_mixer_oss 15232 1 snd_pcm_oss<br />
snd_intel8x0 27932 0 <br />
snd_ac97_codec 87648 1 snd_intel8x0<br />
snd_ac97_bus 1792 1 snd_ac97_codec<br />
snd_pcm 76296 4 snd_usb_audio,snd_pcm_oss,snd_intel8x0,snd_ac97_codec<br />
snd_timer 19780 2 snd_seq,snd_pcm<br />
snd 43776 12 snd_usb_audio,snd_rawmidi,snd_hwdep,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer<br />
snd_page_alloc 7944 2 snd_intel8x0,snd_pcm<br />
<br />
If the output looks similar, your sound drivers have been successfully autodetected (note that in this case, snd_intel8x0 and snd_usb_audio are the drivers for the hardware devices). You might also want to check the directory '''/dev/snd''' for the right device files:<br />
<br />
$ ls -l /dev/snd/<br />
total 0<br />
crw-rw---- 1 root audio 116, 0 Apr 8 14:17 controlC0<br />
crw-rw---- 1 root audio 116, 32 Apr 8 14:17 controlC1<br />
crw-rw---- 1 root audio 116, 24 Apr 8 14:17 pcmC0D0c<br />
crw-rw---- 1 root audio 116, 16 Apr 8 14:17 pcmC0D0p<br />
crw-rw---- 1 root audio 116, 25 Apr 8 14:17 pcmC0D1c<br />
crw-rw---- 1 root audio 116, 56 Apr 8 14:17 pcmC1D0c<br />
crw-rw---- 1 root audio 116, 48 Apr 8 14:17 pcmC1D0p<br />
crw-rw---- 1 root audio 116, 1 Apr 8 14:17 seq<br />
crw-rw---- 1 root audio 116, 33 Apr 8 14:17 timer<br />
<br />
If you have at least the devices '''controlC0''' and '''pcmC0D0p''' or similar, then your sound modules have been detected and loaded properly.<br />
<br />
<br />
If this is not the case, your sound modules have not been detected properly. '''If you want any help on IRC or the forums, please post the output of the above commands.''' To solve this, you can try loading the modules manually:<br />
<br />
* Locate the module for your soundcard: [http://www.alsa-project.org/main/index.php/Matrix:Main ALSA Soundcard Matrix] The module will be prefixed with 'snd-' (for example: 'snd-via82xx').<br />
* Load modules:<br />
# modprobe snd-NAME-OF-MODULE<br />
# modprobe snd-pcm-oss<br />
* Check for the device files in '''/dev/snd''' (see above) and/or try if '''alsamixer''' or '''amixer''' have reasonable output.<br />
* Add '''snd-NAME-OF-MODULE''' and '''snd-pcm-oss''' to the list of MODULES in '''/etc/rc.conf''' to ensure they are loaded next time (make sure '''snd-NAME-OF-MODULE''' is before '''snd-pcm-oss''').<br />
<br />
==Unmute the channels and test==<br />
<br />
In this section, we assume that you are logged in as root. If you want to perform these steps as an unprivileged user, you have to skip to the next section ''Setup Permissions'' first.<br />
<br />
* Unmute Soundcard<br />
<br />
The current version of ALSA installs with all channels '''muted by default''', so even if installation completes successfully and all devices are working properly you will hear no sound. You will need to unmute the channels manually. It is recommended to use '<code>alsamixer</code>' to accomplish this. From the alsamixer text ui, the label "MM" below a channel indicates that the channel is muted, and "00" indicates that it is open. Press the 'm' key to toggle MM/00. Use arrow-keys left and right to navigate through the channels and the arrow-keys up and down to adjust the volume. Such things as Master and PCM and possibly Speaker will need to unmuted for your sound to work.<br><br><br />
'''NOTE:''' When using '''<code>amixer</code>''', be sure to '''unmute''' as well as bring volumes up to a specific level in percent, i.e you need to use that % sign. '''<code>amixer</code>''' understands the percent sign (%), not numbers. If you use a number (say, 90) then '''<code>amixer</code>''' will take it as 100%, which can harm your speakers.<br />
<br />
# amixer set Master 90% unmute<br />
# amixer set PCM 85% unmute<br />
<br />
* Try to play a WAV file<br />
<br />
# aplay /usr/share/sounds/alsa/Front_Center.wav<br />
<br />
'''NOTE:''' Some cards (well, at least Soundblaster Audigy LS) need to have digital output muted/turned off in order to hear analog sound.<br />
<br />
If you cannot hear anything, double check your mixer settings, being sure to unmute PCM, MASTER (and some machines such as the IBM Thinkpad have an additional 'SPEAKER' channel) and try the alsaconf utility as root:<br />
# alsaconf<br />
<br />
* [[Allow multiple programs to play sound at once]]<br />
<br />
==Setup Permissions==<br />
<br />
To be able to use the sound card as a user, follow these steps:<br />
<br />
* Add your user to the audio group:<br />
# gpasswd -a USERNAME audio<br />
<br />
* Log your user out and back in to ensure the audio group is loaded.<br />
<br />
==Restore ALSA Mixer settings at startup==<br />
<br />
* Run 'alsactl' once to create '<code>/etc/asound.state</code>'<br />
<br />
alsactl store<br />
<br />
* Edit '/etc/rc.conf' and add 'alsa' to the list of daemons to start on boot-up. This will store the mixer settings on every shutdown and restore them when you boot.<br />
<br />
* If the mixer settings are not loaded on boot-up, add the following line to '<code>/etc/rc.local</code>'<br />
<br />
alsactl restore<br />
<br />
==Getting SPDIF output==<br />
<br />
(from gralves from the Gentoo forums)<br />
* In GNOME Volume Control, under the Options tab, change the IEC958 to PCM. This option can be enabled in the preferences.<br />
* If you don't have GNOME Volume Control installed,<br />
** Edit /etc/asound.state. This file is where alsasound stores your mixer settings.<br />
** Find a line that says: 'IEC958 Playback Switch'. Near it you will find a line saying value:false. Change it to value:true.<br />
** Now find this line: 'IEC958 Playback AC97-SPSA'. Change its value to 0.<br />
** Restart ALSA.<br />
<br />
Alternative way to enable SPDIF output automatically on login (tested on SoundBlaster Audigy):<br />
* add following lines to /etc/rc.local:<br />
<br />
# Use COAX-digital output<br />
amixer set 'IEC958 Optical' 100 unmute<br />
amixer set 'Audigy Analog/Digital Output Jack' on<br />
<br />
You can see the name of your card's digital output with:<br />
<br />
amixer scontrols<br />
<br />
==KDE Settings==<br />
* Start up KDE:<br />
# startx<br />
<br />
* Set up the volumes as you want them for this user (each user has their own settings):<br />
# alsamixer<br />
<br />
log out and log back in as user xyz to get sound to work (I had to kill x logout then log back in as user xyz, then start x and open firefox and bam audio working on youtube)<br />
<br />
* <b>KDE 3.3</b> Go to K Menu > Multimedia > KMix<br />
** Choose Settings > Configure KMix...<br />
** Uncheck the option "Restore volumes on logon"<br />
** Press OK, and you should be all set. Now your volumes will be the same from the command line or within KDE.<br />
<br />
==System-Wide Equalizer==<br />
Note: This method requires the use of a ladspa plugin which might use quite a bit of cpu when sound plays. In addition, this was made with stereophonic sound (e.g. headphones) in mind.<br />
<br />
* you will need, in addition to the aforementioned userspace utilities, alsa-plugins<br />
pacman -S alsa-plugins<br />
* get the ladspa and swh-plugins packages too if you don't already have them<br />
pacman -S ladspa swh-plugins<br />
* if you haven't already created either an ~/.asoundrc or a /etc/asound.conf file, then create either one<br />
vim ~/.asoundrc<br />
* insert the following into your alsa configuration file (~/.asoundrc or /etc/asound.conf)<br />
pcm.eq {<br />
type ladspa<br><br />
# The output from the EQ can either go direct to a hardware device<br />
# (if you have a hardware mixer, e.g. SBLive/Audigy) or it can go<br />
# to the software mixer shown here.<br />
#slave.pcm "plughw:0,0"<br />
slave.pcm "plug:dmix"<br><br />
# Sometimes you may need to specify the path to the plugins,<br />
# especially if you've just installed them. Once you've logged<br />
# out/restarted this shouldn't be necessary, but if you get errors<br />
# about being unable to find plugins, try uncommenting this.<br />
#path "/usr/lib/ladspa"<br><br />
plugins [<br />
{<br />
label mbeq<br />
id 1197<br />
input {<br />
#this setting is here by example, edit to your own taste<br />
#bands: 50hz, 100hz, 156hz, 220hz, 311hz, 440hz, 622hz, 880hz, 1250hz, 1750hz, 25000hz,<br />
#50000hz, 10000hz, 20000hz<br />
controls [ -5 -5 -5 -5 -5 -10 -20 -15 -10 -10 -10 -10 -10 -3 -2 ]<br />
}<br />
}<br />
]<br />
}<br><br />
# Redirect the default device to go via the EQ - you may want to do<br />
# this last, once you're sure everything is working. Otherwise all<br />
# your audio programs will break/crash if something has gone wrong.<br><br />
pcm.!default {<br />
type plug<br />
slave.pcm "eq"<br />
}<br><br />
# Redirect the OSS emulation through the EQ too (when programs are running through "aoss")<br><br />
pcm.dsp0 {<br />
type plug<br />
slave.pcm "eq"<br />
}<br />
<br />
*reload your alsa settings (as root)<br />
/etc/rc.d/alsa restart<br />
<br />
*you should be good to go (if not, ask in the forum)<br />
<br />
<br />
=Troubleshooting=<br />
==Still Getting No Sound?==<br />
<br />
Remember, ALSA installs with all channels '''muted by default''' (see previous section, [[ALSA#Unmuting_the_channels_and_testing_the_sound_card|unmuting your soundcard]]).<br />
<br />
However, if you're sure nothing is muted, that your drivers are installed correctly, and that your volume is right, but you still do not hear anything, then try blacklisting snd_pcsp from your modules array in rc.conf:<br />
<br />
MODULES=(!snd_pcsp ... )<br />
<br />
Note that this will disable your PC's internal speaker.<br />
If that doesn't work, then try adding the following line to <code>/etc/modprobe.conf</code>:<br />
<br />
options snd-NAME-OF-MODULE ac97_quirk=0<br />
<br />
The above fix has been observed to work with <code>via82xx</code><br />
options snd-NAME-OF-MODULE ac97_quirk=1<br />
The above fix has been reported to work with <code>snd_intel8x0</code><br />
<br />
==No Sound with Onboard Intel Sound Card==<br />
<br />
There may be an issue with two conflicting modules loaded, namely <code>snd_intel8x0</code> and <code>snd_intel8x0m</code>. In this case, edit <code>rc.conf</code> and in the MODULES array blacklist the latter one so that it reads <code>!snd_intel8x0m</code> afterwards.<br />
<br />
''Muting'' the "External Amplifier" in <code>alsamixer</code> or <code>amixer</code> may also help. See [http://alsa.opensrc.org/index.php/Intel8x0#Dell_Inspiron_8600_.28and_probably_others.29 the ALSA wiki].<br />
<br />
==Poor Sound Quality?==<br />
<br />
If you experience poor sound quality, try setting the PCM volume (in alsamixer) to a level such that gain is 0.<br />
<br />
==Pops when Starting and Stopping Playback?==<br />
<br />
Some modules can power off your sound card when not in use. this can make an audible noise when powering down your sound card. If you find this annoying try "modinfo snd-MY-MODULE", and look for a module option that adjusts or disables this feature. <br />
<br />
for example: to disable the power saving mode using snd-hda-intel add "options snd-hda-intel power_save=0" in /etc/modprobe.conf. or try it with "modprobe snd-hda-intel power_save=0"<br />
<br />
==Alsamixer does not run==<br />
If running alsamixer does not work and you wind up with the following error<br />
alsamixer: function snd_ctl_open failed for default: No such device or directory<br />
<br />
You should first check /etc/group to ensure that your current user is in the 'audio' group. Don't forget to log out and log in again for the group changes.<br />
<br />
Then you might need to re-install your kernel. Run 'pacman -S kernel26' or whichever patchset you prefer to use.<br />
<br />
==S/PDIF output does not work==<br />
If the optical/coaxial digital output of your motherboard/sound card is not working or stopped working, and have already enabled and unmuted it in alsamixer, try running<br />
iecset audio on<br />
<br />
as root.<br />
<br />
You can also put this command in rc.local as it sometimes it may stop working after a reboot.<br />
<br />
==No adjustable PCM channel==<br />
You may find that you lack adjustable PCM channel. In this case try to remove all sound-related stuff from MODULES section in /etc/rc.conf, except for snd-NAME-OF-MODULE and snd-pcm-oss.<br />
<br />
== HP TX2500 ==<br />
<br />
Add these 2 lines into /etc/modprobe.conf:<br />
<br />
options snd-cmipci mpu_port=0x330 fm_port=0x388<br />
<br />
options snd-hda-intel index=0 model=toshiba position_fix=1<br />
<br />
And don't forget to enable 'hal' in the DAEMONS section of your /etc/rc.conf<br />
<br />
== Skipping sound when playing MP3's ==<br />
<br />
If you have sound skipping when playing MP3 files and you have more then 2 speakers attacked to your computer (i.e. > 2 speaker system), run alsamixer and disable the channels for the speakers that you '''DON'T''' have (i.e. don't enable the sound for the center speaker if you don't have a center speaker<br />
<br />
= External Resources =<br />
More info can be found here<br />
* [http://alsa.opensrc.org/index.php/Main_Page Unofficial ALSA Wiki]<br />
* [http://alsa.opensrc.org/index.php/Aadebug A simple shell script to aid ALSA audio debugging]<br />
* [http://bbs.archlinux.org/viewtopic.php?id=36815 HOWTO: Compile driver from svn]<br />
* [http://gentoo-wiki.com/HOWTO_Set_up_a_system-wide_equaliser_with_ALSA_and_LADSPA HOWTO Set up a system-wide equaliser with ALSA and LADSPA]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=HP_Compaq_6510b&diff=51545HP Compaq 6510b2008-10-20T18:17:43Z<p>Skorpan: /* X3100 onboard GPU */ Removing broken links.</p>
<hr />
<div>The HP 6510b is a compact yet powerful laptop with a high-resolution screen (if you pick the WXGA+ version). It has been labeled "Novel SuSE Enterprise certified" by HP, which should mean Linux runs fine on it.<br />
<br />
= Hardware specifications =<br />
* Intel Core 2 Duo T7100 / T7300<br />
* 2 GB of DDR2 533 Mhz SO-DIMM<br />
* 14.1" 1280x800 WXGA / 1440x900 WXGA+ TFT<br />
* Intel GMA965GM chipset with X3100 onboard GPU<br />
* IPW3945 a/b/g wireless LAN miniPCI with wireless hardware switch<br />
* Broadcom Tigon Gigabit LAN adapter<br />
* Infineon <span title="Trusted Platform Module" style="border-bottom:1px dotted">TPM</span><br />
* AuthenTec AES2501 fingerprint reader<br />
* built-in Bluetooth<br />
* cardreader (supporting SD, MemoryStick, ea.)<br />
* 4x USB 2.0<br />
* 1x FireWire 400 4-pin connector<br />
<br />
= Setup =<br />
<br />
== Intel Core 2 Duo ==<br />
Automatic frequency throttling and voltage adjustment can be enabled by loading the acpi_cpufreq module (this one is to be preferred over the Intel Speedstep ones; those will be deprecated soon). Install cpufreqd, which will pull in cpufreq-utils along with it. Set up both utilities, and add cpufreqd as a daemon to your DAEMONS=() array (in /etc/rc.conf, that is).<br />
<br />
<br />
== X3100 onboard GPU ==<br />
Feature-wise this is an awesome GPU. Opensource drivers that support 3D out of the box. However, it has a problem many of the Intel GPUs have: it will stick to VESA resolutions in the framebuffer. Since the only fitting resolution is 1024x768, that is what you'll when using a framebuffer (on boot, and in a command line environment). You can check what modes the GPU supports like this:<br />
[stijn@lysithea ~]$ cat /sys/class/graphics/fb0/modes<br />
U:1024x768p-75<br />
As you can see this is the only resolution. According to the uvesafb FAQ, if that's all you get, not even uvesafb can fix it up for you. For earlier chipsets (865 and 915 for example) tools like <tt>855resolution</tt> and <tt>915resolution</tt> are available, but the latter does not support the Intel G965M yet.<br />
<br />
There are modified PKGBUILDs and patches to fix that, but the URLs provided on this page before don't exist anymore. They allow you to set the 1440x900 resolution, but one needs to dig far deeper into the system to get the system booting in that resolution, it seems.<br />
<br />
== IPW3945 ABG wireless LAN ==<br />
You have two choices for this card, either go with the present (and soon to be phased out) ieee80211 stack, or with the successor, the mac80211 stack. Both are present in the Arch kernel from 2.6.22 on. With the former you'll need Intel's [http://archlinux.org/packages/13310/ proprietary regulatory daemon] and [http://archlinux.org/packages/13309/ firmware], and - last but not least - [http://archlinux.org/packages/14046/ the driver]; the latter does not require any regulatory daemon, but still requires the [http://archlinux.org/packages/13312/ driver] and [http://archlinux.org/packages/13313/ firmware] to be installed.<br />
<br />
<b>Note:</b> each driver needs different firmware!<br />
<br />
The radio switch is hardware (it sits on the [[HP_Compaq_6510b#Tactile_strip|tactile strip]]), which is pretty convenient. Just touch it and the radio gets enabled. The switch could also be pretty shitty at times, as it will disable radio if you scrape away some dust from the tactile strip.<br />
<br />
== Broadcom NetLink BCM5787M Gigabit LAN ==<br />
No setup required, it just needs the tg3 module.<br />
<br />
<br />
== Suspension and hibernation ==<br />
<br />
In the early days, there were a bunch of different hacks that you had to perform in order to be able to suspend/hibernate your 6510b. Nowadays, all you should need is the following:<br />
<br />
sudo pacman -S pm-utils<br />
<br />
That will install the pm-utils package which contains the programs pm-suspend, pm-hibernate, etc. To suspend to RAM, just do the following:<br />
<br />
sudo pm-suspend<br />
<br />
...and to hibernate...<br />
<br />
sudo pm-hibernate<br />
<br />
Pretty straight-forward! There is also a "hybrid", called pm-suspend-hybrid. What this does is that it does everything it needs to hibernate and then ''suspends'' the computer instead of shutting it down, as it normally would when hibernating! So if you don't run out of power during this suspended state, you can start the computer up again as if it was a normal supension&mdash;if you do run out of power, it would just act like a normal hibernation.<br />
<br />
== FireWire ==<br />
FireWire is supported out of the box, however, for FireWire HD support, you might need to load the sbp2 module (that is, if you are using the common stack, since a new one is in the works and already present in the kernel). You have the common stack if you run stock Arch kernels.<br />
<br />
<br />
== AuthenTec AES2501 fingerprint reader ==<br />
As duly pointed out on the forums, fingerprint readers are more a threat to your privacy than a safeguard. Your fingerprints (unless you are paranoid and type with gloves on) are likely to be all over your keyboard, rendering the 'security' purpose of this device useless. Keep this in mind if you intend to use the reader as a replacement for your password; fingerprints can be duplicated easily with basic stuff (graphite ea.).<br><br />
There is a utility called [http://reactivated.net/fprint/wiki/Main_Page fprint] available, together with a libfprint library it depends on. Both are packaged for Arch Linux. The fprint program is still called fprint_demo for the moment, but it works :-).<br />
Integration with the login manager seems possible - for that you'll need amongst others the pam_fprint module installed (find a PKGBUILD [http://aur.archlinux.org/packages/pam_fprint/pam_fprint/PKGBUILD here]). Afer installing the package, run<br />
pam_fprint_enroll<br />
and follow the instructions to scan the finger you want to use for authentication. The next step is to configure PAM. First edit /etc/pam.d/login, and make the first lines look like this:<br />
#%PAM-1.0<br />
auth required pam_securetty.so<br />
auth requisite pam_nologin.so<br />
auth sufficient pam_fprint.so<br />
auth required pam_unix.so nullok<br />
auth required pam_tally.so onerr=succeed file=/var/log/faillog<br />
This will make PAM accept a successful fingerprint scan as a valid login token, if the scan fails, it will fall back to a password. From this moment on, you'll be able to log on with a scan on a tty - enter your username, press Enter, and scan the finger you told pam_fprint_enroll to use as default. Voilà :-).<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=36134 On the forum] you can also find a topic that covers setting up your fingerprint reader with PAM and SLiM, but this is with the aes2501 kernelspace driver.<br />
<br />
== Tactile strip ==<br />
This laptop sports a fancy tactile strip, providing some extra buttons as well as volume control (toggling mute and changing volume). I have not tried yet to get [http://people.freedesktop.org/~hughsient/quirk/quirk-keymap-index.html hal working for my multimedia keys] yet, the present solution works fine. Enter [[Extra_Keyboard_Keys#The_Keytouch_Program|keytouch]]: The HP NC6320 settings (pre-supplied by keytouch) seem to work just fine for muting & adjusting the volume. The 'Help' key (left to the radio switch) fires up your DE's help center if everything goes well, the button to the right is recognised too (you have to configure it though ;-)).<br />
As a fancy plus, you'll get a nice OSD when you mute/unmute or change volume.<br />
<br />
== lspci output ==<br />
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)<br />
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03)<br />
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)<br />
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)<br />
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)<br />
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)<br />
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)<br />
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)<br />
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)<br />
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)<br />
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)<br />
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)<br />
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)<br />
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)<br />
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)<br />
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)<br />
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)<br />
02:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b6)<br />
02:04.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 02)<br />
10:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)<br />
18:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02)<br />
<br />
<br />
== lsusb output ==<br />
Bus 007 Device 001: ID 0000:0000 <br />
Bus 006 Device 001: ID 0000:0000 <br />
Bus 005 Device 001: ID 0000:0000 <br />
Bus 004 Device 001: ID 0000:0000 <br />
Bus 003 Device 003: ID 08ff:2580 AuthenTec, Inc. <br />
Bus 003 Device 001: ID 0000:0000 <br />
Bus 002 Device 001: ID 0000:0000 <br />
Bus 001 Device 003: ID 03f0:171d Hewlett-Packard <br />
Bus 001 Device 001: ID 0000:0000<br />
<br />
The AuthenTec device is the fingerprint reader, the Hewlett-Packard one is the Bluetooth module.<br />
<br />
= Issues =<br />
People running kernel 2.6.23 on this laptop experience hard lockups when they close the laptop lid. 2.6.22 does not have this problem. It seems also 6710b owners are affected.<br />
<br />
This is due to a fix in the ACPI video driver in 2.6.23; however, this messes things up for some hardware... You can fix it by putting this in rc.local:<br />
echo 1 > /proc/acpi/video/*/DOS<br />
More info on this 'fix' can be found on [http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=commitdiff;h=a21101c46ca5b4320e31408853cdcbf7cb1ce4ed here]. It seems this behaviour might be changed again with 2.6.24 (before 2.6.23 the value use to be 1 by default), but until it hits stable there is of course no certainty about that :-).<br />
<br />
<br />
[[Category:Laptops (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=HP_Compaq_6510b&diff=45632HP Compaq 6510b2008-07-19T14:29:07Z<p>Skorpan: /* Suspend to RAM/disk */ Updating this part.</p>
<hr />
<div>The HP 6510b is a compact yet powerful laptop with a high-resolution screen (if you pick the WXGA+ version). It has been labeled "Novel SuSE Enterprise certified" by HP, which should mean Linux runs fine on it.<br />
<br />
= Hardware specifications =<br />
* Intel Core 2 Duo T7100 / T7300<br />
* 2 GB of DDR2 533 Mhz SO-DIMM<br />
* 14.1" 1280x800 WXGA / 1440x900 WXGA+ TFT<br />
* Intel GMA965GM chipset with X3100 onboard GPU<br />
* IPW3945 a/b/g wireless LAN miniPCI with wireless hardware switch<br />
* Broadcom Tigon Gigabit LAN adapter<br />
* Infineon <span title="Trusted Platform Module" style="border-bottom:1px dotted">TPM</span><br />
* AuthenTec AES2501 fingerprint reader<br />
* built-in Bluetooth<br />
* cardreader (supporting SD, MemoryStick, ea.)<br />
* 4x USB 2.0<br />
* 1x FireWire 400 4-pin connector<br />
<br />
= Setup =<br />
<br />
== Intel Core 2 Duo ==<br />
Automatic frequency throttling and voltage adjustment can be enabled by loading the acpi_cpufreq module (this one is to be preferred over the Intel Speedstep ones; those will be deprecated soon). Install cpufreqd, which will pull in cpufreq-utils along with it. Set up both utilities, and add cpufreqd as a daemon to your DAEMONS=() array (in /etc/rc.conf, that is).<br />
<br />
<br />
== X3100 onboard GPU ==<br />
Feature-wise this is an awesome GPU. Opensource drivers that support 3D out of the box. However, it has a problem many of the Intel GPUs have: it will stick to VESA resolutions in the framebuffer. Since the only fitting resolution is 1024x768, that is what you'll when using a framebuffer (on boot, and in a command line environment). You can check what modes the GPU supports like this:<br />
[stijn@lysithea ~]$ cat /sys/class/graphics/fb0/modes<br />
U:1024x768p-75<br />
As you can see this is the only resolution. According to the uvesafb FAQ, if that's all you get, not even uvesafb can fix it up for you. For earlier chipsets (865 and 915 for example) tools like <tt>855resolution</tt> and <tt>915resolution</tt> are available, but the latter does not support the Intel G965M yet. However, there is a patch that fixes that :-). You can find an [http://zero9.org/pkgbuilds/915resolution/PKGBUILD adapted PKGBUILD] and a [http://zero9.org/pkgbuilds/915resolution/965-support.patch patch] here. This allows you to set the 1440x900 resolution, but one needs to dig far deeper into the system to get the system booting in that resolution, it seems.<br />
<br />
<br />
== IPW3945 ABG wireless LAN ==<br />
You have two choices for this card, either go with the present (and soon to be phased out) ieee80211 stack, or with the successor, the mac80211 stack. Both are present in the Arch kernel from 2.6.22 on. With the former you'll need Intel's [http://archlinux.org/packages/13310/ proprietary regulatory daemon] and [http://archlinux.org/packages/13309/ firmware], and - last but not least - [http://archlinux.org/packages/14046/ the driver]; the latter does not require any regulatory daemon, but still requires the [http://archlinux.org/packages/13312/ driver] and [http://archlinux.org/packages/13313/ firmware] to be installed.<br />
<br />
<b>Note:</b> each driver needs different firmware!<br />
<br />
The radio switch is hardware (it sits on the [[HP_Compaq_6510b#Tactile_strip|tactile strip]]), which is pretty convenient. Just touch it and the radio gets enabled. The switch could also be pretty shitty at times, as it will disable radio if you scrape away some dust from the tactile strip.<br />
<br />
== Broadcom NetLink BCM5787M Gigabit LAN ==<br />
No setup required, it just needs the tg3 module.<br />
<br />
<br />
== Suspension and hibernation ==<br />
<br />
In the early days, there were a bunch of different hacks that you had to perform in order to be able to suspend/hibernate your 6510b. Nowadays, all you should need is the following:<br />
<br />
sudo pacman -S pm-utils<br />
<br />
That will install the pm-utils package which contains the programs pm-suspend, pm-hibernate, etc. To suspend to RAM, just do the following:<br />
<br />
sudo pm-suspend<br />
<br />
...and to hibernate...<br />
<br />
sudo pm-hibernate<br />
<br />
Pretty straight-forward! There is also a "hybrid", called pm-suspend-hybrid. What this does is that it does everything it needs to hibernate and then ''suspends'' the computer instead of shutting it down, as it normally would when hibernating! So if you don't run out of power during this suspended state, you can start the computer up again as if it was a normal supension&mdash;if you do run out of power, it would just act like a normal hibernation.<br />
<br />
== FireWire ==<br />
FireWire is supported out of the box, however, for FireWire HD support, you might need to load the sbp2 module (that is, if you are using the common stack, since a new one is in the works and already present in the kernel). You have the common stack if you run stock Arch kernels.<br />
<br />
<br />
== AuthenTec AES2501 fingerprint reader ==<br />
As duly pointed out on the forums, fingerprint readers are more a threat to your privacy than a safeguard. Your fingerprints (unless you are paranoid and type with gloves on) are likely to be all over your keyboard, rendering the 'security' purpose of this device useless. Keep this in mind if you intend to use the reader as a replacement for your password; fingerprints can be duplicated easily with basic stuff (graphite ea.).<br><br />
There is a utility called [http://reactivated.net/fprint/wiki/Main_Page fprint] available, together with a libfprint library it depends on. Both are packaged for Arch Linux. The fprint program is still called fprint_demo for the moment, but it works :-).<br />
Integration with the login manager seems possible - for that you'll need amongst others the pam_fprint module installed (find a PKGBUILD [http://aur.archlinux.org/packages/pam_fprint/pam_fprint/PKGBUILD here]). Afer installing the package, run<br />
pam_fprint_enroll<br />
and follow the instructions to scan the finger you want to use for authentication. The next step is to configure PAM. First edit /etc/pam.d/login, and make the first lines look like this:<br />
#%PAM-1.0<br />
auth required pam_securetty.so<br />
auth requisite pam_nologin.so<br />
auth sufficient pam_fprint.so<br />
auth required pam_unix.so nullok<br />
auth required pam_tally.so onerr=succeed file=/var/log/faillog<br />
This will make PAM accept a successful fingerprint scan as a valid login token, if the scan fails, it will fall back to a password. From this moment on, you'll be able to log on with a scan on a tty - enter your username, press Enter, and scan the finger you told pam_fprint_enroll to use as default. Voilà :-).<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=36134 On the forum] you can also find a topic that covers setting up your fingerprint reader with PAM and SLiM, but this is with the aes2501 kernelspace driver.<br />
<br />
== Tactile strip ==<br />
This laptop sports a fancy tactile strip, providing some extra buttons as well as volume control (toggling mute and changing volume). I have not tried yet to get [http://people.freedesktop.org/~hughsient/quirk/quirk-keymap-index.html hal working for my multimedia keys] yet, the present solution works fine. Enter [[Extra_Keyboard_Keys#The_Keytouch_Program|keytouch]]: The HP NC6320 settings (pre-supplied by keytouch) seem to work just fine for muting & adjusting the volume. The 'Help' key (left to the radio switch) fires up your DE's help center if everything goes well, the button to the right is recognised too (you have to configure it though ;-)).<br />
As a fancy plus, you'll get a nice OSD when you mute/unmute or change volume.<br />
<br />
== lspci output ==<br />
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)<br />
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03)<br />
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)<br />
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)<br />
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)<br />
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)<br />
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)<br />
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)<br />
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)<br />
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)<br />
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)<br />
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)<br />
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)<br />
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)<br />
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)<br />
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)<br />
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)<br />
02:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b6)<br />
02:04.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 02)<br />
10:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)<br />
18:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02)<br />
<br />
<br />
== lsusb output ==<br />
Bus 007 Device 001: ID 0000:0000 <br />
Bus 006 Device 001: ID 0000:0000 <br />
Bus 005 Device 001: ID 0000:0000 <br />
Bus 004 Device 001: ID 0000:0000 <br />
Bus 003 Device 003: ID 08ff:2580 AuthenTec, Inc. <br />
Bus 003 Device 001: ID 0000:0000 <br />
Bus 002 Device 001: ID 0000:0000 <br />
Bus 001 Device 003: ID 03f0:171d Hewlett-Packard <br />
Bus 001 Device 001: ID 0000:0000<br />
<br />
The AuthenTec device is the fingerprint reader, the Hewlett-Packard one is the Bluetooth module.<br />
<br />
= Issues =<br />
People running kernel 2.6.23 on this laptop experience hard lockups when they close the laptop lid. 2.6.22 does not have this problem. It seems also 6710b owners are affected.<br />
<br />
This is due to a fix in the ACPI video driver in 2.6.23; however, this messes things up for some hardware... You can fix it by putting this in rc.local:<br />
echo 1 > /proc/acpi/video/*/DOS<br />
More info on this 'fix' can be found on [http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=commitdiff;h=a21101c46ca5b4320e31408853cdcbf7cb1ce4ed here]. It seems this behaviour might be changed again with 2.6.24 (before 2.6.23 the value use to be 1 by default), but until it hits stable there is of course no certainty about that :-).<br />
<br />
<br />
[[Category:Laptops (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=RTorrent&diff=41535RTorrent2008-05-17T23:32:49Z<p>Skorpan: /* Controls */ Correcting some information.</p>
<hr />
<div>[[Category:Internet and Email (English)]]<br />
[[Category:Utilities (English)]]<br />
[[Category:HOWTOs (English)]]<br />
[[Category:Audio/Video (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|Español|RTorrent - cliente de bittorrent en línea de órdenes}}<br />
{{i18n_links_end}}<br />
<br />
= RTorrent =<br />
<br />
RTorrent is a very simple, elegant and ultra-light bittorent client. It is written in C++ and uses ncurses, so it is completely text based and runs entirely in a console. RTorrent is ideal for low-end systems and with the addition of GNU Screen and openssh it is convenient as a remote bittorrent client. <br />
<br />
== Installing ==<br />
<br />
<pre><br />
pacman -S rtorrent<br />
</pre><br />
<br />
== Configuring ==<br />
<br />
Before running RTorrent, the first step is to copy the default configuration file which is available at the RTorrent [http://libtorrent.rakshasa.no/browser/trunk/rtorrent/doc/rtorrent.rc?rev=1027&format=raw project page] and save the file as .rtorrent.rc into your home directory. <br />
<br />
Once the file has been saved, open it with your preferred text editor and make any necessary changes. Simply uncomment the options you wish to enable/utilize. For more detailed information on the options available, visit [http://libtorrent.rakshasa.no/wiki/RTorrentCommonTasks RTorrent Common Tasks]<br />
<br />
=== Recommended Configuration ===<br />
<br />
These values in the following are entirely subjective and dependent upon your own system. To find the optimal settings for you to use, visit the following website and follow the instructions: [http://torrentfreak.com/optimize-your-BitTorrent-download-speed Optimize Your BitTorrent Download Speed]<br />
<br />
<pre><br />
# Maximum and minimum number of peers to connect to per torrent.<br />
#min_peers = 40<br />
max_peers = 52<br />
<br />
# Same as above but for seeding completed torrents (-1 = same as downloading)<br />
#min_peers_seed = 10<br />
max_peers_seed = 52<br />
<br />
# Maximum number of simultanious uploads per torrent.<br />
max_uploads = 8<br />
<br />
# Global upload and download rate in KiB. "0" for unlimited.<br />
download_rate = 200<br />
upload_rate = 28<br />
</pre><br />
<br />
This option below will determine where your torrents data will be saved. Change the default save directory to whatever you wish to use. Be sure to enter the absolute path; there is an odd bug with RTorrent ''sometimes'' does not respect relative paths (i.e. ~/torrents):<br />
<br />
<pre><br />
# Default directory to save the downloaded torrents.<br />
directory = /home/[user]/torrents/<br />
</pre><br />
<br />
This option will allow RTorrent to save the progess of your torrents. Be sure to create a directory called .session (simply run as normal user:''mkdir ~/.session''):<br />
<br />
<pre><br />
# Default session directory. Make sure you don't run multiple instance<br />
# of rtorrent using the same session directory. Perhaps using a<br />
# relative path?<br />
session = /home/[user]/.session/<br />
</pre><br />
<br />
The following option will have RTorrent "watch" a particular directory for new .torrent files. Using your browser, when you find a .torrent file you would like to download, just save the file into this directory and RTorrent will automatically start the torrent. Be sure to create the directory that will be watched (simply run as normal user:''mkdir ~/watch''): <br />
<br />
<pre><br />
# Watch a directory for new torrents, and stop those that have been<br />
# deleted.<br />
#schedule = watch_directory,5,5,load_start=./watch/*.torrent<br />
#schedule = untied_directory,5,5,stop_untied=<br />
schedule = watch_directory,5,5,load_start=/home/[user]/watch/*.torrent<br />
schedule = untied_directory,5,5,stop_untied=<br />
schedule = tied_directory,5,5,start_tied=<br />
</pre><br />
<br />
This option below will stop RTorrent from downloading any further when disk space is low. This is particuarly useful with a [http://en.wikipedia.org/wiki/Seedbox Seedbox] where disk space is quite limited. Change the value as you like: <br />
<br />
<pre><br />
# Close torrents when diskspace is low.<br />
schedule = low_diskspace,5,60,close_low_diskspace=100M<br />
</pre><br />
<br />
This option will set what port to use for listening. It is recommended to use a port that is higher than 49152. RTorrent allows the use of a single port rather than a range; a single port rather than an actual range is recommended.<br />
<br />
<pre><br />
# Port range to use for listening.<br />
port_range = 49164-49164<br />
</pre><br />
<br />
The following option allow for a hash check whenever a torrent is complete or whenever RTorrent is restarted. This will make sure there are no errors with your acquired/seeding files. <br />
<br />
<pre><br />
# Check hash for finished torrents. Might be usefull until the bug is<br />
# fixed that causes lack of diskspace not to be properly reported.<br />
check_hash = yes<br />
</pre><br />
<br />
The following option allows for the enabling of encryption. This is very important to enable, if not for yourself, but for others in the torrent swarm; people might need to obscure their bandwidth usage from their ISP. Does not hurt you to enable even if you do not need such protection. More information: [http://en.wikipedia.org/wiki/BitTorrent_protocol_encryption Bittorrent Protocol Encryption]<br />
<br />
<pre><br />
# Encryption options, set to none (default) or any combination of the following:<br />
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext<br />
#<br />
# The example value allows incoming encrypted connections, starts unencrypted<br />
# outgoing connections but retries with encryption if they fail, preferring<br />
# plaintext to RC4 encryption after the encrypted handshake<br />
#<br />
# encryption = allow_incoming,enable_retry,prefer_plaintext<br />
encryption = allow_incoming,try_outgoing,enable_retry<br />
</pre><br />
<br />
The following is for DHT support. If you use public trackers, you'll want to enable DHT to acquire more peers. If you use only private trackers, '''do not enable DHT''' as this will reduce your speeds and can create a privacy risk. Some private trackers will even warn you if you use DHT. <br />
<br />
<pre><br />
# Enable DHT support for trackerless torrents or when all trackers are down.<br />
# May be set to "disable" (completely disable DHT), "off" (do not start DHT),<br />
# "auto" (start and stop DHT as needed), or "on" (start DHT immediately).<br />
# The default is "off". For DHT to work, a session directory must be defined.<br />
# <br />
# dht = auto<br />
<br />
# UDP port to use for DHT. <br />
# <br />
# dht_port = 6881<br />
<br />
# Enable peer exchange (for torrents not marked private)<br />
#<br />
# peer_exchange = yes<br />
</pre><br />
<br />
Be sure to forward the proper port(s) with your router if you use one. A decent guide per router make/model can be found [http://portforward.com/english/routers/port_forwarding/routerindex.htm here].<br />
<br />
== Controls ==<br />
<br />
RTorrent relies exclusively on keyboard shortcuts for user input.<br />
A complete guide is available on the main site: [http://libtorrent.rakshasa.no/wiki/RTorrentUserGuide RTorrent User Guide]<br />
<br />
Here are the basics for quick reference:<br />
<br />
*Control-q : closes RTorrent, done twice makes the program shutdown without waiting to send stopping information to the trackers.<br />
*Left arrow : returns to the previous screen.<br />
*Right arrow : goes to the next screen.<br />
*a|s|d : increase global upload throttle about 1|5|50 KB/s<br />
*A|S|D : increase global download throttle about 1|5|50 KB/s<br />
*z|x|c : decrease global upload throttle about 1|5|50 KB/s<br />
*Z|X|C : decrease global download throttle about 1|5|50 KB/s<br />
*Control-S : starts download<br />
*Control-D : stops an active download, removes a stopped download.<br />
*+ or - : changes the download priority of selected torrent.<br />
*Backspace : adds the specified .torrent. After pressing this button write full path or URL of .torrent file. You can use Tab and other tricks from bash.<br />
<br />
== Use RTorrent with Screen ==<br />
<br />
Screen is a program that will allow CLI applications to be run in the background and without X running. <br />
<br />
To install:<br />
<br />
<pre><br />
pacman -S screen<br />
</pre><br />
<br />
and then copy screenrc to your home directory as normal user:<br />
<br />
<pre><br />
cp /etc/screenrc ~/.screenrc<br />
</pre><br />
<br />
To have RTorrent always start with screen, add the following to your .screenrc file:<br />
<br />
<pre><br />
screen -t rtorrent rtorrent <br />
</pre><br />
<br />
To start screen + RTorrent, simply run ''screen'' from a terminal. Control-D-A will detach screen and running ''screen -raAd'' will open screen again. <br />
<br />
== Additional Tips ==<br />
<br />
*To use RTorrent with a tracker that uses https, do the following as root:<br />
<br />
<pre><br />
cd /etc/ssl/certs<br />
wget --no-check-certificate https://www.geotrust.com/resources/root_certificates/certificates/Equifax_Secure_Global_eBusiness_CA-1.cer<br />
mv Equifax_Secure_Global_eBusiness_CA-1.cer Equifax_Secure_Global_eBusiness_CA-1.pem<br />
c_rehash<br />
</pre><br />
<br />
And from now on run RTorrent with:<br />
<br />
<pre><br />
rtorrent -o http_capath=/etc/ssl/certs<br />
</pre><br />
<br />
Be sure to change .screenrc to reflect this change if you use screen:<br />
<br />
<pre><br />
screen -t rtorrent rtorrent -o http_capath=/etc/ssl/certs<br />
</pre><br />
<br />
<br />
*To create .torrent files, I recommend [http://aur.archlinux.org/packages.php?do_Details=1&ID=10635&O=0&L=0&C=0&K=mktorrent&SB=n&SO=a&PP=25&do_MyPackages=0&do_Orphans=0&SeB=nd mktorrent] for commandline interface or [http://benclarke.ca/rubytorrent/ RubyTorrent] for GUI. <br />
<br />
<br />
== Conclusion ==<br />
<br />
Rtorrent is a most excellent bittorrent client. Its stellar performance, low requirements and excellent configurability separate it from the competition.<br />
<br />
== See Also ==<br />
<br />
[[Screen Tips|Screen Tips]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Rtorrent&diff=41534Rtorrent2008-05-17T23:30:59Z<p>Skorpan: Redirecting to RTorrent</p>
<hr />
<div>#REDIRECT [[RTorrent]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Talk:RTorrent_-_commandline_bittorrent_client&diff=41533Talk:RTorrent - commandline bittorrent client2008-05-17T23:30:36Z<p>Skorpan: Talk:RTorrent - commandline bittorrent client moved to Talk:RTorrent: I can't see why we'd use that long name.</p>
<hr />
<div>#REDIRECT [[Talk:RTorrent]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Talk:RTorrent&diff=41532Talk:RTorrent2008-05-17T23:30:36Z<p>Skorpan: Talk:RTorrent - commandline bittorrent client moved to Talk:RTorrent: I can't see why we'd use that long name.</p>
<hr />
<div>== Thanks ==<br />
<br />
I would like to thank the people that corrected my spelling and grammar mistakes. Also, I know some of the commands in the wiki are noobish but it helps beginners learn new things(like the nano commands for example and pacman -Sy for updates). [[User:Azimuth|Azimuth]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=RTorrent_-_commandline_bittorrent_client&diff=41531RTorrent - commandline bittorrent client2008-05-17T23:30:32Z<p>Skorpan: RTorrent - commandline bittorrent client moved to RTorrent: I can't see why we'd use that long name.</p>
<hr />
<div>#REDIRECT [[RTorrent]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=RTorrent&diff=41530RTorrent2008-05-17T23:30:32Z<p>Skorpan: RTorrent - commandline bittorrent client moved to RTorrent: I can't see why we'd use that long name.</p>
<hr />
<div>[[Category:Internet and Email (English)]]<br />
[[Category:Utilities (English)]]<br />
[[Category:HOWTOs (English)]]<br />
[[Category:Audio/Video (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|Español|RTorrent - cliente de bittorrent en línea de órdenes}}<br />
{{i18n_links_end}}<br />
<br />
= RTorrent =<br />
<br />
RTorrent is a very simple, elegant and ultra-light bittorent client. It is written in C++ and uses ncurses, so it is completely text based and runs entirely in a console. RTorrent is ideal for low-end systems and with the addition of GNU Screen and openssh it is convenient as a remote bittorrent client. <br />
<br />
== Installing ==<br />
<br />
<pre><br />
pacman -S rtorrent<br />
</pre><br />
<br />
== Configuring ==<br />
<br />
Before running RTorrent, the first step is to copy the default configuration file which is available at the RTorrent [http://libtorrent.rakshasa.no/browser/trunk/rtorrent/doc/rtorrent.rc?rev=1027&format=raw project page] and save the file as .rtorrent.rc into your home directory. <br />
<br />
Once the file has been saved, open it with your preferred text editor and make any necessary changes. Simply uncomment the options you wish to enable/utilize. For more detailed information on the options available, visit [http://libtorrent.rakshasa.no/wiki/RTorrentCommonTasks RTorrent Common Tasks]<br />
<br />
=== Recommended Configuration ===<br />
<br />
These values in the following are entirely subjective and dependent upon your own system. To find the optimal settings for you to use, visit the following website and follow the instructions: [http://torrentfreak.com/optimize-your-BitTorrent-download-speed Optimize Your BitTorrent Download Speed]<br />
<br />
<pre><br />
# Maximum and minimum number of peers to connect to per torrent.<br />
#min_peers = 40<br />
max_peers = 52<br />
<br />
# Same as above but for seeding completed torrents (-1 = same as downloading)<br />
#min_peers_seed = 10<br />
max_peers_seed = 52<br />
<br />
# Maximum number of simultanious uploads per torrent.<br />
max_uploads = 8<br />
<br />
# Global upload and download rate in KiB. "0" for unlimited.<br />
download_rate = 200<br />
upload_rate = 28<br />
</pre><br />
<br />
This option below will determine where your torrents data will be saved. Change the default save directory to whatever you wish to use. Be sure to enter the absolute path; there is an odd bug with RTorrent ''sometimes'' does not respect relative paths (i.e. ~/torrents):<br />
<br />
<pre><br />
# Default directory to save the downloaded torrents.<br />
directory = /home/[user]/torrents/<br />
</pre><br />
<br />
This option will allow RTorrent to save the progess of your torrents. Be sure to create a directory called .session (simply run as normal user:''mkdir ~/.session''):<br />
<br />
<pre><br />
# Default session directory. Make sure you don't run multiple instance<br />
# of rtorrent using the same session directory. Perhaps using a<br />
# relative path?<br />
session = /home/[user]/.session/<br />
</pre><br />
<br />
The following option will have RTorrent "watch" a particular directory for new .torrent files. Using your browser, when you find a .torrent file you would like to download, just save the file into this directory and RTorrent will automatically start the torrent. Be sure to create the directory that will be watched (simply run as normal user:''mkdir ~/watch''): <br />
<br />
<pre><br />
# Watch a directory for new torrents, and stop those that have been<br />
# deleted.<br />
#schedule = watch_directory,5,5,load_start=./watch/*.torrent<br />
#schedule = untied_directory,5,5,stop_untied=<br />
schedule = watch_directory,5,5,load_start=/home/[user]/watch/*.torrent<br />
schedule = untied_directory,5,5,stop_untied=<br />
schedule = tied_directory,5,5,start_tied=<br />
</pre><br />
<br />
This option below will stop RTorrent from downloading any further when disk space is low. This is particuarly useful with a [http://en.wikipedia.org/wiki/Seedbox Seedbox] where disk space is quite limited. Change the value as you like: <br />
<br />
<pre><br />
# Close torrents when diskspace is low.<br />
schedule = low_diskspace,5,60,close_low_diskspace=100M<br />
</pre><br />
<br />
This option will set what port to use for listening. It is recommended to use a port that is higher than 49152. RTorrent allows the use of a single port rather than a range; a single port rather than an actual range is recommended.<br />
<br />
<pre><br />
# Port range to use for listening.<br />
port_range = 49164-49164<br />
</pre><br />
<br />
The following option allow for a hash check whenever a torrent is complete or whenever RTorrent is restarted. This will make sure there are no errors with your acquired/seeding files. <br />
<br />
<pre><br />
# Check hash for finished torrents. Might be usefull until the bug is<br />
# fixed that causes lack of diskspace not to be properly reported.<br />
check_hash = yes<br />
</pre><br />
<br />
The following option allows for the enabling of encryption. This is very important to enable, if not for yourself, but for others in the torrent swarm; people might need to obscure their bandwidth usage from their ISP. Does not hurt you to enable even if you do not need such protection. More information: [http://en.wikipedia.org/wiki/BitTorrent_protocol_encryption Bittorrent Protocol Encryption]<br />
<br />
<pre><br />
# Encryption options, set to none (default) or any combination of the following:<br />
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext<br />
#<br />
# The example value allows incoming encrypted connections, starts unencrypted<br />
# outgoing connections but retries with encryption if they fail, preferring<br />
# plaintext to RC4 encryption after the encrypted handshake<br />
#<br />
# encryption = allow_incoming,enable_retry,prefer_plaintext<br />
encryption = allow_incoming,try_outgoing,enable_retry<br />
</pre><br />
<br />
The following is for DHT support. If you use public trackers, you'll want to enable DHT to acquire more peers. If you use only private trackers, '''do not enable DHT''' as this will reduce your speeds and can create a privacy risk. Some private trackers will even warn you if you use DHT. <br />
<br />
<pre><br />
# Enable DHT support for trackerless torrents or when all trackers are down.<br />
# May be set to "disable" (completely disable DHT), "off" (do not start DHT),<br />
# "auto" (start and stop DHT as needed), or "on" (start DHT immediately).<br />
# The default is "off". For DHT to work, a session directory must be defined.<br />
# <br />
# dht = auto<br />
<br />
# UDP port to use for DHT. <br />
# <br />
# dht_port = 6881<br />
<br />
# Enable peer exchange (for torrents not marked private)<br />
#<br />
# peer_exchange = yes<br />
</pre><br />
<br />
Be sure to forward the proper port(s) with your router if you use one. A decent guide per router make/model can be found [http://portforward.com/english/routers/port_forwarding/routerindex.htm here].<br />
<br />
== Controls ==<br />
<br />
RTorrent relies exclusively on keyboard shortcuts for user input.<br />
A complete guide is available on the main site: [http://libtorrent.rakshasa.no/wiki/RTorrentUserGuide RTorrent User Guide]<br />
<br />
Here are the basics for quick reference:<br />
<br />
*Control-q : closes RTorrent, done twice makes the program shutdown.<br />
*Left arrow : returns to the previous screen.<br />
*Right arrow : goes to the next screen.<br />
*a|s|d : increase global upload speed about 1|5|50 KB/s<br />
*A|S|D : increase global download speed about 1|5|50 KB/s<br />
*z|x|c : decrease global upload speed about 1|5|50 KB/s<br />
*Z|X|C : decrease global download speed about 1|5|50 KB/s<br />
*Control-S : starts download<br />
*Control-D : pauses and resumes the active download<br />
*+ or - : changes the download priority of selected torrent.<br />
*Backspace : adds the specified .torrent. After pressing this button write full path or URL of .torrent file. You can use Tab and other tricks from bash.<br />
<br />
== Use RTorrent with Screen ==<br />
<br />
Screen is a program that will allow CLI applications to be run in the background and without X running. <br />
<br />
To install:<br />
<br />
<pre><br />
pacman -S screen<br />
</pre><br />
<br />
and then copy screenrc to your home directory as normal user:<br />
<br />
<pre><br />
cp /etc/screenrc ~/.screenrc<br />
</pre><br />
<br />
To have RTorrent always start with screen, add the following to your .screenrc file:<br />
<br />
<pre><br />
screen -t rtorrent rtorrent <br />
</pre><br />
<br />
To start screen + RTorrent, simply run ''screen'' from a terminal. Control-D-A will detach screen and running ''screen -raAd'' will open screen again. <br />
<br />
== Additional Tips ==<br />
<br />
*To use RTorrent with a tracker that uses https, do the following as root:<br />
<br />
<pre><br />
cd /etc/ssl/certs<br />
wget --no-check-certificate https://www.geotrust.com/resources/root_certificates/certificates/Equifax_Secure_Global_eBusiness_CA-1.cer<br />
mv Equifax_Secure_Global_eBusiness_CA-1.cer Equifax_Secure_Global_eBusiness_CA-1.pem<br />
c_rehash<br />
</pre><br />
<br />
And from now on run RTorrent with:<br />
<br />
<pre><br />
rtorrent -o http_capath=/etc/ssl/certs<br />
</pre><br />
<br />
Be sure to change .screenrc to reflect this change if you use screen:<br />
<br />
<pre><br />
screen -t rtorrent rtorrent -o http_capath=/etc/ssl/certs<br />
</pre><br />
<br />
<br />
*To create .torrent files, I recommend [http://aur.archlinux.org/packages.php?do_Details=1&ID=10635&O=0&L=0&C=0&K=mktorrent&SB=n&SO=a&PP=25&do_MyPackages=0&do_Orphans=0&SeB=nd mktorrent] for commandline interface or [http://benclarke.ca/rubytorrent/ RubyTorrent] for GUI. <br />
<br />
<br />
== Conclusion ==<br />
<br />
Rtorrent is a most excellent bittorrent client. Its stellar performance, low requirements and excellent configurability separate it from the competition.<br />
<br />
== See Also ==<br />
<br />
[[Screen Tips|Screen Tips]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=MPlayer&diff=41529MPlayer2008-05-17T23:29:43Z<p>Skorpan: /* Keybindings */</p>
<hr />
<div>'''MPlayer''' is the oh-so-popular movie player for Linux. MPlayer has support for pretty much every video and audio format out there and is hence very versatile, even though most people use it for viewing videos.<br />
<br />
==Installation==<br />
Type <code>pacman -S mplayer</code> in a shell as root. Done.<br />
<br />
==Additional installation tips==<br />
<br />
===More codecs===<br />
To get the most out of MPlayer, you should really consider installing the <code>codecs</code> package, which adds support for Windows codecs, Real9 and QuickTime (.mov). Type <code>pacman -S codecs</code> and you're all set.<br />
<br />
===Frontends/GUIs===<br />
There are quite a few GUIs for MPlayer if you really, really must use one. The <code>smplayer</code> package contains one of them and the <code>smplayer-themes</code> package provides themes for it.<br />
<br />
===Browser integration===<br />
<br />
If you want to let MPlayer control video viewing in your favorite web browser, try one of the following:<br />
<br />
====Firefox====<br />
<code>pacman -S mplayer-plugin</code><br />
<br />
====Konqueror====<br />
<code>pacman -S kmplayer</code> (also provides a complete frontend to MPlayer.)<br />
<br />
==Usage==<br />
<br />
===Configuration===<br />
System-wide configuration is located in <code>/usr/local/etc/mplayer/mplayer.conf</code>, whereas the user-local settings are stored in <code>~/.mplayer/config</code>.<br />
<br />
===Keybindings===<br />
<br />
:''This is a list of the most basic MPlayer keys.''<br />
<br />
{|<br />
! width=50 align=left | Key<br />
! align=left | Description<br />
|-<br />
| p<br />
| Toggle pause/play.<br />
|-<br />
| Space<br />
| Toggle pause/play.<br />
|-<br />
| Left<br />
| Seek backward ten seconds.<br />
|-<br />
| Right<br />
| Seek forward ten seconds.<br />
|-<br />
| Down<br />
| Seek backward one minute.<br />
|-<br />
| Up<br />
| Seek forward one minute.<br />
|-<br />
| <<br />
| Go back in the playlist.<br />
|-<br />
| ><br />
| Go forward in the playlist.<br />
|-<br />
| m<br />
| Mute the sound.<br />
|-<br />
| 0<br />
| Volume up.<br />
|-<br />
| 9<br />
| Volume down.<br />
|-<br />
| f<br />
| Toggle fullscreen mode.<br />
|-<br />
| o<br />
| Toggle OSD state.<br />
|-<br />
| j<br />
| Toggle subtitle visibility.<br />
|-<br />
| <code>I</code><br />
| Show filename.<br />
|-<br />
| 1, 2<br />
| Adjust contrast.<br />
|-<br />
| 3, 4<br />
| Adjust brightness.<br />
|}<br />
<br />
==External links==<br />
* [http://www.mplayerhq.hu/ Official MPlayer website]<br />
<br />
[[Category:Audio/Video (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=MPlayer&diff=41506MPlayer2008-05-17T16:44:18Z<p>Skorpan: </p>
<hr />
<div>'''MPlayer''' is the oh-so-popular movie player for Linux. MPlayer has support for pretty much every video and audio format out there and is hence very versatile, even though most people use it for viewing videos.<br />
<br />
==Installation==<br />
Type <code>pacman -S mplayer</code> in a shell as root. Done.<br />
<br />
==Additional installation tips==<br />
<br />
===More codecs===<br />
To get the most out of MPlayer, you should really consider installing the <code>codecs</code> package, which adds support for Windows codecs, Real9 and QuickTime (.mov). Type <code>pacman -S codecs</code> and you're all set.<br />
<br />
===Frontends/GUIs===<br />
There are quite a few GUIs for MPlayer if you really, really must use one. The <code>smplayer</code> package contains one of them and the <code>smplayer-themes</code> package provides themes for it.<br />
<br />
===Browser integration===<br />
<br />
If you want to let MPlayer control video viewing in your favorite web browser, try one of the following:<br />
<br />
====Firefox====<br />
<code>pacman -S mplayer-plugin</code><br />
<br />
====Konqueror====<br />
<code>pacman -S kmplayer</code> (also provides a complete frontend to MPlayer.)<br />
<br />
==Usage==<br />
<br />
===Configuration===<br />
System-wide configuration is located in <code>/usr/local/etc/mplayer/mplayer.conf</code>, whereas the user-local settings are stored in <code>~/.mplayer/config</code>.<br />
<br />
===Keybindings===<br />
:''This is a list of the most basic MPlayer keys.''<br />
{|<br />
! width=50 align=left | Key<br />
! align=left | Description<br />
|-<br />
| p<br />
| Toggle pause/play.<br />
|-<br />
| Space<br />
| Toggle pause/play.<br />
|-<br />
| Left<br />
| Seek backward ten seconds.<br />
|-<br />
| Right<br />
| Seek forward ten seconds.<br />
|-<br />
| Down<br />
| Seek backward one minute.<br />
|-<br />
| Up<br />
| Seek forward one minute.<br />
|}<br />
<br />
==External links==<br />
* [http://www.mplayerhq.hu/ Official MPlayer website]<br />
<br />
[[Category:Audio/Video (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=MPlayer&diff=41505MPlayer2008-05-17T16:37:12Z<p>Skorpan: </p>
<hr />
<div>'''MPlayer''' is the oh-so-popular movie player for Linux. MPlayer has support for pretty much every video and audio format out there and is hence very versatile, even though most people use it for viewing videos.<br />
<br />
==Usage==<br />
<br />
===Configuration===<br />
System-wide configuration is located in <code>/usr/local/etc/mplayer/mplayer.conf</code>, whereas the user-local settings are stored in <code>~/.mplayer/config</code>.<br />
<br />
===Keybindings===<br />
:''This is a list of the most basic MPlayer keys.''<br />
{|<br />
! width=50 align=left | Key<br />
! align=left | Description<br />
|-<br />
| p<br />
| Toggle pause/play.<br />
|-<br />
| Space<br />
| Toggle pause/play.<br />
|-<br />
| Left<br />
| Seek backward ten seconds.<br />
|-<br />
| Right<br />
| Seek forward ten seconds.<br />
|-<br />
| Down<br />
| Seek backward one minute.<br />
|-<br />
| Up<br />
| Seek forward one minute.<br />
|}<br />
<br />
==External links==<br />
* [http://www.mplayerhq.hu/ Official MPlayer website]<br />
<br />
[[Category:Audio/Video (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Mplayer&diff=41502Mplayer2008-05-17T16:35:25Z<p>Skorpan: Redirecting to MPlayer</p>
<hr />
<div>#REDIRECT[[MPlayer]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=MPlayer&diff=41500MPlayer2008-05-17T16:29:41Z<p>Skorpan: New page: '''MPlayer''' is the oh-so-popular movie player for Linux. MPlayer has support for pretty much every video and audio format out there and is hence very versatile, even though most people u...</p>
<hr />
<div>'''MPlayer''' is the oh-so-popular movie player for Linux. MPlayer has support for pretty much every video and audio format out there and is hence very versatile, even though most people use it for viewing videos.<br />
<br />
==Usage==<br />
<br />
===Configuration===<br />
System-wide configuration is located in <code>/usr/local/etc/mplayer/mplayer.conf</code>, whereas the user-local settings are stored in <code>~/.mplayer/config</code>.<br />
<br />
===Keybindings===<br />
:''This is a list of the most basic MPlayer keys.''<br />
{|<br />
! width=50 align=left | Key<br />
! align=left | Description<br />
|-<br />
| p<br />
| Toggle pause/play.<br />
|-<br />
| Space<br />
| Toggle pause/play.<br />
|-<br />
| Left<br />
| Seek backward ten seconds.<br />
|-<br />
| Right<br />
| Seek forward ten seconds.<br />
|-<br />
| Down<br />
| Seek backward one minute.<br />
|-<br />
| Up<br />
| Seek forward one minute.<br />
|}</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Music_Player_Daemon&diff=40460Music Player Daemon2008-04-29T09:45:04Z<p>Skorpan: Adding information about Last.fm scrobbling.</p>
<hr />
<div>[[Category:Audio/Video (English)]]<br />
[[Category:Daemons and system services (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|mpd}}<br />
{{i18n_entry|Polski|mpd (polski)}}<br />
{{i18n_entry|Nederlands|Music Player Daemon (Nederlands)}}<br />
{{i18n_entry|Русский|MPD - Music Player Daemon (Русский)}}<br />
{{i18n_entry|简体中文|MPD(简体中文)}}<br />
{{i18n_links_end}}<br />
<br />
==What is mpd?==<br />
mpd (Music Player Daemon) is an audio player that has a server-client architecture. mpd runs in the background as a daemon, manages playlists and a music database, and uses very few resources. In order to interface with it, you need a separate client. More information can be found on their [http://www.musicpd.org/ website]<br />
<br />
==Daemon Install Procedure==<br />
<br />
* Sync and install with pacman<br />
<br />
<pre><br />
pacman -S mpd<br />
</pre><br />
<br />
==Configure mpd==<br />
<br />
* Edit mpd.conf<br />
<pre><br />
cp /etc/mpd.conf.example /etc/mpd.conf<br />
$EDITOR /etc/mpd.conf<br />
</pre><br />
To make audio output actually work ensure that you have setup audio card and mixer correctly. See /var/log/mpd/mpd.error if it still doesn't work.<br />
<br />
When configuring the alsa or oss audio outputs, do not uncomment the 'device' or 'format' lines as this can cause problems with multiple sound playback. For example, this can prevent Mplayer from playing back sound while the mpd daemon is running, returning an audio error message stating the device is busy.<br />
<br />
* For more information about mpd configuration visit http://mpd.wikia.com/wiki/Configuration<br />
<br />
* Create the mpd database. (this can take a while depending on the size of your collection): <br />
<pre><br />
/etc/rc.d/mpd create-db<br />
</pre><br />
<br />
* Start mpd<br />
<pre><br />
/etc/rc.d/mpd start<br />
</pre><br />
<br />
* Edit '''/etc/rc.conf''' and add '''mpd''' to the list of daemons to start on bootup.<br />
<br />
'''Note:''' in case of permission problems when using ESD with mpd run this as root:<br />
<pre><br />
chsh -s /bin/true mpd<br />
</pre><br />
<br />
===Tips===<br />
<br />
To get rid of timeouts (i.e. when you paused music for long time) in gpmc and other clients uncomment and increase <code>connection_timeout</code> option in mpd.conf.<br />
<br />
If files and/or titles are shown in wrong encoding, uncomment and change <code>filesystem_charset</code> and <code>id3v1_encoding</code> options.<br />
Note that you cannot set encoding for ID3 v2 tags. To workaround this you may use [http://mpd.wikia.com/wiki/GenericDecoder#Generic_Tagreader external tag readers].<br />
<br />
If you want to use another computer to control mpd over a network, the <code>bind_to_address</code> option in mpd.conf will need to be set to either your IP address, or <code>any</code> if your IP address changes frequently. Remember to add mpd to the /etc/hosts.allow file to enable external access.<br />
<br />
==Client Install Procedure==<br />
<br />
Install a client program for mpd. Popular options are:<br />
<br />
'''mpc''' - Command Line Client (you'll probably want this one no matter what)<br />
<br />
'''ncmpc''' - NCurses Client (this one is very handy for running in a console) [http://hem.bredband.net/kaw/ncmpc/ Official Website of ncmpc]<br />
<br />
'''sonata''' - Python GTK+ Client [http://sonata.berlios.de/ Official Website of Sonata]<br />
<br />
'''gmpc''' - Gnome Client [http://www.sarine.nl/gmpc Official Website of gmpc]<br />
<br />
Install with<br />
pacman -Sy mpc<br />
pacman -Sy ncmpc<br />
pacman -Sy sonata<br />
pacman -Sy gmpc<br />
<br />
==Extra stuff==<br />
<br />
===Last.fm scrobbling===<br />
<br />
To scrobble your songs to [http://www.last.fm Last.fm] using MPD there are several alternatives. The easiest way, if you don't care about having to have a program window open all the time, is using Sonata which is a graphical frontend to MPD. It has built-in support for Last.fm scrobbling in its preferences.<br />
<br />
If you're not too keen on using Sonata (and having it open at all times) there is the very popular mpdscribble which acts as a background process which continuously fetches information about the status of MPD and quietly submits the information to MPD. It's fairly easy to configure and also easy to monitor using <code>/var/log/mpdscribble.log</code>.<br />
<br />
==External links==<br />
<br />
* [http://www.musicpd.org/ Official Web Site]<br />
* [http://mpd.wikia.com/wiki/Main_Page Official Wiki]<br />
* [http://mpd.wikia.com/wiki/Clients Sorted List of MPD Clients]<br />
* [http://www.musicpd.org/forum/ MPD forum]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=HP_Compaq_6510b&diff=39704HP Compaq 6510b2008-04-09T16:29:13Z<p>Skorpan: /* IPW3945 ABG wireless LAN */</p>
<hr />
<div>The HP 6510b is a compact yet powerful laptop with a high-resolution screen (if you pick the WXGA+ version). It has been labeled "Novel SuSE Enterprise certified" by HP, which should mean Linux runs fine on it.<br />
<br />
= Hardware specifications =<br />
* Intel Core 2 Duo T7100 / T7300<br />
* 2 GB of DDR2 533 Mhz SO-DIMM<br />
* 14.1" 1280x800 WXGA / 1440x900 WXGA+ TFT<br />
* Intel GMA965GM chipset with X3100 onboard GPU<br />
* IPW3945 a/b/g wireless LAN miniPCI with wireless hardware switch<br />
* Broadcom Tigon Gigabit LAN adapter<br />
* Infineon <span title="Trusted Platform Module" style="border-bottom:1px dotted">TPM</span><br />
* AuthenTec AES2501 fingerprint reader<br />
* built-in Bluetooth<br />
* cardreader (supporting SD, MemoryStick, ea.)<br />
* 4x USB 2.0<br />
* 1x FireWire 400 4-pin connector<br />
<br />
= Setup =<br />
<br />
== Intel Core 2 Duo ==<br />
Automatic frequency throttling and voltage adjustment can be enabled by loading the acpi_cpufreq module (this one is to be preferred over the Intel Speedstep ones; those will be deprecated soon). Install cpufreqd, which will pull in cpufreq-utils along with it. Set up both utilities, and add cpufreqd as a daemon to your DAEMONS=() array (in /etc/rc.conf, that is).<br />
<br />
<br />
== X3100 onboard GPU ==<br />
Feature-wise this is an awesome GPU. Opensource drivers that support 3D out of the box. However, it has a problem many of the Intel GPUs have: it will stick to VESA resolutions in the framebuffer. Since the only fitting resolution is 1024x768, that is what you'll when using a framebuffer (on boot, and in a command line environment). You can check what modes the GPU supports like this:<br />
[stijn@lysithea ~]$ cat /sys/class/graphics/fb0/modes<br />
U:1024x768p-75<br />
As you can see this is the only resolution. According to the uvesafb FAQ, if that's all you get, not even uvesafb can fix it up for you. For earlier chipsets (865 and 915 for example) tools like <tt>855resolution</tt> and <tt>915resolution</tt> are available, but the latter does not support the Intel G965M yet. However, there is a patch that fixes that :-). You can find an [http://zero9.org/pkgbuilds/915resolution/PKGBUILD adapted PKGBUILD] and a [http://zero9.org/pkgbuilds/915resolution/965-support.patch patch] here. This allows you to set the 1440x900 resolution, but one needs to dig far deeper into the system to get the system booting in that resolution, it seems.<br />
<br />
<br />
== IPW3945 ABG wireless LAN ==<br />
You have two choices for this card, either go with the present (and soon to be phased out) ieee80211 stack, or with the successor, the mac80211 stack. Both are present in the Arch kernel from 2.6.22 on. With the former you'll need Intel's [http://archlinux.org/packages/13310/ proprietary regulatory daemon] and [http://archlinux.org/packages/13309/ firmware], and - last but not least - [http://archlinux.org/packages/14046/ the driver]; the latter does not require any regulatory daemon, but still requires the [http://archlinux.org/packages/13312/ driver] and [http://archlinux.org/packages/13313/ firmware] to be installed.<br />
<br />
<b>Note:</b> each driver needs different firmware!<br />
<br />
The radio switch is hardware (it sits on the [[HP_Compaq_6510b#Tactile_strip|tactile strip]]), which is pretty convenient. Just touch it and the radio gets enabled. The switch could also be pretty shitty at times, as it will disable radio if you scrape away some dust from the tactile strip.<br />
<br />
== Broadcom NetLink BCM5787M Gigabit LAN ==<br />
No setup required, it just needs the tg3 module.<br />
<br />
<br />
== Suspend to RAM/disk ==<br />
I use pm-utils for this, which is pretty straightforward. X tends to hang once in a while after resuming, you can fix this (although not perfectly) by adding the following VBE Tool 'hack' to in /etc/pm/sleep.d/00hacks:<br><br />
#!/bin/bash<br />
case $1 in<br />
suspend)<br />
chvt 1<br />
vbetool vbestate save > /tmp/vbe<br />
;;<br />
resume)<br />
vbetool post<br />
vbetool vbestate restore < /tmp/vbe<br />
chvt 7<br />
;;<br />
esac<br />
If your screen remains blank, just try moving your mouse cursor, your screen should display just fine then.<br><br />
Alternatively, you could leave pm-utils alone and add a so-called [http://people.freedesktop.org/~hughsient/quirk/quirk-suspend-try.html quirk] to HAL's info file - 20-video-quirk-pm-hp.fdi to be specific, right below the line that says<br />
<match key="system.hardware.vendor" string="Hewlett Packard"><br />
<br />
This is the quirk I cooked up, following the instructions on the HAL page:<br />
<!--HP 6510b--><br />
<match key="system.hardware.product" contains="6510b"><br />
<merge key="power_management.quirk.vbe_post" type="bool">true</merge><br />
<merge key="power_management.quirk.vbestate_restore" type="bool">true</merge><br />
</match><br />
<br />
From hal-info 20071212 on HAL provides this quirk out of the box - no more fiddling needed :-). The HAL quirk means the vbetool lines are no longer necessary in the 00hacks file. You'll still need to change virtual terminal though to have X resume correctly!<br><br />
A third alternative would be to add some VbeTool options to your Xorg.conf, that seems to do the trick too. Haven't tried it myself, however.<br />
<br />
If you are using Xfce, you can suspend to RAM or disk from the Xfce logout dialog. You do need a modified session manager for this though. You can find the [ftp://nauseamedialis.org/stijn/pkgbuilds/xfce4-session/logout_dialog-suspend-hibernate.patch patch that adds that functionality] and the corresponding [ftp://nauseamedialis.org/stijn/pkgbuilds/xfce4-session/PKGBUILD PKGBUILD] online.<br />
<br />
Suspend to disk works fine with the 2.6.22 kernels (at least up to 2.6.22.9). Newer kernels do not seem able to suspend to disk without needing the <br />
highres=off nohz=off<br />
options in grub.conf.<br />
<br />
<br />
== FireWire ==<br />
FireWire is supported out of the box, however, for FireWire HD support, you might need to load the sbp2 module (that is, if you are using the common stack, since a new one is in the works and already present in the kernel). You have the common stack if you run stock Arch kernels.<br />
<br />
<br />
== AuthenTec AES2501 fingerprint reader ==<br />
As duly pointed out on the forums, fingerprint readers are more a threat to your privacy than a safeguard. Your fingerprints (unless you are paranoid and type with gloves on) are likely to be all over your keyboard, rendering the 'security' purpose of this device useless. Keep this in mind if you intend to use the reader as a replacement for your password; fingerprints can be duplicated easily with basic stuff (graphite ea.).<br><br />
There is a utility called [http://reactivated.net/fprint/wiki/Main_Page fprint] available, together with a libfprint library it depends on. Both are packaged for Arch Linux. The fprint program is still called fprint_demo for the moment, but it works :-).<br />
Integration with the login manager seems possible - for that you'll need amongst others the pam_fprint module installed (find a PKGBUILD [http://aur.archlinux.org/packages/pam_fprint/pam_fprint/PKGBUILD here]). Afer installing the package, run<br />
pam_fprint_enroll<br />
and follow the instructions to scan the finger you want to use for authentication. The next step is to configure PAM. First edit /etc/pam.d/login, and make the first lines look like this:<br />
#%PAM-1.0<br />
auth required pam_securetty.so<br />
auth requisite pam_nologin.so<br />
auth sufficient pam_fprint.so<br />
auth required pam_unix.so nullok<br />
auth required pam_tally.so onerr=succeed file=/var/log/faillog<br />
This will make PAM accept a successful fingerprint scan as a valid login token, if the scan fails, it will fall back to a password. From this moment on, you'll be able to log on with a scan on a tty - enter your username, press Enter, and scan the finger you told pam_fprint_enroll to use as default. Voilà :-).<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=36134 On the forum] you can also find a topic that covers setting up your fingerprint reader with PAM and SLiM, but this is with the aes2501 kernelspace driver.<br />
<br />
== Tactile strip ==<br />
This laptop sports a fancy tactile strip, providing some extra buttons as well as volume control (toggling mute and changing volume). I have not tried yet to get [http://people.freedesktop.org/~hughsient/quirk/quirk-keymap-index.html hal working for my multimedia keys] yet, the present solution works fine. Enter [[Extra_Keyboard_Keys#The_Keytouch_Program|keytouch]]: The HP NC6320 settings (pre-supplied by keytouch) seem to work just fine for muting & adjusting the volume. The 'Help' key (left to the radio switch) fires up your DE's help center if everything goes well, the button to the right is recognised too (you have to configure it though ;-)).<br />
As a fancy plus, you'll get a nice OSD when you mute/unmute or change volume.<br />
<br />
== lspci output ==<br />
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)<br />
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c)<br />
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03)<br />
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)<br />
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)<br />
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)<br />
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)<br />
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)<br />
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)<br />
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)<br />
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)<br />
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)<br />
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)<br />
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)<br />
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)<br />
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)<br />
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)<br />
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)<br />
02:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b6)<br />
02:04.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 02)<br />
10:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)<br />
18:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02)<br />
<br />
<br />
== lsusb output ==<br />
Bus 007 Device 001: ID 0000:0000 <br />
Bus 006 Device 001: ID 0000:0000 <br />
Bus 005 Device 001: ID 0000:0000 <br />
Bus 004 Device 001: ID 0000:0000 <br />
Bus 003 Device 003: ID 08ff:2580 AuthenTec, Inc. <br />
Bus 003 Device 001: ID 0000:0000 <br />
Bus 002 Device 001: ID 0000:0000 <br />
Bus 001 Device 003: ID 03f0:171d Hewlett-Packard <br />
Bus 001 Device 001: ID 0000:0000<br />
<br />
The AuthenTec device is the fingerprint reader, the Hewlett-Packard one is the Bluetooth module.<br />
<br />
= Issues =<br />
People running kernel 2.6.23 on this laptop experience hard lockups when they close the laptop lid. 2.6.22 does not have this problem. It seems also 6710b owners are affected.<br />
<br />
This is due to a fix in the ACPI video driver in 2.6.23; however, this messes things up for some hardware... You can fix it by putting this in rc.local:<br />
echo 1 > /proc/acpi/video/*/DOS<br />
More info on this 'fix' can be found on [http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=commitdiff;h=a21101c46ca5b4320e31408853cdcbf7cb1ce4ed here]. It seems this behaviour might be changed again with 2.6.24 (before 2.6.23 the value use to be 1 by default), but until it hits stable there is of course no certainty about that :-).<br />
<br />
<br />
[[Category:Laptops (English)]]</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Fonts&diff=35399Fonts2008-01-22T19:02:40Z<p>Skorpan: /* Reset your font configuration: */ Error!</p>
<hr />
<div>[[Category:Fonts (English)]]<br />
[[Category:Graphics and DTP (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{Article summary start}}<br />
{{Article summary text|Covers the installation and use of fonts on Arch Linux.}}<br />
{{Article summary heading|Available in languages}}<br />
{{i18n_entry|English|Fonts}}<br />
{{i18n_entry|繁體中文|Fonts 字型}}<br />
{{Article summary heading|Legal}}<br />
{{Article summary text|Certain font packages may impose ''some'' legal limitations.}}<br />
{{Article summary heading|Related articles}}<br />
{{Article summary wiki|MS Fonts}}<br />
{{Article summary wiki|Xorg Font Configuration}}<br />
{{Article summary end}}<br />
<br />
= Introduction =<br />
A standard ArchLinux desktop installation provides an excellent font support,<br />
with the latest stable versions of the X.org X server, freetype2 (with bytecode interpreter enabled) and fontconfig. For more information on font configuration please see: '''[[Xorg Font Configuration | Font Configuration]]<br />
'''<br />
== Different Kinds of Fonts ==<br />
There exists different kinds of fonts for Linux.<br />
<br />
* bitmap fonts (.pcf .bdf .pcf.gz .bdf.gz)<br />
<br />
* PostScript fonts (.pfa .pfb) <br>''(pfa: ascii format; pfb: binary format)''<br />
<br />
* TrueType/OpenType fonts (.ttf) <br>''(OpenType fonts with quadratic outlines have also .ttf suffix)''<br />
<br />
* PostScript flavored OpenType fonts (.otf)<br />
<br />
* TeX bitmap fonts (.pk) <br>''(usually automatically generated from the METAFONT source .mf)''<br />
<br />
* TeX virtual fonts (.vf)<br />
<br />
== Installing fonts ==<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|Adding fonts}}<br />
{{i18n_entry|简体中文|添加字体}}<br />
{{i18n_entry|Česky|Přidání fontů}}<br />
{{i18n_links_end}}<br />
<br />
Adding fonts in modern Linux system is much easier than before. Here I try to post a short tip aiming to make it more understanding by average users.<br />
First thing must be where I should put fonts inside. Usually you should put them under:<br />
* /usr/share/fonts<br />
* /usr/X11R6/lib/X11/fonts<br />
This will make everybody on the system to be able to use them, however it requires root privileges. Copying them into: <br />
* ~/.fonts<br />
folder is a good idea too.<br />
<br />
Some font collections have been prepackaged for use in Arch Linux, search them by:<br />
<pre>pacman -Ss fonts</pre><br />
Among the packages available you will see<br />
<pre>extra/artwiz-fonts 1.3-1<br />
This is set of (improved) artwiz fonts.<br />
extra/ttf-ms-fonts 1.3-6<br />
Un-extracted TTF Fonts from Microsoft<br />
</pre><br />
Then if you want to install these two packages, do:<br />
<pre>pacman -S artwiz-fonts ttf-ms-fonts</pre><br />
This will install the fonts into <code>/usr/X11R6/lib/X11/fonts</code> dir.<br />
CJK (Chinese/Japanese/Korean) users are encouraged to install also ''ttf-arphic-uming'', ''ttf-arphic-ukai'' and ''ttf-fireflysung'' for a proper display.<br />
<br />
Another option is to use KDE Font Installer in the KDE Control Center. This seems to work flawlessly if you use KDE.<br />
<br />
You can also manually copy fonts into above three directories, but don't forget to run as root: <pre>fc-cache -vf</pre><br />
<br />
Mostly you are lucky to use them in your X windows environment like gnome, xfce4 or kde. However, some GTK1 or old applications don't support fontconfig. ''(Really? someone should check this and then fix it)'' You have run following commands in your fonts directory (in the terminal of course):<br />
<pre><br />
mkfontscale<br />
mkfontdir<br />
ln -s /usr/share/fonts/encodings/encodings.dir yourfontdirectory/encodings.dir <br />
</pre><br />
ex: if you-re using kde<br />
<pre><br />
ln -s /usr/share/fonts/encodings/encodings.dir ~/.fonts/<br />
</pre><br />
then usually you need restart X.<br />
<br />
If you want to share such fonts or keep from above manual operation, you can make an Arch package. Save the fonts you wish to install as a tar.bz2 and use a variation of the following PKGBUILD and .install to install them via ABS:<br />
<pre># PKGBUILD<br />
pkgname=fonts-extra<br />
pkgver=1.0<br />
pkgrel=1<br />
depends=('xfree86')<br />
pkgdesc=\"Fonts extra\"<br />
source=(fonts-extra.tar.bz2)<br />
install=fonts-extra.install<br />
build() {<br />
mkdir -p $startdir/pkg/usr/X11R6/lib/X11/fonts/local<br />
mv $startdir/src/*.ttf $startdir/pkg/usr/X11R6/lib/X11/fonts/local<br />
}<br />
</pre><br />
<pre># fonts-extra.install:<br />
# arg 1: the new package version<br />
post_install() {<br />
echo -n \"updating font cache... \"<br />
/usr/bin/fc-cache<br />
cd /usr/X11R6/lib/X11/fonts/local<br />
/usr/X11R6/bin/mkfontscale<br />
/usr/X11R6/bin/mkfontdir<br />
ln -s /usr/X11R6/lib/X11/fonts/encodings/encodings.dir /usr/X11R6/lib/X11/fonts/local/encodings.dir<br />
echo \"done.\"<br />
}<br />
<br />
# arg 1: the new package version<br />
# arg 2: the old package version<br />
post_upgrade() {<br />
post_install $1<br />
}<br />
<br />
# arg 1: the old package version<br />
pre_remove() {<br />
/bin/true<br />
}<br />
<br />
op=$1<br />
shift<br />
<br />
$op $*<br />
</pre><br />
<br />
<br />
= Font Packages in Archlinux =<br />
NB: This is a selective list, but it does also include most font packages from AUR.<br />
<br />
* Latin <br />
** [http://www.archlinux.org/packages/10296/ '''font-bh-ttf'''] - X.org Luxi fonts<br />
** [http://www.archlinux.org/packages/3722 '''ttf-cheapskate'''] - font collection from ''dustimo.com''<br />
** [http://www.archlinux.org/packages/9336 '''ttf-isabella'''] - Historic ''Isabella font''<br />
** [http://www.archlinux.org/packages/9337 '''ttf-junicode'''] - Junius font containing almost complete medieval latin script glyphs<br />
** [http://www.archlinux.org/packages/961 '''ttf-ms-fonts'''] - Un-extracted Fonts from ''Microsoft''<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=5418 '''unsupported/ttf-ms-fonts-lic'''] - Alternative to the above<br />
<br />
* Unicode (multiscript)<br />
** [http://www.archlinux.org/packages/11883/ '''ttf-dejavu'''] - DejaVu fonts, extension of Bitstream Vera<br />
** [http://www.archlinux.org/packages/9340/ '''ttf-mph-2b-damase'''] - Covers full plane 1 and several scripts<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=3856 '''unsupported/ttf-sil-fonts'''] - Gentium, Charis, Doulos, Andika and Abyssinica from SIL<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6608 '''unsupported/ttf-linux-libertine'''] - Replacement for Times New Roman<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=3673 '''unsupported/ttf-freefont'''] - ''freefont'' (clones of Times, Helvetica and Courier with large Unicode support but unequal quality)<br />
<br />
* Cyrillic<br />
** See category 'Unicode' above<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6265 '''unsupported/ttf-arhangai'''] - Mongolian Cyrillic<br />
<br />
* Chinese + Japanese + Korean<br />
** [http://www.archlinux.org/packages/6831 '''ttf-arphic-ukai'''] - ''Kaiti'' (brush stroke) unicode font (enabling anti-aliasing suggested)<br />
** [http://www.archlinux.org/packages/6832 '''ttf-arphic-uming'''] - ''Mingti'' (printed) unicode font<br />
** [http://www.archlinux.org/packages/10092 '''ttf-fireflysung'''] - ''New Sung'' font <br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6792 '''unsupported/acrofont-cht'''] - Traditional Chinese font packs for Adobe Acrobat Reader 7.0.8<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6794 '''unsupported/acrofont-cjk'''] - CJK font packs for Adobe Acrobat Reader 7.0.8<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6398 '''unsupported/acroread7-chs'''] - Simplified Chinese font for Adobe Acrobat Reader 7 <br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6267 '''usupported/ttf-kochi-substitute'''] - High quality Japanese TrueType fonts<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6268 '''usupported/ttf-sazanami'''] - Another set of high quality Japanese fonts<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6266 '''usupported/ttf-baekmuk'''] - collection of Korean TrueType fonts<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6264 '''unsupported/ttf-alee'''] - Set of free Hangul truetype fonts<br />
<br />
* Arabic<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=4633 '''unsupported/ttf-sil-arabic'''] - two excellent Unicode Arabic fonts from SIL<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=3680 '''unsupported/arabeyes-fonts'''] - collection of free Arabic fonts<br />
<br />
* Hebrew<br />
** [http://www.archlinux.org/packages/12690/ '''culmus'''] - nice collection of free Hebrew fonts<br />
<br />
* Indic <br />
** [http://www.archlinux.org/packages/6071 '''ttf-freebanglafont'''] - font for Bangla <br />
** [http://www.archlinux.org/packages/6742 '''ttf-indic-otf'''] - Indic Opentype Fonts collection (containing ttf-freebanglafont)<br />
<br />
* Thai <br />
** [http://www.archlinux.org/packages/9331 '''ttf-thai'''] - font covering glyphs for thai<br />
<br />
* Khmer <br />
** [http://www.archlinux.org/packages/9338 '''ttf-khmer'''] - font covering glyphs for khmer language<br />
<br />
* Braille <br />
** [http://www.archlinux.org/packages/9339 '''ttf-ubraille'''] - font containing symbols for ''braille'' (unicode)<br />
<br />
* Handwritten<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=2055 '''unsupported/aquafont'''] - Handwritten fixed-width TrueType font<br />
<br />
* Math fonts<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=6349 '''unsupported/ttf-mathematica''']<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=7005 '''unsupported/ttf-mathematica4.1''']<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=7006 '''unsupported/ttf-mathtype''']<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=2100 '''unsupported/ttf-computer-modern-fonts''']<br />
<br />
* “Programmer's fonts” (for coding and terminal display)<br />
** [http://aur.archlinux.org/packages.php?do_Details=1&ID=4809 '''terminus-font''']<br />
** Try also DejaVu Sans Mono (from package [http://www.archlinux.org/packages/11883/ '''ttf-dejavu''']), Lucida Typewriter (included in package [http://www.archlinux.org/packages/11383/ '''jre''']) or the beautiful [http://aur.archlinux.org/packages.php?do_Details=1&ID=12559 '''Inconsolata'''].<br />
<br />
= Best fonts for terminal =<br />
<br />
The best fonts for a terminal depends on what terminal emulator you are using and what features it supports. For example, it even depends on how your fonts.dir looks, as sometimes fonts get installed incorrectly. It also depends on how you have configured your X Server, if you use freetype2 or freetype1, if you use the autohinter with the bytecode interpreter compiled into freetypeN, if you have compiled in the BI but doesn't use the autohinter, if you have not compiled in the BI and use the autohinter, if you have not compiled in the BI but uses the autohinter, etc.<br />
<br />
A top favorite of some Arch Linux users is [http://www.is-vn.bg/hamster/jimmy-en.html Terminus] (in community as "terminus-font").<br />
<br />
Some other fonts to try out:<br />
<br />
*Lucida Typewriter<br />
*Andale Mono<br />
*Bitstream Vera Mono<br />
*Courier<br />
*Terminal<br />
*Test<br />
*Gamov<br />
*default8x16<br />
*monospace<br />
*Liberation Mono<br />
<br />
Example how to use Terminus:<br />
<pre><br />
xterm -bg black -fg gray -fn -xos4-terminus-medium-r-normal--14-140-72-72-c-80-iso8859-1<br />
xterm -bg black -fg gray -fn -xos4-terminus-bold-r-normal--14-140-72-72-c-80-iso8859-1<br />
</pre><br />
<br />
= Fonts in virtual console =<br />
Default font in virtual console can display only ASCII characters. If you use other characters you can change the ''CONSOLEFONT'' and ''CONSOLEMAP'' settings in your ''/etc/rc.conf'' file. Different fonts can be found in ''/usr/share/kbd/consolefonts'' directory and key maps can be found in the subdirectories of ''/usr/share/kbd/keymaps''.<br />
<br />
=== Examples ===<br />
For displaying characters like "č ć ž đ š" use lat2-16.psfu.gz font:<br />
CONSOLEFONT="lat2-16.psfu.gz"<br />
Also, don't forget to set the proper key map, in this case:<br />
CONSOLEMAP="8859-2"<br />
= Beautify Fonts for LCD in X =<br />
This method of beautifying fonts has been tested with GNOME/Xfce/KDE.<br />
<br />
===Remove Packages:===<br />
pacman -Rd cairo libxft freetype2<br />
===Install Packages===<br />
Install the *-lcd libraries:<br />
pacman -S cairo-lcd libxft-lcd<br />
<br />
Install the package freetype2-lcd from [http://aur.archlinux.org/packages.php AUR] <br />
<br />
makepkg -ci /full/path/freetype2-lcd-*.pkg.tar.gz<br />
<br />
===Reset your font configuration:===<br />
:''This section '''failed''' for me! <code>fontconfig</code> depends on <code>freetype2</code> which conflicts with <code>freetype2-lcd</code>!''<br />
As root: <br />
rm /etc/fonts/conf.d/*<br />
pacman -S fontconfig<br />
<br />
Set the FreeType autohinter. As root :<br />
ln -s /etc/fonts/conf.avail/10-autohint.conf /etc/fonts/conf.d/10-autohint.conf<br />
<br />
Restart X11 (ctrl+alt+backspace)<br />
<br />
At this point if you think fonts look too bold, modify the fonts configuration file: edit (or create if it doesn't exist yet) the file ~/.fonts.conf with the following content:<br />
<br />
<?xml version="1.0"?><br />
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"><br />
<fontconfig><br />
<!-- If the font is bold, turn off autohinting --><br />
<match target="font" ><br />
<test compare="more" name="weight"><br />
<const>medium</const><br />
</test><br />
<edit mode="assign" name="autohint"><br />
<bool>false</bool><br />
</edit><br />
</match><br />
</fontconfig><br />
<br />
=FAQ=<br />
<br />
'''Q. My fonts are too large or too small. The resolution seems wrong. My fonts are mis-shapen.'''<br />
<br />
A(1). Read the ''Display Size/DPI'' section of [[Xorg]] for configuration sample settings and formula.<br />
<br />
A(2). Get your proper resolution from a console, by typing:<br />
<br />
xdpyinfo | grep resolution<br />
<br />
Change the value to this in the Gnome font configurator. Restart X. Sometimes, the videocard gives bogus information to X. It may be better to settle on a value between 72-78 DPI for 1024x768 displays. 96 DPI is a good value for 1280x1024, but it depends on the exact resolution. I actually prefer 75 on my home machine, and the font sizes seem to be a bit more true to their proper sizes when this is set. In most cases, if the numbers don't match, you may use the following method.<br />
<br />
You may also opt to force X to start with a forced resolution. This may produce good results in some display modes. For example, you may use:<br />
<br />
startx -- -dpi 75<br />
<br />
This will force X to start in 75x75 DPI mode. You may change your Gnome font settings (From the menu: Applications/Desktop Preferences/Font) to 75 DPI and you should get a good match.<br />
<br />
If this worked well for you, you may edit your "startx" script to always force this option on startup. Edit the file "/usr/bin/startx" as root.<br />
<br />
Change the following line:<br />
<br />
defaultserverargs=""<br />
<br />
to...<br />
<br />
defaultserverargs="-dpi 75"<br />
<br />
'''Q. How do I install fonts?'''<br />
<br />
A. An easy way to install fonts is to drop them into your "$HOME/.fonts" directory and running "fc-cache". You can also perform a system-wide font installation by copying the fonts to "/usr/share/fonts" or another font directory (as long as it is listed in your "/etc/fonts/fonts.conf" file), and then performing the "fc-cache" command as root. You may also need to run "ttmkfdir" or "mkfontdir" as well.<br />
<br />
'''Q. The fonts in GNU Emacs are displayed as squares.'''<br />
<br />
A. You need to install the xorg-fonts-75dpi or xorg-fonts-100dpi package.<br />
<br />
<br />
'''Q. The fonts in OpenOffice.org look very bad.'''<br />
<br />
A. By default, OpenOffice.org for Linux ships with inferior LibFreetype libraries that are built directly into the code. In the past you could force it to link to the latest version of your LibFreetype libraries by setting the following in a script. But for now (Jan 2008), you can't do anything about it.<br />
<br />
export LD_PRELOAD=/usr/lib/xorg/modules/fonts/libfreetype.so<br />
<br />
'''Q. The OpenOffice.org menu font looks really bad. It doesn't use antialiasing either.'''<br />
<br />
A. This can be changed in the OpenOffice.org configurator. From the drop-down menu, select "Tools/Options/OpenOffice.org/Fonts". Check the box that says "Apply Replacement Table". Type "Andale Sans UI" in the font box (this may have to be input manually, if it doesn't appear in the drop-down menu) and choose your desired font for the "Replace With" option. Dropline users may prefer the system default, "Trebuchet MS". When selected, click the checkmark box. Then choose the "always" and "screen" options in the box below. Apply the changes, and your menu fonts should look great.<br />
<br />
'''Q. OpenOffice.org doesn't detect my TrueType fonts!'''<br />
<br />
A. Make sure that you add the appropriate entry in your /etc/X11/xorg.conf file that points your programs to the /usr/share/fonts/ directory.<br />
<br />
For example, here's a sample of an xorg.conf file<br />
<br />
Section "Files"<br />
RgbPath "/usr/share/X11/rgb"<br />
ModulePath "/usr/lib/xorg/modules"<br />
FontPath "/usr/share/fonts/misc"<br />
FontPath "/usr/share/fonts/75dpi"<br />
FontPath "/usr/share/fonts/100dpi"<br />
FontPath "/usr/share/fonts/TTF"<br />
FontPath "/usr/share/fonts/Type1"<br />
EndSection<br />
<br />
Another solution is to run the openoffice administration tool<br />
<br />
# /opt/openoffice/spadmin<br />
<br />
from which you can add fonts.<br />
<br />
'''Q. Mozilla and other programs can no longer access TrueType fonts on my system, and are reverting to ugly fonts instead.'''<br />
<br />
A. Make sure the "freetype" module is loaded in your /etc/X11/xorg.conf file and your /usr/share/fonts/TTF/fonts.dir lists all of the TrueType fonts you have installed.<br />
<br />
Try checking your "Files" section of your xorg.conf, and make sure that you have all (or most) of these directories listed.<br />
<br />
Section "Files"<br />
RgbPath "/usr/share/X11/rgb"<br />
ModulePath "/usr/lib/xorg/modules"<br />
FontPath "/usr/share/fonts/misc"<br />
FontPath "/usr/share/fonts/75dpi"<br />
FontPath "/usr/share/fonts/100dpi"<br />
FontPath "/usr/share/fonts/TTF"<br />
FontPath "/usr/share/fonts/Type1"<br />
EndSection<br />
<br />
Finally, go to the following font directories:<br />
<br />
/usr/share/fonts/TTF<br />
/usr/share/fonts<br />
<br />
Try deleting the "fonts.dir" and "fonts.scale" files in these directories. You may want to make backups first though. Run these commands to replace them.<br />
<br />
mkfontscale<br />
mkfontdir<br />
<br />
Make sure you restart X for the changes to come into effect.<br />
<br />
'''Q. What are some suggested font settings for Mozilla/Firefox?'''<br />
<br />
A. These are recommended for Firefox:<br />
<br />
<pre><br />
Proportional: Serif Size (pixels): 16<br />
Serif: Times New Roman<br />
Sans-serif: Arial<br />
Monospace: Courier New Size (pixels): 13<br />
Display resolution: System settings<br />
</pre><br />
<br />
*Note: Times New Roman may appear to be a non-TTF font. If this is the case, read above about how to fix this.<br />
<br />
I believe that the following are Dropline's Mozilla defaults (also recommended):<br />
<pre><br />
Proportional: Serif Size (pixels): 14<br />
Serif: Times New Roman<br />
Sans-serif: Verdana<br />
Cursive: Andale Mono<br />
Fantasy: Andale Mono<br />
Monospace: Courier New Size (pixels): 11<br />
Allow Documents to use other fonts: Enabled<br />
Display resolution: System settings<br />
</pre><br />
<br />
'''Q. Why do my Apps show squares when there should be arrows and the like?'''<br />
<br />
A. It may help to activate bitmap fonts. They are disabled by default.<br />
<br />
cd /etc/fonts/conf.d<br />
rm 10-bitmaps.conf<br />
ln -s yes-bitmaps.conf 10-bitmaps.conf<br />
cd -<br />
<br />
If you think your fonts look ugly now then consider to remove the following packages.<br />
<br />
pacman -Rs xorg-fonts-100dpi xorg-fonts-75dpi<br />
<br />
Read [http://bbs.archlinux.org/viewtopic.php?t=21250 here] and [http://bbs.archlinux.org/viewtopic.php?t=18425 here] for some background info.<br />
<br />
'''Q: I just upgraded via pacman -Syu and my fonts are all ugly'''<br />
<br />
<b>A: </b>There are several possible conflicting issues here. See these threads:<br />
<br />
1 - http://bbs.archlinux.org/viewtopic.php?t=866<br />
<br />
2 - http://bbs.archlinux.org/viewtopic.php?t=4975</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Apache_HTTP_Server&diff=34089Apache HTTP Server2007-12-24T18:55:40Z<p>Skorpan: Wikifying some of the code and clarifying some.</p>
<hr />
<div>[[Category:Networking (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|LAMP}}<br />
{{i18n_entry|Русский|LAMP (russian)}}<br />
{{i18n_entry|Česky|LAMP_(Česky)}}<br />
{{i18n_links_end}}<br />
<br />
===Apache, PHP, and MySQL===<br />
<br />
This document describes how to set up the Apache web server on an Arch Linux system. It also tells how to optionally install PHP and MySQL and integrate these in the Apache server.<br />
<br />
====Install Packages====<br />
<br />
# pacman -Sy<br />
# pacman -S apache<br />
# pacman -S php<br />
# pacman -S libxml2<br />
# pacman -S mysql<br />
<br />
If you'd like, you can install just apache, apache and php, or all three. This document assumes you will install all three, but if you wish, you may stop after any of the sections.<br />
<br />
====Configure Apache====<br />
<br />
* Add this line to <code>/etc/hosts</code> (if the file doesn't exist, create it):<br />
127.0.0.1 localhost.localdomain localhost<br />
'''Note:''' If you want a different hostname, append it to the end:<br />
127.0.0.1 localhost.localdomain localhost myhostname<br />
<br />
* Edit <code>/etc/rc.conf</code>: If you set a hostname in Step One, the HOSTNAME variable should be the same; otherwise, use "localhost":<br />
#<br />
# Networking<br />
#<br />
HOSTNAME="localhost"<br />
<br />
* Comment one module in Apache configuration<br />
# nano /etc/httpd/conf/httpd.conf<br />
<br />
LoadModule unique_id_module modules/mod_unique_id.so<br />
to<br />
#LoadModule unique_id_module modules/mod_unique_id.so<br />
<br />
* Run in terminal (as root):<br />
# /etc/rc.d/httpd start<br />
<br />
* Apache should now be running. Test by visiting <code>http://localhost/</code> in a web browser. It should display a simple Apache test page.<br />
<br />
* Edit <code>/etc/rc.conf</code> (to start Apache at boot):<br />
DAEMONS=(''... some daemons ...'' httpd)<br />
'''Or''' add this line to <code>rc.local</code>:<br />
/etc/rc.d/httpd start<br />
<br />
* If you want to use user directories (i.e. <code>~/public_html</code> on the machine is accessed as <code>http://localhost/~user/</code>) to be available on the web, uncomment the following lines in <code>/etc/httpd/conf/extra/httpd-userdir.conf</code>:<br />
UserDir public_html<br />
and<br />
<Directory /home/*/public_html><br />
AllowOverride FileInfo AuthConfig Limit Indexes<br />
Options MultiViews Indexes SymLinksIfOwnerMatch ExecCGI<br />
<Limit GET POST OPTIONS PROPFIND><br />
Order allow,deny<br />
Allow from all<br />
</Limit><br />
<LimitExcept GET POST OPTIONS PROPFIND><br />
Order deny,allow<br />
Deny from all<br />
</LimitExcept><br />
</Directory><br />
<br />
You must make sure that your home directory permissions are set properly so that Apache can get there. Your home directory and <code>~/public_html/</code> must be executable for others ("rest of the world"). This seems to be enough:<br />
$ chmod o+x ~<br />
$ chmod o+x ~/public_html<br />
<br />
There may be some other, more-secure ways of setting the permissions by creating a special group and allowing only Apache and you to enter there... You know how paranoid you are.<br />
<br />
====Configure PHP4 & PHP5====<br />
<br />
PHP is practically available out of the box now.<br />
<br />
* Uncomment this line in <code>/etc/httpd/conf/httpd.conf</code><br />
#LoadModule php5_module lib/apache/libphp5.so<br />
: then, for PHP4, simply substitute 4 for 5<br />
LoadModule php4_module lib/apache/libphp4.so<br />
<br />
* For PHP5 file handlers are already set up:<br />
<IfModule mod_php5.c><br />
DirectoryIndex index.php index.html<br />
AddType application/x-httpd-php .php<br />
AddType application/x-httpd-php-source .phps<br />
</IfModule><br />
<br />
DirectoryIndex index.html index.html.var<br />
<br />
: However, for PHP4 support you need to make the following changes:<br />
#<IfModule mod_php5.c><br />
DirectoryIndex index.php index.html index.html.var<br />
AddType application/x-httpd-php .php<br />
AddType application/x-httpd-php-source .phps<br />
#</IfModule><br />
<br />
#DirectoryIndex index.html index.html.var<br />
<br />
* Whether you use PHP4 or PHP5 remember to add a file handler for .phtml if you need it:<br />
DirectoryIndex index.php index.phtml index.html<br />
<br />
* If you want the libGD module, uncomment in <code>/etc/php/php.ini</code>:<br />
;extension=gd.so<br />
to<br />
extension=gd.so<br />
<br />
* If your <code>DocumentRoot</code> is outside of <code>/home/</code>, add it to <code>open_basedir</code> in <code>/etc/php/php.ini</code> as such:<br />
open_basedir = /home/:/tmp/:/usr/share/pear/:/path/to/documentroot<br />
<br />
* Restart the Apache service to make changes take effect (as root):<br />
# /etc/rc.d/httpd restart<br />
<br />
* Test PHP with a simple, but very informative script:<br />
<html><br />
<head><br />
<title>PHP Test Page</title><br />
</head><br />
<br />
<body><br />
This is Arch Linux, running PHP.<br />
<br />
<?php<br />
phpinfo();<br />
?><br />
</p><br />
</body><br />
</html><br />
<br />
Save this file as <code>test.php</code> and copy to <code>/home/httpd/html/</code> or to <code>~/public_html</code> if you permitted such a configuration. Also, remember to make it executable (<code>chmod o+x test.php</code>).<br />
<br />
* Test PHP: http://localhost/test.php or http://localhost/~myname/test.php<br />
<br />
====Setup MySQL support====<br />
<br />
Do these steps only if you want MySQL support.<br />
<br />
=====Initial Configuration=====<br />
<br />
* Edit <code>/etc/php/php.ini</code> (this is in <code>/usr/etc</code> on older systems) to uncomment the following line (<i>By removing <code>;</code></i>):<br />
<code>;extension=mysql.so</code><br />
* To configure your system either run <code>/etc/rc.d/mysqld start</code> as '''root''' or complete the following steps manually:<br />
* Add a group named <code>mysql</code>:<br />
# groupadd -g 89 mysql<br />
* Add the <code>mysql</code> user:<br />
# useradd -u 89 -g mysql -d /var/lib/mysql -s /bin/false mysql<br />
* <code>chown</code> the MYSQL root directory just in case&mdash;it may not exist yet:<br />
# chown -R mysql:mysql /var/lib/mysql<br />
* Install the database. If you only want run MySQL as root you don't need the <code>--user</code> option and <code>chown</code>:<br />
# mysql_install_db --datadir=/var/lib/mysql --user=mysql<br />
# chown -R mysql:mysql /var/lib/mysql<br />
* Run <code>/etc/rc.d/mysqld start</code> to start MySQL as a daemon or add <code>mysqld</code> to your <code>DAEMONS</code> in <code>/etc/rc.conf</code>.<br />
<br />
=====Further Configuration=====<br />
<br />
* Test MySQL (as root):<br />
# mysql<br />
<br />
* Create root password for MySQL (at terminal, as root):<br />
# mysqladmin -u root password 'roots_password'<br />
<br />
* Add <code>mysqld</code> to the list of daemons in <code>/etc/rc.conf</code> (as we did for <code>httpd</code> above):<br />
<br />
* To login to mysql, type (at terminal, ''hostname'' as used in <code>/etc/hosts</code>)<br />
# mysql -u root -h ''hostname'' -p<br />
<br />
* You can add minor privileged users for your web scripts by editing the tables found in the <code>mysql</code> database. You have to restart MySQL for changes to take effect. Don't forget to check the <code>mysql/users</code> table. If there's a second entry for root and your hostname is left with no password set, everybody from your host probably could gain full access. Perhaps see next section for these jobs.<br />
<br />
* You can get the "<code>error no. 2013: Lost Connection to mysql server during query</code>" message instantly whenever you try to connect to the MySQL daemon by TCP/IP. This is the TCP wrappers system (tcpd), which uses the <code>hosts_access(5)</code> system to allow or disallow connections.<br />
<br />
* If you're running into this problem, be sure to add this to your /etc/hosts.allow file:<br />
<br />
# mysqld : ALL : ALLOW<br />
# mysqld-max : ALL : ALLOW<br />
# and similar for the other MySQL daemons.<br />
<br />
* Notes: The examples above are the simplest case, telling tcpd to allow connections from anywhere. You may wish to use a more-appropriate choice of permissible sources instead of ALL. Just make sure that localhost and the IP address (numeric or DNS) of the interface by which you connect are specified.<br />
<br />
* You might also need to edit <code>/etc/my.cnf</code> and comment out the <code>skip-networking</code> line as such:<br />
<br />
skip-networking<br />
<br />
to<br />
<br />
#skip-networking</div>Skorpanhttps://wiki.archlinux.org/index.php?title=Ipw3945&diff=32636Ipw39452007-11-21T11:18:09Z<p>Skorpan: Added information about iwlwifi as an -- in my opinion better -- alternative.</p>
<hr />
<div>:'''''Note:''' Some people have trouble installing ipw3945. If you are experiencing a lot of difficulty using it, you can always try the new [[Wireless_Setup#ipw3945_and_ipw4965|iwlwifi]] instead.<br />
<br />
----<br />
<br />
This guide shows you, in a step-by-step manner, how to install the ipw3945 module and daemon, used for the Intel Pro Wireless 3945 chipset.<br />
<br />
==Intel Pro Wireless==<br />
The Intel Pro Wireless 3945ABG (ipw3945) chip can be found inside many laptops. This page will help you install, setup and troubleshoot the IPW module (ipw3945), daemon (ipw3945d) and firmware (ipw3945-ucode) for ArchLinux.<br />
<br />
==Verification==<br />
First, let us verify that you indeed do have the ipw3945 chip installed in your laptop. We will install the package 'pciutils' which can be found online in the pacman repository, or on the ArchLinux CD. In most cases, you already have this package installed.<br />
<br />
===Installing pciutils===<br />
To install pciutils from CDROM: create the mount point /mnt/cdrom, mount the cdrom to /mnt/cdrom, browse over to /mnt/cdrom/arch/pkg, and locate the 'pciutils-*.pkg.tar.gz' file, then install it using pacman.<br />
<br />
<pre><br />
# mkdir /mnt/cdrom<br />
# mount /dev/cdrom /mnt/cdrom<br />
# cd /mnt/cdrom/arch/pkg<br />
# ls pciutils*<br />
pciutils-2.2.4-2.pkg.tar.gz<br />
# pacman -U pciutils-2.2.4-2.pkg.tar.gz<br />
</pre><br />
<br />
To install pciutils from internet: use pacman to install it.<br />
<pre><br />
# pacman -S pciutils<br />
</pre><br />
<br />
===Using lspci to verify===<br />
To verify if you have the ipw3945 chip installed, run this command:<br />
<pre><br />
# lspci | grep 3945<br />
03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)<br />
#<br />
</pre><br />
<br />
As long as you see the network controller, you are good to go. The output will vary depending on your system configuration. If you don't see any output, then there is a hardware issue. Now that we are sure you have the ipw3945 wireless chip in your laptop, let's proceed to installation.<br />
<br />
==Installation==<br />
===.. using stock kernel (default)===<br />
We will start by installing the ipw3945 package, which contains the module, daemon and firmware pre-compiled for ArchLinux Stock Kernel<br />
<pre><br />
# pacman -S ipw3945<br />
</pre><br />
<br />
Make sure that you TURN ON YOUR WIRELESS SWITCH! At this point, you should be able to load the module, and start the daemon, like so:<br />
<pre><br />
# modprobe ipw3945<br />
# ipw3945d<br />
</pre><br />
<br />
And now, the daemon will run and start logging it's activities. We need to view these activities with 'dmesg', like so:<br />
<pre><br />
# dmesg | grep ipw<br />
ipw3945: Intel(R) PRO/Wireless 3945 Network Connection driver for Linux, 1.2.2d<br />
ipw3945: Copyright(c) 2003-2006 Intel Corporation<br />
ipw3945: Detected Intel PRO/Wireless 3945ABG Network Connection<br />
ipw3945: Detected geography ABG (11 802.11bg channels, 13 802.11a channels)<br />
</pre><br />
<br />
If you do not see the 'detected geography' line within 30 seconds of running the daemon, you will most likely need to compile a custom kernel (see below). If you do see the 'detected geography' line, skip the next chapter.<br />
<br />
===.. using custom kernel (troubleshoot)===<br />
So far, you've tried everything, but no luck. Well, the good news is that there is very little that can break the ipw3945 daemon. The problem is most likely the kernel not having what you need. Please note for the following part that you will need either the internet or a way to transfer files onto your laptop. When it is said that you need to install a package (e.g. wget), you need to either use pacman -S package, or download the .pkg.tar.gz file, and do pacman -U package.pkg.tar.gz. Let's get started on compiling our own kernel:<br />
<br />
Install wget<br />
<pre><br />
# pacman -S wget<br />
</pre><br />
<br />
Download the latest kernel from http://www.kernel.org/ by browsing over and located the 'latest stable version of the linux kernel'. You will be presented with a few options (F, V, Vi, C, Changelog), copy the 'F' link, download the file, and extract it:<br />
<pre><br />
# mkdir /usr/src<br />
# cd /usr/src<br />
# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.22.2.tar.bz2<br />
# tar xjf linux-2.6.22.2.tar.bz2<br />
</pre><br />
<br />
We will then browse into the extracted directory, and start the configuration process.<br />
<pre><br />
# cd linux-2.6.22.2<br />
# make oldconfig<br />
# make menuconfig<br />
</pre><br />
<br />
You will now be presented with a list of settings that you can enable/disable for your kernel compilation. Most importantly, you need to select your IDE/SATA chipset (also located in lspci) and for the ipw3945, you will need the following configurations:<br />
<br />
{{Box Kernel||<br />
<pre><br />
Networking ---><br />
Wireless ---><br />
<*> Improved wireless configuration API<br />
< > Generic IEEE 802.11 Networking Stack (mac80211)<br />
--- Generic IEEE 802.11 Networking Stack<br />
[ ] Enable full debugging output<br />
--- IEEE 802.11 WEP encryption (802.1x)<br />
<*> IEEE 802.11i CCMP support<br />
<*> IEEE 802.11i TKIP encryption<br />
<*> Software MAC add-on to the IEEE 802.11 network<br />
[ ] Enable full debugging output<br />
<*> RF switch subsystem support ---><br />
--- RF switch subsystem support<br />
<*> Input layer to the RF switch connector<br />
<br />
(optional, but recommended):<br />
Networking options ---><br />
< > The IPv6 Protocol<br />
</pre><br />
}}<br />
<br />
Once you have completed setting up your configuration, simply keep hitting exit until the program asks you to save your configuration, at which point you should select 'Yes'. You are now returned to the shell. Now, we will start the compiling of the kernel, modules, and installation of the modules.<br />
<br />
<pre><br />
# make bzImage<br />
# cp arch/i386/boot/bzImage /boot/kernel-2.6.22.2<br />
# make modules<br />
# make modules_install<br />
</pre><br />
<br />
After these, you simply need to reconfigure grub to load the new kernel<br />
<br />
<pre><br />
# nano /boot/grub/menu.lst<br />
</pre><br />
<br />
and add the following to the end of the file:<br />
<br />
<pre><br />
# Arch Linux Custom Kernel v2.6.22.2<br />
title Arch Linux [kernel-2.6.22.2]<br />
root (hd0,0)<br />
kernel /boot/kernel-2.6.22.2 root=/dev/sda1 ro<br />
</pre><br />
<br />
For the root (hd0,1) line, please copy it from the existing kernel in menu.lst.<br />
For 'root=/dev/sda2', please copy it from the existing kernel in menu.lst.<br />
Note you do not need the initrd line for custom kernels.<br />
<br />
Once you have edited menu.lst, save it with CTRL-X, then Y to save and exit.<br />
<br />
BOOT INTO YOUR NEW KERNEL NOW!<br />
<br />
Every module in linux needs to be built against the kernel sources of the running kernel in order to function properly (modules include nvidia and ipw3945). So what we will do is compile ipw3945 for our new kernel, but first, we must download it! Browser over to http://ipw3945.sourceforge.net/#downloads and download the latest version of ipw3945 module.<br />
<br />
<pre><br />
# cd /usr/src<br />
# wget http://downloads.sourceforge.net/ipw3945/ipw3945-1.2.2.tgz<br />
</pre><br />
<br />
Now browse over to http://bughost.org/ipw3945/ and download the latest version of the firmware and daemon.<br />
<br />
<pre><br />
# cd /usr/src<br />
# wget http://bughost.org/ipw3945/ucode/ipw3945-ucode-1.14.2.tgz<br />
# wget http://bughost.org/ipw3945/daemon/ipw3945d-1.7.22.tgz<br />
</pre><br />
<br />
Now we will extract, compile and install the ipw3945 module, firmware and daemon. Please, before proceeding, make sure you have the 'ipw3945' package uninstalled from your system for it will conflict with the latest version:<br />
<br />
<pre><br />
# pacman -Rsc ipw3945<br />
# cd /usr/src<br />
# tar xzf ipw3945-1.2.2.tgz<br />
# tar xzf ipw3945-ucode-1.14.2.tgz<br />
# tar xzf ipw3945d-1.7.22.tgz<br />
# cd ipw3945-ucode-1.14.2<br />
# mkdir /lib/firmware<br />
# cp ipw3945.ucode /lib/firmware<br />
# cd /usr/src<br />
# cd ipw3945d-1.7.22<br />
# cd x86<br />
# cp ipw3945d /sbin/<br />
# cd /usr/src<br />
# cd ipw3945-1.2.2<br />
# make<br />
# make install<br />
</pre><br />
<br />
At this point, the module, firmware and daemon have been setup. You can now attempt to load the module, then start the daemon:<br />
<br />
<pre><br />
# modprobe ipw3945<br />
# ipw3945d<br />
# dmesg | grep ipw<br />
ipw3945: Intel(R) PRO/Wireless 3945 Network Connection driver for Linux, 1.2.2d<br />
ipw3945: Copyright(c) 2003-2006 Intel Corporation<br />
ipw3945: Detected Intel PRO/Wireless 3945ABG Network Connection<br />
ipw3945: Detected geography ABG (11 802.11bg channels, 13 802.11a channels)<br />
</pre><br />
<br />
Voila! Everything works fine! Every time you need to use the wireless, simply load the module, and start the daemon. This process can be automated on every bootup (see below).<br />
<br />
==Setup==<br />
In this section, we will setup the module and daemon to automatically load on boot up.<br />
<pre><br />
# nano /etc/rc.conf<br />
</pre><br />
Simple add 'ipw3945' to the modules=() list, an add 'ipw3945d' to the daemons=() list. Note that you MUST add the ipw3945d daemon BEFORE the 'network' daemon.<br />
<br />
Congratulations! You should now have a fully functional Intel Wireless Pro card in your laptop! You will find that there is a new interface (eth#, or wlan#) located in ifconfig. You can double check everything worked by doing this:<br />
<br />
<pre><br />
# iwconfig<br />
eth1 IEEE 802.11g ESSID:""<br />
Mode:Managed Frequency:2.462 GHz Access Point: <br />
Bit Rate:54 Mb/s Tx-Power:14 dBm<br />
Retry limit:15 RTS thr:off Fragment thr:off<br />
Encryption key:A834-3CF5-EC85-EB2A-17E4-17A4-AD Security mode:open<br />
Power Management:off<br />
Link Quality=84/100 Signal level=-49 dBm Noise level=-50 dBm<br />
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0<br />
Tx excessive retries:0 Invalid misc:1844 Missed beacon:0<br />
</pre><br />
<br />
For more information on setting it up, please see <insert link to network setup here>. Enjoy!<br />
<br />
[[Category:Networking (English)]]</div>Skorpan