https://wiki.archlinux.org/api.php?action=feedcontributions&user=Vamp898&feedformat=atomArchWiki - User contributions [en]2024-03-28T18:59:30ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Cgit&diff=522534Cgit2018-05-22T16:03:02Z<p>Vamp898: /* Basic Configuration */ Config Example doesn't work for apache due to the alias</p>
<hr />
<div>{{Lowercase title}}<br />
[[Category:Version Control System]]<br />
[[ja:Cgit]]<br />
[http://git.zx2c4.com/cgit/ Cgit] is an attempt to create a fast web interface for the [[git]] version control system, using a built in cache to decrease pressure on the git server.<br />
<br />
==Installation==<br />
Install the {{Pkg|cgit}} package.<br />
<br />
To use cgit a [[:Category:Web server|web server]] must be installed on the system, such as [[Apache]].<br />
<br />
==Configuration of web server==<br />
===Apache===<br />
You may add the following either to the end of your {{ic|/etc/httpd/conf/httpd.conf}} file or place it in a separate file inside the {{ic|/etc/httpd/conf/extra/}} directory.<br />
ScriptAlias /cgit "/usr/lib/cgit/cgit.cgi/"<br />
Alias /cgit-css "/usr/share/webapps/cgit/"<br />
<Directory "/usr/share/webapps/cgit/"><br />
AllowOverride None<br />
Options None<br />
Require all granted<br />
</Directory><br />
<Directory "/usr/lib/cgit/"><br />
AllowOverride None<br />
Options ExecCGI FollowSymlinks<br />
Require all granted<br />
</Directory><br />
Make sure that the cgi module is being loaded in the {{ic|httpd.conf}} by uncommenting this line:<br />
LoadModule cgi_module modules/mod_cgi.so<br />
and restart {{ic|httpd.service}} to apply the changes.<br />
<br />
===Lighttpd===<br />
The following configuration will let you access cgit through http://your.server.com/git or http://your.server.com/cgit. The cgit url is not perfect (for example you will see "cgit.cgi" in all repos' url) but works.<br />
<br />
Create the file {{ic|/etc/lighttpd/conf.d/cgit.conf}}:<br />
server.modules += ( "mod_cgi", "mod_alias" )<br />
<br />
$HTTP["url"] =~ "^/cgit" {<br />
server.document-root = "/usr/share/webapps/"<br />
server.indexfiles = ("cgit.cgi")<br />
cgi.assign = ("cgit.cgi" => "")<br />
mimetype.assign = ( ".css" => "text/css" )<br />
}<br />
<br />
alias.url += (<br />
"/git" => "/usr/share/webapps/cgit/cgit.cgi",<br />
)<br />
$HTTP["url"] =~ "^/git" {<br />
cgi.assign = ( "" => "" )<br />
}<br />
And include this file in {{ic|/etc/lighttpd/lighttpd.conf}}:<br />
include "conf.d/cgit.conf"<br />
and restart lighttpd.<br />
<br />
====Lighttpd sub-domain====<br />
This alternative lighttpd configuration will serve Cgit on a sub-domain like git.example.com with optional SSL support, and rewrites creating nice permalinks: <br />
<br />
# GIT repository browser<br />
#$SERVER["socket"] == "127.0.0.1:443" {<br />
$SERVER["socket"] == "127.0.0.1:80" {<br />
#ssl.engine = "enable"<br />
#ssl.pemfile = "/etc/lighttpd/ssl/git.example.com.pem"<br />
<br />
server.name = "git.example.com"<br />
server.document-root = "/usr/share/webapps/cgit"<br />
<br />
index-file.names = ( "cgit.cgi" )<br />
cgi.assign = ( "cgit.cgi" => "/usr/share/webapps/cgit/cgit.cgi" )<br />
url.rewrite-once = (<br />
"^/([^?/]+/[^?]*)?(?:\?(.*))?$" => "/cgit.cgi?url=$1&$2",<br />
)<br />
}<br />
<br />
===Nginx===<br />
====Using fcgiwrap====<br />
<br />
The following configuration uses {{Pkg|fcgiwrap}} and will serve Cgit on a subdomain like {{ic|git.example.com}}.<br />
<br />
[[Start]] and [[enable]] {{ic|fcgiwrap.socket}}. Then, configure Nginx:<br />
<br />
{{hc|/etc/nginx/nginx.conf|2=<br />
worker_processes 1;<br />
<br />
events {<br />
worker_connections 1024;<br />
}<br />
<br />
http {<br />
include mime.types;<br />
default_type application/octet-stream;<br />
sendfile on;<br />
keepalive_timeout 65;<br />
gzip on;<br />
<br />
# Cgit<br />
server {<br />
listen 80;<br />
server_name ''git.example.com;''<br />
root /usr/share/webapps/cgit;<br />
try_files $uri @cgit;<br />
<br />
location @cgit {<br />
include fastcgi_params;<br />
fastcgi_param SCRIPT_FILENAME $document_root/cgit.cgi;<br />
fastcgi_param PATH_INFO $uri;<br />
fastcgi_param QUERY_STRING $args;<br />
fastcgi_param HTTP_HOST $server_name;<br />
fastcgi_pass unix:/run/fcgiwrap.sock;<br />
}<br />
}<br />
} }}<br />
<br />
====Using uwsgi====<br />
The following example will setup cgit using the native cgi plugin for uwsgi.<br />
<br />
First, install {{Pkg|uwsgi}} and {{Pkg|uwsgi-plugin-cgi}}.<br />
<br />
Add below server block to your configuration:<br />
<br />
{{hc|/etc/nginx/nginx.conf|<nowiki><br />
server {<br />
listen 80;<br />
server_name git.example.com;<br />
root /usr/share/webapps/cgit;<br />
<br />
# Serve static files with nginx<br />
location ~* ^.+(cgit.(css|png)|favicon.ico|robots.txt) {<br />
root /usr/share/webapps/cgit;<br />
expires 30d;<br />
}<br />
location / {<br />
try_files $uri @cgit;<br />
}<br />
location @cgit {<br />
gzip off;<br />
include uwsgi_params;<br />
uwsgi_modifier1 9;<br />
uwsgi_pass unix:/run/uwsgi/cgit.sock;<br />
}<br />
} <br />
</nowiki>}}<br />
<br />
Add a uwsgi configuration for cgit.<br />
<br />
{{hc|/etc/uwsgi/cgit.ini|2=<br />
[uwsgi]<br />
master = true<br />
plugins = cgi<br />
socket = /run/uwsgi/%n.sock<br />
uid = http<br />
gid = http<br />
procname-master = uwsgi cgit<br />
processes = 1<br />
threads = 2<br />
cgi = /usr/lib/cgit/cgit.cgi<br />
}}<br />
<br />
[[Enable]] and [[start]] the corresponding socket {{ic|uwsgi@cgit.socket}}.<br />
<br />
===Caddy===<br />
<br />
Install [[Caddy]] with the [https://jung-kurt.github.io/cgi/ caddy-cgi] plugin, for example {{aur|caddy-with-cgi}}. The following configuration uses the {{ic|except}} subdirective in the latest caddy-cgi plugin.<br />
<br />
{{hc|/etc/caddy/caddy.conf.d/cgit.conf|<br />
git.example.com {<br />
# other settings such as TLS, headers, ...<br />
root /usr/share/webapps/cgit<br />
cgi {<br />
match /<br />
exec /usr/share/webapps/cgit/cgit.cgi<br />
except /cgit.png /favicon.ico /cgit.css /robots.txt<br />
}<br />
}<br />
}}<br />
<br />
==Configuration of cgit==<br />
===Basic Configuration===<br />
Before you can start adding repositories you will first have to create the basic cgit configuration file at {{ic|/etc/cgitrc}}.<br />
<br />
#<br />
# cgit config<br />
#<br />
<br />
css=/cgit.css<br />
logo=/cgit.png<br />
<br />
# For Apache, use the following<br />
# css=/cgit-css/cgit.css<br />
# logo=/cgit-css/cgit.png<br />
<br />
# Following lines work with the above Apache config<br />
#css=/cgit-css/cgit.css<br />
#logo=/cgit-css/cgit.png<br />
<br />
# Following lines work with the above Lighttpd config<br />
#css=/cgit/cgit.css<br />
#logo=/cgit/cgit.png<br />
<br />
# if you do not want that webcrawler (like google) index your site<br />
robots=noindex, nofollow<br />
<br />
# if cgit messes up links, use a virtual-root. For example has cgit.example.org/ this value:<br />
virtual-root=/<br />
<br />
===Adding repositories===<br />
Now you can add your repos:<br />
<br />
#<br />
# List of repositories.<br />
# This list could be kept in a different file (e.g. '/etc/cgitrepos')<br />
# and included like this:<br />
# include=/etc/cgitrepos<br />
#<br />
<br />
repo.url=MyRepo<br />
repo.path=/srv/git/MyRepo.git<br />
repo.desc=This is my git repository<br />
<br />
# For a non-bare repository<br />
repo.url=MyOtherRepo<br />
repo.path=/srv/git/MyOtherRepo/.git<br />
repo.desc=That's my other git repository<br />
<br />
Or else, it is also possible to configure cgit to automatically search for the repo:<br />
<br />
scan-path=/srv/git/<br />
<br />
If you use the method above, add the descriptions to {{ic|.git/description}} file and add the following lines to show the author:<br />
<br />
{{hc|.git/config|2=<br />
[gitweb]<br />
owner = John Cena <john@riseup.net><br />
}}<br />
<br />
If you are coming from gitweb and want to keep the descriptions and owner information, then use:<br />
<br />
enable-git-config=1<br />
<br />
For detailed documentation about the available settings in this configuration file, please see the manpage ({{man|5|cgitrc}}).<br />
<br />
===Syntax highlighting===<br />
Cgit supports syntax highlighting when viewing blobs. To enable syntax highlighting, you have several options.<br />
<br />
====Using python-pygments====<br />
<br />
Install {{Pkg|python-pygments}} and add the filter in {{ic|/etc/cgitrc}}<br />
<br />
source-filter=/usr/lib/cgit/filters/syntax-highlighting.py<br />
<br />
To change the coloring style, modify the {{ic|style}} argument that is passed to {{ic|HtmlFormatter}} in the {{ic|syntax-highlighting.py}} file. For instance, to change the coloring style to 'tango':<br />
<br />
formatter = HtmlFormatter(encoding='utf-8', style='tango')<br />
<br />
To get a list of all coloring styles that are available, do:<br />
<br />
$ python<br />
>>> from pygments.styles import get_all_styles<br />
>>> list(get_all_styles())<br />
['manni', 'igor', 'xcode', 'vim', 'autumn', 'vs', 'rrt', 'native', 'perldoc', 'borland', 'tango', 'emacs', 'friendly', 'monokai', 'paraiso-dark', 'colorful', 'murphy', 'bw', 'pastie', 'paraiso-light', 'trac', 'default', 'fruity']<br />
<br />
====Using highlight====<br />
<br />
Install the {{Pkg|highlight}} package.<br />
<br />
Copy {{ic|/usr/lib/cgit/filters/syntax-highlighting.sh}} to {{ic|/usr/lib/cgit/filters/syntax-highlighting-edited.sh}}. Then, in the copied file, comment out version 2 and comment in version 3.<br />
You may want to add {{ic|--inline-css}} to the options of highlight for a more colorful output without editing cgit's css file.<br />
{{bc|<br />
# This is for version 2<br />
#exec highlight --force -f -I -X -S "$EXTENSION" 2>/dev/null<br />
<br />
# This is for version 3<br />
exec highlight --force --inline-css -f -I -O xhtml -S "$EXTENSION" 2>/dev/null<br />
}}<br />
Enable the filter in {{ic|/etc/cgitrc}}<br />
<br />
source-filter=/usr/lib/cgit/filters/syntax-highlighting-edited.sh<br />
<br />
{{Note|Editing {{ic|/usr/lib/cgit/filters/syntax-highlighting.sh}} directly would lose all the modifications as soon as {{Pkg|cgit}} is updated.}}<br />
<br />
==Integration==<br />
===Gitosis===<br />
If you want to integrate with [[gitosis]] you will have to run two commands to give apache permission to look though the folder.<br />
<br />
# chgrp http /srv/gitosis<br />
# chmod a+rx /srv/gitosis<br />
<br />
===Gitolite===<br />
If you added repositories managed by [[gitolite]] you have to change the permissions, so the web server can access the files.<br />
* Add the ''http'' user to the ''gitolite'' group:<br />
** {{ic|# usermod -aG gitolite http}}<br />
* Change permission for future repositories:<br />
** Edit {{ic|/var/lib/gitolite/.gitolite.rc}}. Change the {{ic|UMASK}} to {{ic|0027}}<br />
** See also: http://gitolite.com/gitolite/gitolite.html#umask<br />
* Change permission for the ''gitolite'' home directory, and existing repositories. Run the following two commands:<br />
**{{ic|# chmod g+rX /var/lib/gitolite}}<br />
**{{ic|# chmod -R g+rX /var/lib/gitolite/repositories}}<br />
<br />
==Troubleshooting==<br />
===''snapshots'' does not show properly===<br />
If you have enabled ''scan-path'' as well as ''snapshots'', the order in cgitrc matters. According to [http://comments.gmane.org/gmane.comp.version-control.cgit/917 cgit mailing list], ''snapshots'' should be specified before ''scan-path''<br />
<br />
snapshots=tar.gz tar.bz2 zip<br />
scan-path=/path/to/your/repositories<br />
<br />
===''source-filter'' does not work properly===<br />
If you have enabled ''scan-path'', again, the order in cgitrc matters. ''source-filter'' should be specified before ''scan-path'', otherwise it will have no effect.<br />
<br />
== References ==<br />
<br />
* https://git.zx2c4.com/cgit/<br />
* https://git.zx2c4.com/cgit/about/<br />
* https://git.zx2c4.com/cgit/tree/README<br />
* https://git.zx2c4.com/cgit/tree/cgitrc.5.txt</div>Vamp898https://wiki.archlinux.org/index.php?title=VMware&diff=295067VMware2014-01-30T17:56:03Z<p>Vamp898: /* Launching the application */</p>
<hr />
<div>[[Category:Virtualization]]<br />
[[it:VMware]]<br />
[[ru:VMware]]<br />
[[uk:VMware]]<br />
[[zh-CN:VMware]]<br />
{{Related articles start}}<br />
{{Related|Installing Arch Linux in VMware}}<br />
{{Related|VirtualBox}}<br />
{{Related|KVM}}<br />
{{Related|QEMU}}<br />
{{Related|Xen}}<br />
{{Related|Moving an existing install into (or out of) a virtual machine}}<br />
{{Related articles end}}<br />
<br />
This article is about installing VMware in Arch Linux; you may also be interested in [[Installing Arch Linux in VMware]].<br />
{{Note|This article supports '''only''' the latest major VMware versions, meaning VMware Workstation 10 and VMware Player (Plus) 6.}}<br />
<br />
== Installation ==<br />
<br />
{{Note|VMware Workstation/Player (Plus) will '''not''' be manageable with pacman as the files are not installed with it.}}<br />
<br />
'''1.''' Download the latest [http://www.vmware.com/products/workstation VMware Workstation] or [https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/6_0 VMware Player (Plus)] (you may also try the [https://communities.vmware.com/community/vmtn/beta testing (Beta/RC) versions]).<br />
<br />
'''2.''' Start the installation ({{Ic|--console}} uses terminal instead of the GUI):<br />
$ chmod +x VMware-''edition''-''version''.''release''.''architecture''.bundle<br />
# ./VMware-''edition''-''version''.''release''.''architecture''.bundle --console<br />
<br />
{{Note|To ignore fatal errors use {{ic|-I}} or {{ic|--ignore-errors}}.}}<br />
<br />
'''3.''' Read and accept the main application and the [https://www.vmware.com/support/developer/ovf/ OVF Tool component] EULAs to continue.<br />
<br />
'''4.''' (optional) Enter license key.<br />
<br />
'''5.''' During the install you will get an error about {{ic|"No rc*.d style init script directories"}} being given to the installer. This can, however, be safely ignored since Arch now uses [[systemd]].<br />
<br />
== Configuration ==<br />
<br />
{{Tip|There is also a package called {{AUR|vmware-patch}} in the [[Arch User Repository|AUR]] with the intention of trying to automate this section (it also supports older VMware versions).}}<br />
<br />
{{Note|Ensure you have installed the correct headers required for building the modules ({{Pkg|linux}} from the [[official repositories]] uses {{Pkg|linux-headers}}).}}<br />
<br />
=== VMware module patches and installation ===<br />
<br />
VMware Workstation 10.0.1 and Player (Plus) 6.0.1 support kernels up to 3.13.<br />
<br />
==== 3.13 kernels - patch for Netfilter-enabled systems (optional) ====<br />
<br />
Systems that have enabled the network packet filtering framework [http://cateee.net/lkddb/web-lkddb/NETFILTER.html (Netfilter] or {{ic|CONFIG_NETFILTER}}) on 3.13 kernels (found in: {{ic|Networking Support}} → {{ic|Networking Options}}) will [http://rglinuxtech.com/?p=1008 fail] to build the {{ic|vmnet}} module.<br />
<br />
This isn't included in the Arch [https://projects.archlinux.org/svntogit/packages.git/tree/trunk/config.x86_64?h=packages/linux stock kernel], but for custom kernels a patch can be found [http://pastie.org/8672356 here]:<br />
<br />
$ curl http://pastie.org/pastes/8672356/download -o /tmp/vmware-netfilter.patch<br />
$ cd /usr/lib/vmware/modules/source<br />
# tar -xvf vmnet.tar<br />
# patch -p0 -i /tmp/vmware-netfilter.patch<br />
# tar -cf vmnet.tar vmnet-only<br />
# rm -r vmnet-only<br />
# vmware-modconfig --console --install-all<br />
<br />
=== Systemd service ===<br />
<br />
'''6.''' (Optional) Instead of using {{ic|<nowiki># /etc/init.d/vmware {start|stop|status|restart}</nowiki>}} directly to manage the services you may also create a {{ic|.service}} file (or [http://communities.vmware.com/docs/DOC-20855 files]):<br />
<br />
{{hc|/etc/systemd/system/vmware.service|<br />
2=[Unit]<br />
Description=VMware daemon<br />
<br />
[Service]<br />
ExecStart=/etc/init.d/vmware start<br />
ExecStop=/etc/init.d/vmware stop<br />
PIDFile=/var/lock/subsys/vmware<br />
TimeoutSec=0<br />
RemainAfterExit=yes<br />
<br />
[Install]<br />
WantedBy=multi-user.target<br />
}}<br />
<br />
To start the [[daemon]] on boot, enable the [[systemd]] service {{ic|vmware}}.<br />
<br />
== Launching the application ==<br />
<br />
'''7.''' Now, open your VMware Workstation ({{Ic|vmware}} in the console) or VMware Player (Plus) ({{Ic|vmplayer}} in the console) to configure & use!<br />
<br />
{{Tip|To (re)build the modules from terminal, use:<br />
# vmware-modconfig --console --install-all<br />
}}<br />
<br />
{{Tip|As VMware Player 6.x does insist for any directory to put his rc-scripts, it will fail installing his rc-scripts at all and you end up with no rc-scripts. This will cause module compilation to fail because he can not stop his services. Just create a dummy file called "vmware" in whatevery directory you gave vmware while installation and make it executable, for example:<br />
# touch /root/vmware<br />
# chmod a+x /root/vmware<br />
}}<br />
<br />
== Tips and tricks ==<br />
<br />
=== Entering the Workstation License Key ===<br />
<br />
==== From terminal ====<br />
<br />
# /usr/lib/vmware/bin/vmware-vmx-debug --new-sn XXXXX-XXXXX-XXXXX-XXXXX-XXXXX<br />
<br />
Where {{ic|XXXXX-XXXXX-XXXXX-XXXXX-XXXXX}} is your license key.<br />
<br />
{{Note|The {{ic|-debug}} binary informs the user of an incorrect license.}}<br />
<br />
==== From GUI ====<br />
<br />
If the above doesn't work, you can try:<br />
<br />
# /usr/lib/vmware/bin/vmware-enter-serial<br />
<br />
=== Extracting the VMware BIOS ===<br />
<br />
$ objcopy /usr/lib/vmware/bin/vmware-vmx -O binary -j bios440 --set-section-flags bios440=a bios440.rom.Z<br />
$ perl -e 'use Compress::Zlib; my $v; read STDIN, $v, '$(stat -c%s "./bios440.rom.Z")'; $v = uncompress($v); print $v;' < bios440.rom.Z > bios440.rom<br />
<br />
==== Using the modified BIOS ====<br />
<br />
If and when you decide to modify the extracted BIOS you can make your virtual machine use it by moving it to {{ic|~/vmware/''Virtual machine name''}}:<br />
$ mv bios440.rom ~/vmware/''Virtual machine name''/<br />
<br />
then adding the name to the {{ic|''Virtual machine name''.vmx}} file:<br />
{{hc|~/vmware/''Virtual machine name''/''Virtual machine name''.vmx|2=bios440.filename = "bios440.rom"}}<br />
<br />
=== Copy-On-Write (CoW) ===<br />
<br />
CoW comes with some advantages, but can negatively affect performance with large files that have small random writes (e.g. database files and virtual machine images):<br />
<br />
$ chattr +C ~/vmware/''Virtual machine name''/''Virtual machine name''.vmx<br />
<br />
{{Note|1=From the [http://www.linuxhowtos.org/manpages/1/chattr.htm?print=-51 chattr man page]: ''"For btrfs, the {{ic|C}} flag should be set only on new or empty files. If set on a file which already has data blocks, it is undefined when the blocks assigned to the file will be fully stable. If set on a directory, only new files will be affected."''}}<br />
<br />
=== Using DKMS to manage the modules ===<br />
<br />
The Dynamic Kernel Module Support (DKMS) can be used to manage Workstation modules and to void from re-running {{ic|vmware-modconfig}} each time the kernel changes. The following example uses a custom {{ic|Makefile}} to compile and install the modules through {{ic|vmware-modconfig}}. Afterwards they are removed from the current kernel tree.<br />
<br />
==== Preparation ====<br />
<br />
First install {{Pkg|dkms}} from the [[official repositories]].<br />
<br />
Then create a source directory for the {{ic|Makefile}} and the {{ic|dkms.conf}}:<br />
# mkdir /usr/src/vmware-modules-9/<br />
<br />
==== Build configuration ====<br />
<br />
Fetch the files from Git or use the ones below.<br />
<br />
===== 1) Using Git =====<br />
<br />
$ cd /tmp<br />
$ git clone git://github.com/djod4556/dkms-workstation.git<br />
# cp /tmp/dkms-workstation/Makefile /tmp/dkms-workstation/dkms.conf /usr/src/vmware-modules-9/<br />
<br />
===== 2) Manual setup =====<br />
<br />
The {{ic|dkms.conf}} describes the module names and the compilation/installation procedure. {{ic|1=AUTOINSTALL="yes"}} tells the modules to be recompiled/installed automatically each time:<br />
<br />
{{hc|/usr/src/vmware-modules-9/dkms.conf|<br />
2=PACKAGE_NAME="vmware-modules"<br />
PACKAGE_VERSION="9"<br />
<br />
MAKE[0]="make all"<br />
CLEAN="make clean"<br />
<br />
BUILT_MODULE_NAME[0]="vmmon"<br />
BUILT_MODULE_LOCATION[0]="modules"<br />
<br />
BUILT_MODULE_NAME[1]="vmnet"<br />
BUILT_MODULE_LOCATION[1]="modules"<br />
<br />
BUILT_MODULE_NAME[2]="vmblock"<br />
BUILT_MODULE_LOCATION[2]="modules"<br />
<br />
BUILT_MODULE_NAME[3]="vmci"<br />
BUILT_MODULE_LOCATION[3]="modules"<br />
<br />
BUILT_MODULE_NAME[4]="vsock"<br />
BUILT_MODULE_LOCATION[4]="modules"<br />
<br />
DEST_MODULE_LOCATION[0]="/extra/vmware"<br />
DEST_MODULE_LOCATION[1]="/extra/vmware"<br />
DEST_MODULE_LOCATION[2]="/extra/vmware"<br />
DEST_MODULE_LOCATION[3]="/extra/vmware"<br />
DEST_MODULE_LOCATION[4]="/extra/vmware"<br />
<br />
AUTOINSTALL="yes"<br />
}}<br />
<br />
and now the {{ic|Makefile}}:<br />
<br />
{{hc|/usr/src/vmware-modules-9/Makefile|<br />
2=KERNEL := $(KERNELRELEASE)<br />
HEADERS := /usr/src/linux-$(KERNEL)/include<br />
GCC := $(shell vmware-modconfig --console --get-gcc)<br />
DEST := /lib/modules/$(KERNEL)/vmware<br />
<br />
TARGETS := vmmon vmnet vmblock vmci vsock<br />
<br />
LOCAL_MODULES := $(addsuffix .ko, $(TARGETS))<br />
<br />
all: $(LOCAL_MODULES)<br />
mkdir -p modules/<br />
mv *.ko modules/<br />
rm -rf $(DEST)<br />
depmod<br />
<br />
/usr/src/linux-$(KERNEL)/include/linux/version.h:<br />
ln -s /usr/src/linux-$(KERNEL)/include/generated/uapi/linux/version.h /usr/src/linux-$(KERNEL)/include/linux/<br />
<br />
%.ko: /usr/src/linux-$(KERNEL)/include/linux/version.h<br />
vmware-modconfig --console --build-mod -k $(KERNEL) $* $(GCC) $(HEADERS) vmware/<br />
cp -f $(DEST)/$*.ko .<br />
<br />
clean:<br />
rm -rf modules/<br />
<br />
<br />
}}<br />
<br />
==== Installation ====<br />
<br />
The modules can then be registered:<br />
<br />
# dkms -m vmware-modules -v 9 -k $(uname -r) add<br />
<br />
built:<br />
<br />
# dkms -m vmware-modules -v 9 -k $(uname -r) build<br />
<br />
and installed:<br />
<br />
# dkms -m vmware-modules -v 9 -k $(uname -r) install<br />
<br />
If everything went well, the modules will now be recompiled automatically the next time the kernel changes.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Could not open /dev/vmmon: No such file or directory. ===<br />
<br />
The full error is:<br />
Could not open /dev/vmmon: No such file or directory.<br />
Please make sure that the kernel module `vmmon' is loaded.<br />
<br />
This means that at least the {{Ic|vmmon}} VMware service is not running. If using the [[systemd]] service from [[#Systemd_service|step 8.]] it should be restarted.<br />
<br />
=== Kernel headers for version 3.x-xxxx were not found. If you installed them[...] ===<br />
<br />
Install the headers ({{Pkg|linux-headers}}).<br />
<br />
{{Note|Upgrading the kernel and the headers will require you to boot to the new kernel to match the version of the headers. This is a relatively common error.}}<br />
<br />
=== USB devices not recognized ===<br />
<br />
{{Tip|Also handled by {{AUR|vmware-patch}}.}}<br />
<br />
For some reason, some installations are missing the {{ic|vmware-USBArbitrator}} script. To readd it manually see [https://bbs.archlinux.org/viewtopic.php?pid=1003117#p1003117 this forum post].<br />
<br />
You may also manually extract the VMware bundle and copy the {{ic|vmware-USBArbitrator}} script from {{ic|''destination folder''/vmware-usbarbitrator/etc/init.d/}} to {{ic|/etc/init.d/}}:<br />
$ ./VMware-''edition''-''version''.''release''.''architecture''.bundle --extract /tmp/vmware-bundle<br />
# cp /tmp/vmware-bundle/vmware-usbarbitrator/etc/init.d/vmware-USBArbitrator /etc/init.d/<br />
<br />
=== vmci/vsock modules not loading automatically === <br />
<br />
This problem is caused by an issue in the {{ic|/etc/init.d/vmware}} script:<br />
<br />
Starting VMware services:<br />
Virtual machine monitor done<br />
Virtual machine communication interface failed<br />
VM communication interface socket family failed<br />
Blocking file system done<br />
Virtual ethernet done<br />
VMware Authentication Daemon done<br />
<br />
A workaround that was posted by "haagch" is that in vmwareStartVmci() you change vmwareLoadModule "$mod" to vmwareLoadModule "$vmci" and in vmwareStartVsock() vmwareLoadModule "$mod" to vmwareLoadModule "$vsock" and the same for vmwareStopVsock() and vmwareStopVmci().<br />
<br />
See also [https://bbs.archlinux.org/viewtopic.php?id=169472 this].<br />
=== The installer fails to start ===<br />
<br />
If you just get back to the prompt when opening the {{ic|.bundle}}, then you probably have a deprecated or broken version of the VMware installer and you should remove it (you may also refer to the [[#Uninstallation|uninstallation]] section of this article):<br />
# rm -r /etc/vmware-installer<br />
<br />
=== Incorrect login/password when trying to access VMware remotely ===<br />
<br />
VMware Workstation 10 provides the possibility to remotely manage Shared VMs through the {{ic|vmware-workstation-server}} service. However, this will fail with the error {{ic|"incorrect username/password"}} due to incorrect PAM configuration of the {{ic|vmware-authd}} service. To fix it, edit {{ic|/etc/pam.d/vmware-authd}} like this:<br />
<br />
{{hc|/etc/pam.d/vmware-authd|<br />
#%PAM-1.0<br />
auth ''required pam_unix.so''<br />
account ''required pam_unix.so''<br />
password ''required pam_permit.so''<br />
session ''required pam_unix.so''<br />
}}<br />
<br />
and restart the {{ic|vmware}} [[systemd]] service.<br />
<br />
Now you can connect to the server with the credentials provided during the installation.<br />
<br />
{{Note|{{Pkg|libxslt}} may be required for starting virtual machines.}}<br />
<br />
=== Issues with ALSA output ===<br />
<br />
The following instructions from [http://bankimbhavsar.blogspot.co.nz/2011/09/hd-audio-in-vmware-fusion-4-and-vmware.html Bankim Bhavsar's wiki] show how to manually adjust the [[ALSA]] output device in a VMware {{ic|.vmx}} file. This might help with quality issues or with enabling proper HD audio output:<br />
<br />
# Suspend/Power off the VM.<br />
# Run {{ic|aplay -L}}<br />
# If you are interested in playing 5.1 surround sound from the guest, look for {{ic|1=surround51:CARD=vendor-name,DEV=num}}. If you are experiencing quality issues, look out for a line starting with front. <br />
# Open the {{ic|''Virtual machine name''.vmx}} config file of the VM in a text editor, located under {{ic|~/vmware/''Virtual machine name''/}}, and edit the {{ic|sound.fileName}} field, e.g.: {{ic|1=sound.fileName="surround51:CARD=Live,DEV=0"}}. Ensure that it also reads {{ic|1=sound.autodetect="FALSE"}}.<br />
# Resume/Power on the VM.<br />
<br />
=== Kernel-based Virtual Machine (KVM) is running ===<br />
To disable {{ic|KVM}} on boot, you can use something like:<br />
<br />
{{hc|/etc/modprobe.d/vmware.conf|<br />
blacklist kvm<br />
blacklist kvm-amd # For AMD CPUs<br />
blacklist kvm-intel # For Intel CPUs<br />
}}<br />
<br />
== Uninstallation ==<br />
<br />
To uninstall VMware you need the product name (either {{ic|vmware-workstation}} or {{ic|vmware-player}}). To list all the installed products:<br />
$ vmware-installer -l<br />
<br />
and uninstall with:<br />
# vmware-installer -u ''vmware-product''<br />
<br />
Remember to also disable and remove the {{ic|vmware}} service:<br />
# systemctl disable vmware<br />
# rm /etc/systemd/system/vmware.service<br />
<br />
You may also want to have a look at the module directories in {{ic|/usr/lib/modules/''[kernel name]''/misc/}} for any leftovers.</div>Vamp898https://wiki.archlinux.org/index.php?title=VMware&diff=295066VMware2014-01-30T17:55:44Z<p>Vamp898: /* Launching the application */</p>
<hr />
<div>[[Category:Virtualization]]<br />
[[it:VMware]]<br />
[[ru:VMware]]<br />
[[uk:VMware]]<br />
[[zh-CN:VMware]]<br />
{{Related articles start}}<br />
{{Related|Installing Arch Linux in VMware}}<br />
{{Related|VirtualBox}}<br />
{{Related|KVM}}<br />
{{Related|QEMU}}<br />
{{Related|Xen}}<br />
{{Related|Moving an existing install into (or out of) a virtual machine}}<br />
{{Related articles end}}<br />
<br />
This article is about installing VMware in Arch Linux; you may also be interested in [[Installing Arch Linux in VMware]].<br />
{{Note|This article supports '''only''' the latest major VMware versions, meaning VMware Workstation 10 and VMware Player (Plus) 6.}}<br />
<br />
== Installation ==<br />
<br />
{{Note|VMware Workstation/Player (Plus) will '''not''' be manageable with pacman as the files are not installed with it.}}<br />
<br />
'''1.''' Download the latest [http://www.vmware.com/products/workstation VMware Workstation] or [https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/6_0 VMware Player (Plus)] (you may also try the [https://communities.vmware.com/community/vmtn/beta testing (Beta/RC) versions]).<br />
<br />
'''2.''' Start the installation ({{Ic|--console}} uses terminal instead of the GUI):<br />
$ chmod +x VMware-''edition''-''version''.''release''.''architecture''.bundle<br />
# ./VMware-''edition''-''version''.''release''.''architecture''.bundle --console<br />
<br />
{{Note|To ignore fatal errors use {{ic|-I}} or {{ic|--ignore-errors}}.}}<br />
<br />
'''3.''' Read and accept the main application and the [https://www.vmware.com/support/developer/ovf/ OVF Tool component] EULAs to continue.<br />
<br />
'''4.''' (optional) Enter license key.<br />
<br />
'''5.''' During the install you will get an error about {{ic|"No rc*.d style init script directories"}} being given to the installer. This can, however, be safely ignored since Arch now uses [[systemd]].<br />
<br />
== Configuration ==<br />
<br />
{{Tip|There is also a package called {{AUR|vmware-patch}} in the [[Arch User Repository|AUR]] with the intention of trying to automate this section (it also supports older VMware versions).}}<br />
<br />
{{Note|Ensure you have installed the correct headers required for building the modules ({{Pkg|linux}} from the [[official repositories]] uses {{Pkg|linux-headers}}).}}<br />
<br />
=== VMware module patches and installation ===<br />
<br />
VMware Workstation 10.0.1 and Player (Plus) 6.0.1 support kernels up to 3.13.<br />
<br />
==== 3.13 kernels - patch for Netfilter-enabled systems (optional) ====<br />
<br />
Systems that have enabled the network packet filtering framework [http://cateee.net/lkddb/web-lkddb/NETFILTER.html (Netfilter] or {{ic|CONFIG_NETFILTER}}) on 3.13 kernels (found in: {{ic|Networking Support}} → {{ic|Networking Options}}) will [http://rglinuxtech.com/?p=1008 fail] to build the {{ic|vmnet}} module.<br />
<br />
This isn't included in the Arch [https://projects.archlinux.org/svntogit/packages.git/tree/trunk/config.x86_64?h=packages/linux stock kernel], but for custom kernels a patch can be found [http://pastie.org/8672356 here]:<br />
<br />
$ curl http://pastie.org/pastes/8672356/download -o /tmp/vmware-netfilter.patch<br />
$ cd /usr/lib/vmware/modules/source<br />
# tar -xvf vmnet.tar<br />
# patch -p0 -i /tmp/vmware-netfilter.patch<br />
# tar -cf vmnet.tar vmnet-only<br />
# rm -r vmnet-only<br />
# vmware-modconfig --console --install-all<br />
<br />
=== Systemd service ===<br />
<br />
'''6.''' (Optional) Instead of using {{ic|<nowiki># /etc/init.d/vmware {start|stop|status|restart}</nowiki>}} directly to manage the services you may also create a {{ic|.service}} file (or [http://communities.vmware.com/docs/DOC-20855 files]):<br />
<br />
{{hc|/etc/systemd/system/vmware.service|<br />
2=[Unit]<br />
Description=VMware daemon<br />
<br />
[Service]<br />
ExecStart=/etc/init.d/vmware start<br />
ExecStop=/etc/init.d/vmware stop<br />
PIDFile=/var/lock/subsys/vmware<br />
TimeoutSec=0<br />
RemainAfterExit=yes<br />
<br />
[Install]<br />
WantedBy=multi-user.target<br />
}}<br />
<br />
To start the [[daemon]] on boot, enable the [[systemd]] service {{ic|vmware}}.<br />
<br />
== Launching the application ==<br />
<br />
'''7.''' Now, open your VMware Workstation ({{Ic|vmware}} in the console) or VMware Player (Plus) ({{Ic|vmplayer}} in the console) to configure & use!<br />
<br />
{{Tip|To (re)build the modules from terminal, use:<br />
# vmware-modconfig --console --install-all<br />
}}<br />
<br />
{{Tip|As VMware Player 6.x does insist for any directory to put his rc-scripts, it will fail installing his rc-scripts at all and you end up with now rc-scripts. This will cause module compilation to fail because he can not stop his services. Just create a dummy file called "vmware" in whatevery directory you gave vmware while installation and make it executable, for example:<br />
# touch /root/vmware<br />
# chmod a+x /root/vmware<br />
}}<br />
<br />
== Tips and tricks ==<br />
<br />
=== Entering the Workstation License Key ===<br />
<br />
==== From terminal ====<br />
<br />
# /usr/lib/vmware/bin/vmware-vmx-debug --new-sn XXXXX-XXXXX-XXXXX-XXXXX-XXXXX<br />
<br />
Where {{ic|XXXXX-XXXXX-XXXXX-XXXXX-XXXXX}} is your license key.<br />
<br />
{{Note|The {{ic|-debug}} binary informs the user of an incorrect license.}}<br />
<br />
==== From GUI ====<br />
<br />
If the above doesn't work, you can try:<br />
<br />
# /usr/lib/vmware/bin/vmware-enter-serial<br />
<br />
=== Extracting the VMware BIOS ===<br />
<br />
$ objcopy /usr/lib/vmware/bin/vmware-vmx -O binary -j bios440 --set-section-flags bios440=a bios440.rom.Z<br />
$ perl -e 'use Compress::Zlib; my $v; read STDIN, $v, '$(stat -c%s "./bios440.rom.Z")'; $v = uncompress($v); print $v;' < bios440.rom.Z > bios440.rom<br />
<br />
==== Using the modified BIOS ====<br />
<br />
If and when you decide to modify the extracted BIOS you can make your virtual machine use it by moving it to {{ic|~/vmware/''Virtual machine name''}}:<br />
$ mv bios440.rom ~/vmware/''Virtual machine name''/<br />
<br />
then adding the name to the {{ic|''Virtual machine name''.vmx}} file:<br />
{{hc|~/vmware/''Virtual machine name''/''Virtual machine name''.vmx|2=bios440.filename = "bios440.rom"}}<br />
<br />
=== Copy-On-Write (CoW) ===<br />
<br />
CoW comes with some advantages, but can negatively affect performance with large files that have small random writes (e.g. database files and virtual machine images):<br />
<br />
$ chattr +C ~/vmware/''Virtual machine name''/''Virtual machine name''.vmx<br />
<br />
{{Note|1=From the [http://www.linuxhowtos.org/manpages/1/chattr.htm?print=-51 chattr man page]: ''"For btrfs, the {{ic|C}} flag should be set only on new or empty files. If set on a file which already has data blocks, it is undefined when the blocks assigned to the file will be fully stable. If set on a directory, only new files will be affected."''}}<br />
<br />
=== Using DKMS to manage the modules ===<br />
<br />
The Dynamic Kernel Module Support (DKMS) can be used to manage Workstation modules and to void from re-running {{ic|vmware-modconfig}} each time the kernel changes. The following example uses a custom {{ic|Makefile}} to compile and install the modules through {{ic|vmware-modconfig}}. Afterwards they are removed from the current kernel tree.<br />
<br />
==== Preparation ====<br />
<br />
First install {{Pkg|dkms}} from the [[official repositories]].<br />
<br />
Then create a source directory for the {{ic|Makefile}} and the {{ic|dkms.conf}}:<br />
# mkdir /usr/src/vmware-modules-9/<br />
<br />
==== Build configuration ====<br />
<br />
Fetch the files from Git or use the ones below.<br />
<br />
===== 1) Using Git =====<br />
<br />
$ cd /tmp<br />
$ git clone git://github.com/djod4556/dkms-workstation.git<br />
# cp /tmp/dkms-workstation/Makefile /tmp/dkms-workstation/dkms.conf /usr/src/vmware-modules-9/<br />
<br />
===== 2) Manual setup =====<br />
<br />
The {{ic|dkms.conf}} describes the module names and the compilation/installation procedure. {{ic|1=AUTOINSTALL="yes"}} tells the modules to be recompiled/installed automatically each time:<br />
<br />
{{hc|/usr/src/vmware-modules-9/dkms.conf|<br />
2=PACKAGE_NAME="vmware-modules"<br />
PACKAGE_VERSION="9"<br />
<br />
MAKE[0]="make all"<br />
CLEAN="make clean"<br />
<br />
BUILT_MODULE_NAME[0]="vmmon"<br />
BUILT_MODULE_LOCATION[0]="modules"<br />
<br />
BUILT_MODULE_NAME[1]="vmnet"<br />
BUILT_MODULE_LOCATION[1]="modules"<br />
<br />
BUILT_MODULE_NAME[2]="vmblock"<br />
BUILT_MODULE_LOCATION[2]="modules"<br />
<br />
BUILT_MODULE_NAME[3]="vmci"<br />
BUILT_MODULE_LOCATION[3]="modules"<br />
<br />
BUILT_MODULE_NAME[4]="vsock"<br />
BUILT_MODULE_LOCATION[4]="modules"<br />
<br />
DEST_MODULE_LOCATION[0]="/extra/vmware"<br />
DEST_MODULE_LOCATION[1]="/extra/vmware"<br />
DEST_MODULE_LOCATION[2]="/extra/vmware"<br />
DEST_MODULE_LOCATION[3]="/extra/vmware"<br />
DEST_MODULE_LOCATION[4]="/extra/vmware"<br />
<br />
AUTOINSTALL="yes"<br />
}}<br />
<br />
and now the {{ic|Makefile}}:<br />
<br />
{{hc|/usr/src/vmware-modules-9/Makefile|<br />
2=KERNEL := $(KERNELRELEASE)<br />
HEADERS := /usr/src/linux-$(KERNEL)/include<br />
GCC := $(shell vmware-modconfig --console --get-gcc)<br />
DEST := /lib/modules/$(KERNEL)/vmware<br />
<br />
TARGETS := vmmon vmnet vmblock vmci vsock<br />
<br />
LOCAL_MODULES := $(addsuffix .ko, $(TARGETS))<br />
<br />
all: $(LOCAL_MODULES)<br />
mkdir -p modules/<br />
mv *.ko modules/<br />
rm -rf $(DEST)<br />
depmod<br />
<br />
/usr/src/linux-$(KERNEL)/include/linux/version.h:<br />
ln -s /usr/src/linux-$(KERNEL)/include/generated/uapi/linux/version.h /usr/src/linux-$(KERNEL)/include/linux/<br />
<br />
%.ko: /usr/src/linux-$(KERNEL)/include/linux/version.h<br />
vmware-modconfig --console --build-mod -k $(KERNEL) $* $(GCC) $(HEADERS) vmware/<br />
cp -f $(DEST)/$*.ko .<br />
<br />
clean:<br />
rm -rf modules/<br />
<br />
<br />
}}<br />
<br />
==== Installation ====<br />
<br />
The modules can then be registered:<br />
<br />
# dkms -m vmware-modules -v 9 -k $(uname -r) add<br />
<br />
built:<br />
<br />
# dkms -m vmware-modules -v 9 -k $(uname -r) build<br />
<br />
and installed:<br />
<br />
# dkms -m vmware-modules -v 9 -k $(uname -r) install<br />
<br />
If everything went well, the modules will now be recompiled automatically the next time the kernel changes.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Could not open /dev/vmmon: No such file or directory. ===<br />
<br />
The full error is:<br />
Could not open /dev/vmmon: No such file or directory.<br />
Please make sure that the kernel module `vmmon' is loaded.<br />
<br />
This means that at least the {{Ic|vmmon}} VMware service is not running. If using the [[systemd]] service from [[#Systemd_service|step 8.]] it should be restarted.<br />
<br />
=== Kernel headers for version 3.x-xxxx were not found. If you installed them[...] ===<br />
<br />
Install the headers ({{Pkg|linux-headers}}).<br />
<br />
{{Note|Upgrading the kernel and the headers will require you to boot to the new kernel to match the version of the headers. This is a relatively common error.}}<br />
<br />
=== USB devices not recognized ===<br />
<br />
{{Tip|Also handled by {{AUR|vmware-patch}}.}}<br />
<br />
For some reason, some installations are missing the {{ic|vmware-USBArbitrator}} script. To readd it manually see [https://bbs.archlinux.org/viewtopic.php?pid=1003117#p1003117 this forum post].<br />
<br />
You may also manually extract the VMware bundle and copy the {{ic|vmware-USBArbitrator}} script from {{ic|''destination folder''/vmware-usbarbitrator/etc/init.d/}} to {{ic|/etc/init.d/}}:<br />
$ ./VMware-''edition''-''version''.''release''.''architecture''.bundle --extract /tmp/vmware-bundle<br />
# cp /tmp/vmware-bundle/vmware-usbarbitrator/etc/init.d/vmware-USBArbitrator /etc/init.d/<br />
<br />
=== vmci/vsock modules not loading automatically === <br />
<br />
This problem is caused by an issue in the {{ic|/etc/init.d/vmware}} script:<br />
<br />
Starting VMware services:<br />
Virtual machine monitor done<br />
Virtual machine communication interface failed<br />
VM communication interface socket family failed<br />
Blocking file system done<br />
Virtual ethernet done<br />
VMware Authentication Daemon done<br />
<br />
A workaround that was posted by "haagch" is that in vmwareStartVmci() you change vmwareLoadModule "$mod" to vmwareLoadModule "$vmci" and in vmwareStartVsock() vmwareLoadModule "$mod" to vmwareLoadModule "$vsock" and the same for vmwareStopVsock() and vmwareStopVmci().<br />
<br />
See also [https://bbs.archlinux.org/viewtopic.php?id=169472 this].<br />
=== The installer fails to start ===<br />
<br />
If you just get back to the prompt when opening the {{ic|.bundle}}, then you probably have a deprecated or broken version of the VMware installer and you should remove it (you may also refer to the [[#Uninstallation|uninstallation]] section of this article):<br />
# rm -r /etc/vmware-installer<br />
<br />
=== Incorrect login/password when trying to access VMware remotely ===<br />
<br />
VMware Workstation 10 provides the possibility to remotely manage Shared VMs through the {{ic|vmware-workstation-server}} service. However, this will fail with the error {{ic|"incorrect username/password"}} due to incorrect PAM configuration of the {{ic|vmware-authd}} service. To fix it, edit {{ic|/etc/pam.d/vmware-authd}} like this:<br />
<br />
{{hc|/etc/pam.d/vmware-authd|<br />
#%PAM-1.0<br />
auth ''required pam_unix.so''<br />
account ''required pam_unix.so''<br />
password ''required pam_permit.so''<br />
session ''required pam_unix.so''<br />
}}<br />
<br />
and restart the {{ic|vmware}} [[systemd]] service.<br />
<br />
Now you can connect to the server with the credentials provided during the installation.<br />
<br />
{{Note|{{Pkg|libxslt}} may be required for starting virtual machines.}}<br />
<br />
=== Issues with ALSA output ===<br />
<br />
The following instructions from [http://bankimbhavsar.blogspot.co.nz/2011/09/hd-audio-in-vmware-fusion-4-and-vmware.html Bankim Bhavsar's wiki] show how to manually adjust the [[ALSA]] output device in a VMware {{ic|.vmx}} file. This might help with quality issues or with enabling proper HD audio output:<br />
<br />
# Suspend/Power off the VM.<br />
# Run {{ic|aplay -L}}<br />
# If you are interested in playing 5.1 surround sound from the guest, look for {{ic|1=surround51:CARD=vendor-name,DEV=num}}. If you are experiencing quality issues, look out for a line starting with front. <br />
# Open the {{ic|''Virtual machine name''.vmx}} config file of the VM in a text editor, located under {{ic|~/vmware/''Virtual machine name''/}}, and edit the {{ic|sound.fileName}} field, e.g.: {{ic|1=sound.fileName="surround51:CARD=Live,DEV=0"}}. Ensure that it also reads {{ic|1=sound.autodetect="FALSE"}}.<br />
# Resume/Power on the VM.<br />
<br />
=== Kernel-based Virtual Machine (KVM) is running ===<br />
To disable {{ic|KVM}} on boot, you can use something like:<br />
<br />
{{hc|/etc/modprobe.d/vmware.conf|<br />
blacklist kvm<br />
blacklist kvm-amd # For AMD CPUs<br />
blacklist kvm-intel # For Intel CPUs<br />
}}<br />
<br />
== Uninstallation ==<br />
<br />
To uninstall VMware you need the product name (either {{ic|vmware-workstation}} or {{ic|vmware-player}}). To list all the installed products:<br />
$ vmware-installer -l<br />
<br />
and uninstall with:<br />
# vmware-installer -u ''vmware-product''<br />
<br />
Remember to also disable and remove the {{ic|vmware}} service:<br />
# systemctl disable vmware<br />
# rm /etc/systemd/system/vmware.service<br />
<br />
You may also want to have a look at the module directories in {{ic|/usr/lib/modules/''[kernel name]''/misc/}} for any leftovers.</div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:VMware&diff=295065Talk:VMware2014-01-30T17:51:27Z<p>Vamp898: /* Point 7 on does not work on installation */</p>
<hr />
<div>== DKMS ==<br />
Is the section about using DKMS to compile the kernel modules still valid? There is [https://www.archlinux.org/packages/community/i686/open-vm-tools-dkms/ open-vm-tools-dkms] in the community repository which seems to be the same thing. I don't know how to use DKMS yet so it would be nice if someone with experience on using DKMS could update the corresponding section. --[[User:BertiBoeller|BertiBoeller]] ([[User talk:BertiBoeller|talk]]) 11:33, 2 October 2012 (UTC)<br />
<br />
== Instability ==<br />
<br />
Anyone else experienced random kernel crashes when shutting down a VM? The stack trace always mentions XFS(which I use), but is never consistent. I'm on 9.0.0. Going to try upgrading to 9.0.1 to see if that helps it. --[[User:Earlz|Earlz]] ([[User talk:Earlz|talk]]) 23:03, 26 December 2012 (UTC)<br />
:So did it? --[[User:Det|Det]] ([[User talk:Det|talk]]) 14:18, 26 February 2013 (UTC)<br />
<br />
== Broken on Linux 3.11-1 ==<br />
<br />
I get compiler errors when compiling the kernel modules. This appears to be the fix: http://mysticalzero.blogspot.dk/2013/07/vmblock-patch-for-linux-311-rc1-vmware.html --[[User:Earlz|Earlz]] ([[User talk:Earlz|talk]]) 14:15, 25 September 2013 (UTC)<br />
<br />
:Hi Earlz - Please file a bug report at https://bugs.archlinux.org/ - this way the developers will be able to respond quickly. [[User:DarkCerberus|'''<span style="color:black;font-family:Tempus Sans ITC;">Dark</span>''']][[User Talk:DarkCerberus|'''<span style="color:black;font-family:Tempus Sans ITC;">Cerberus</span>''']] 16:10, 25 September 2013 (UTC)<br />
<br />
== Point 7 on does not work on installation ==<br />
<br />
> # vmware-modconfig --console --install-all<br />
<br />
This command does not work.<br />
<br />
The Wiki says you can savely ignore the error message about vmware not beeing able to detect rc-style directory<br />
<br />
you can not! As soon you try to compile the kernel module vmware wants to stop the services and does not find his service files.<br />
<br />
So the installation is broken at this point<br />
<br />
vmware-modconfig --console --install-all<br /><br />
sh: /root/vmware: No such file or directory<br /><br />
Unable to stop services<br /></div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:VMware&diff=295064Talk:VMware2014-01-30T17:51:17Z<p>Vamp898: /* Point 7 on does not work on installation */</p>
<hr />
<div>== DKMS ==<br />
Is the section about using DKMS to compile the kernel modules still valid? There is [https://www.archlinux.org/packages/community/i686/open-vm-tools-dkms/ open-vm-tools-dkms] in the community repository which seems to be the same thing. I don't know how to use DKMS yet so it would be nice if someone with experience on using DKMS could update the corresponding section. --[[User:BertiBoeller|BertiBoeller]] ([[User talk:BertiBoeller|talk]]) 11:33, 2 October 2012 (UTC)<br />
<br />
== Instability ==<br />
<br />
Anyone else experienced random kernel crashes when shutting down a VM? The stack trace always mentions XFS(which I use), but is never consistent. I'm on 9.0.0. Going to try upgrading to 9.0.1 to see if that helps it. --[[User:Earlz|Earlz]] ([[User talk:Earlz|talk]]) 23:03, 26 December 2012 (UTC)<br />
:So did it? --[[User:Det|Det]] ([[User talk:Det|talk]]) 14:18, 26 February 2013 (UTC)<br />
<br />
== Broken on Linux 3.11-1 ==<br />
<br />
I get compiler errors when compiling the kernel modules. This appears to be the fix: http://mysticalzero.blogspot.dk/2013/07/vmblock-patch-for-linux-311-rc1-vmware.html --[[User:Earlz|Earlz]] ([[User talk:Earlz|talk]]) 14:15, 25 September 2013 (UTC)<br />
<br />
:Hi Earlz - Please file a bug report at https://bugs.archlinux.org/ - this way the developers will be able to respond quickly. [[User:DarkCerberus|'''<span style="color:black;font-family:Tempus Sans ITC;">Dark</span>''']][[User Talk:DarkCerberus|'''<span style="color:black;font-family:Tempus Sans ITC;">Cerberus</span>''']] 16:10, 25 September 2013 (UTC)<br />
<br />
== Point 7 on does not work on installation ==<br />
<br />
> # vmware-modconfig --console --install-all<br />
<br />
This command does not work.<br />
<br />
The Wiki says you can savely ignore the error message about vmware not beeing able to detect rc-style directory<br />
<br />
you can not! As soon you try to compile the kernel module vmware wants to stop the services and does not find his service files.<br />
<br />
So the installation is broken at this point<br />
<br />
vmware-modconfig --console --install-all<br />
sh: /root/vmware: No such file or directory<br />
Unable to stop services</div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:VMware&diff=295063Talk:VMware2014-01-30T17:48:30Z<p>Vamp898: /* Point 7 on does not work on installation */ new section</p>
<hr />
<div>== DKMS ==<br />
Is the section about using DKMS to compile the kernel modules still valid? There is [https://www.archlinux.org/packages/community/i686/open-vm-tools-dkms/ open-vm-tools-dkms] in the community repository which seems to be the same thing. I don't know how to use DKMS yet so it would be nice if someone with experience on using DKMS could update the corresponding section. --[[User:BertiBoeller|BertiBoeller]] ([[User talk:BertiBoeller|talk]]) 11:33, 2 October 2012 (UTC)<br />
<br />
== Instability ==<br />
<br />
Anyone else experienced random kernel crashes when shutting down a VM? The stack trace always mentions XFS(which I use), but is never consistent. I'm on 9.0.0. Going to try upgrading to 9.0.1 to see if that helps it. --[[User:Earlz|Earlz]] ([[User talk:Earlz|talk]]) 23:03, 26 December 2012 (UTC)<br />
:So did it? --[[User:Det|Det]] ([[User talk:Det|talk]]) 14:18, 26 February 2013 (UTC)<br />
<br />
== Broken on Linux 3.11-1 ==<br />
<br />
I get compiler errors when compiling the kernel modules. This appears to be the fix: http://mysticalzero.blogspot.dk/2013/07/vmblock-patch-for-linux-311-rc1-vmware.html --[[User:Earlz|Earlz]] ([[User talk:Earlz|talk]]) 14:15, 25 September 2013 (UTC)<br />
<br />
:Hi Earlz - Please file a bug report at https://bugs.archlinux.org/ - this way the developers will be able to respond quickly. [[User:DarkCerberus|'''<span style="color:black;font-family:Tempus Sans ITC;">Dark</span>''']][[User Talk:DarkCerberus|'''<span style="color:black;font-family:Tempus Sans ITC;">Cerberus</span>''']] 16:10, 25 September 2013 (UTC)<br />
<br />
== Point 7 on does not work on installation ==<br />
<br />
> # vmware-modconfig --console --install-all<br />
<br />
This command does not work.<br />
<br />
The Wiki says you can savely ignore the error message about vmware not beeing able to detect rc-style directory<br />
<br />
you can not! As soon you try to compile the kernel module vmware wants to stop the services and does not find his service files.<br />
<br />
So the installation is broken at this point</div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:GRUB&diff=289096Talk:GRUB2013-12-18T07:21:30Z<p>Vamp898: /* Is there something missing? */ new section</p>
<hr />
<div>== EFI ==<br />
<br />
Is there any reason why grub should be installed to /boot/efi/efi/grub and not to /boot/efi? UEFI wants to have the efi-image unter <EFI SYSTEM PARTITION>/efi/name, so /boot/efi/grub should do the trick.<br />
Additionally, mounting (e.g.) /dev/sda1 to /boot/efi and just placing the grub there will possibly conflict with having a LVM+LUKS setup, where /boot will then be encrypted. At the moment I'm running a funtoo installation on a thinkpad x121e with /dev/sda1 (200MB, fat32, sectors 1 - 201) mounted to /boot and /dev/sda2 being a LUKS encrypted system. /boot contains the bzImage and /boot/efi/boot/bootx64.efi is the grub-image.<br />
<br />
Note: there should possibly be a section/table here containing information what firmware expects what name. having /boot/efi/grub/grub.efi didn't work for me, and as noted in the thinkwiki for an x220, /boot/efi/boot/bootx64.efi works fine. --[[User:Rochus|Rochus]] 13:59, 16 August 2011 (EDT)<br />
<br />
:@Rochus: You have mounted your EFISYS partition at /boot ir you are using same part as both EFISYS and /boot and it is FAT32 formatted. The actual path is <EFI_SYS_PART>/efi/grub/grub.efi wherein <EFI_SYS_PART> is usually /boot/efi or in your case /boot itself. <br />
<br />
:But I do not understand your argument about mounting EFISYS at /boot/efi conflicting with LVM+LUKS. I don't have such a config in my system to understand what you are coming to say. <EFI_SYS_PART>/efi/boot/bootx64.efi is just a fallback path incase there's no boot entry in UEFI Boot Manager (see efibootmgr section). I already mentioned in the article that "If you have mounted EFISYS part at a different mountpoint, replace /boot/efi with that mountpoint in all the commands". I suppose that explains it. It is better to have /boot separate from EFISYS partition. I have /dev/sda1 as 200 MiB FAT32 EFISYS mounted at /boot/efi and /dev/sda3 as 400 MiB ext4 /boot part. For /boot/efi/grub/grub.efi to work you have to add a boot entry to grub.efi in the UEFI Boot Manager using efibootmgr utility. -- [[User:the.ridikulus.rat|Keshav P R]] 23:15, 28 August 2011 (IST)<br />
<br />
== Custom keyboard layout ==<br />
Hi. Could we add a section explaining how you can set your preferred keyboard layout within GRUB2? As i found [http://lists.gnu.org/archive/html/grub-devel/2011-06/msg00008.html here], we need the ckbcomp script, which can be obtained from Debian console-setup package.<br />
<br />
Here's how I made things work:<br />
<br />
sudo mkdir /boot/grub/layouts<br />
ckbcomp it |sudo grub-mklayout -o /boot/grub/layouts/it.gkb<br />
<br />
Then, I manually edited {{ic|/boot/grub/grub.cfg}}, adding the following lines:<br />
<br />
{{hc|/boot/grub/grub.cfg|<br />
<nowiki><br />
terminal_input at_keyboard<br />
keymap it<br />
</nowiki>}}<br />
<br />
This worked for me, but as of now, i think it's a very dirty method. Is there some support for keyboard layouts within {{ic|/etc/default/grub}}?<br />
<br />
Cheers. --[[User:Hilinus|Hilinus]] 12:50, 26 December 2011 (EST)<br />
<br />
:I followed [http://lists.gnu.org/archive/html/grub-devel/2011-03/msg00051.html instructions] on the grub-devel mailing list. First you insert <br />
<br />
{{hc|/etc/default/grub|<br />
<nowiki><br />
GRUB_TERMINAL_INPUT=at_keyboard<br />
</nowiki>}}<br />
<br />
:in {{ic|/etc/default/grub}}. Then you get ckbcomp Perl script from Ubuntu or Debian and execute (for Slovene layout)<br />
<br />
:{{bc|<nowiki><br />
$ ckbcomp si | grub-mklayout -o si.gkb<br />
Unknown key KP_Comma<br />
Unknown key KP_Comma<br />
Unknown key KP_Comma<br />
Unknown key KP_Comma<br />
Unknown keycode 0x79<br />
$ sudo mv si.gkb /boot/grub/<br />
</nowiki>}}<br />
<br />
:After that you add <br />
<br />
{{hc|/etc/grub.d/40_custom|<br />
<nowiki><br />
insmod keylayouts<br />
keymap /boot/grub/si.gkb<br />
</nowiki>}}<br />
<br />
:to {{ic|/etc/grub.d/40_custom}} and finally generate new grub.cfg with<br />
<br />
:{{bc|$ sudo grub-mkconfig -o /boot/grub/grub.cfg}}<br />
<br />
:Cheers. --[[User:drevo|drevo]] 17:47, 6 January 2012 (EST)<br />
<br />
::The version of ckbcomp I got from Debian Squeeze kept giving this error:<br />
<br />
::{{bc|Unknown name $sun_t6_custom}}<br />
<br />
::The Ubuntu Precise version worked out of the box.<br />
<br />
::A temporary solution for layouts would be an AUR package for ckbcomp or to distribute .gkb files somehow, but the proper solution would be for grub-mklayout to accept keymaps(5) files.<br />
<br />
::--[[User:Schizius|Schizius]] ([[User talk:Schizius|talk]]) 18:44, 26 July 2012 (UTC)<br />
<br />
:::This won't work if /boot is on another root partition. At home / is on lvm and /boot on standard MBR partition. This was historical. But since grub.cfg is generated with the root partition in lvm, it can't find my keyboard layout.<br />
:::The clean solution is to create a new file ''/etc/grub.d/50_keymap''and put this:<br />
<br />
:::{{bc|<nowiki><br />
#!/bin/sh<br />
set -e<br />
# Include the GRUB helper library for grub-mkconfig.<br />
. /usr/share/grub/grub-mkconfig_lib<br />
KEYMAP_FILE=/boot/grub/bepo.gkb<br />
if ! prepare_grub_to_access_device "`${grub_probe} --target=device "${KEYMAP_FILE}"`"; then<br />
return 6<br />
fi<br />
KEYMAP_FILE=$(make_system_path_relative_to_its_root "${KEYMAP_FILE}")<br />
cat <<EOF<br />
insmod keylayouts<br />
keymap "${KEYMAP_FILE}"<br />
EOF<br />
</nowiki>}}<br />
<br />
:::So that the root partition is detected, loaded, and then the file is read within that partition.<br />
<br />
:::--[[User:Glandos|Glandos]] ([[User talk:Glandos|talk]]) 08:23, 14 November 2013 (UTC)<br />
<br />
== GRUB2 + Windows 7 TrueCrypt-encrypted partition ==<br />
<br />
[http://www.reddit.com/r/archlinux/comments/xdwsa/finally_did_the_grub2_update_migrating_away_from/ here is a link to my notes from my experience going thru this] and [http://ubuntuforums.org/showpost.php?p=10113708&postcount=25 Ubuntu Forum post which helped me a GREAT DEAL with this issue]<br />
- below is a quick HOWTO ::<br />
<br />
# ls -al /mnt/win7drive/Users/me/Documents/TrueCrypt\ Rescue\ Disk.iso<br />
-rwx------ 2 me users 1835008 Sep 5 2011 /mnt/win7/Users/me/Documents/TrueCrypt Rescue Disk.iso<br />
<br />
# sudo cp /mnt/win7/Users/me/Documents/TrueCrypt\ Rescue\ Disk.iso /boot/<br />
# mv /boot/TrueCrypt\ Rescue\ Disk.iso /boot/truecryptDesktop.iso<br />
<br />
# pacman -S syslinux<br />
<br />
# cp /usr/lib/syslinux/memdisk /boot/<br />
<br />
# ls -alt /boot<br />
total 26388<br />
drwxr-xr-x 5 root root 4096 Jul 29 04:01 .<br />
-rw-r--r-- 1 root root 26140 Jul 29 04:01 memdisk<br />
-rwx------ 1 root root 1835008 Jul 29 03:59 truecryptDesktop.iso<br />
.... ....<br />
<br />
#mount | grep /boot<br />
/dev/sda3 on /boot type ext3 (rw,relatime,data=ordered)<br />
<br />
# vi /etc/grub.d/40_custom<br />
<br />
menuentry "Microsoft Windows 7 x64 Home Premium" {<br />
insmod part_msdos<br />
set root='(hd0,msdos3)'<br />
linux16 ($root)/memdisk iso raw<br />
initrd16 ($root)/truecryptDesktop.iso<br />
}<br />
<br />
# sudo grub-mkconfig -o /boot/grub/grub.cfg<br />
<br />
--[[User:Fnord0|Fnord0]] ([[User talk:Fnord0|talk]]) 17:59, 30 July 2012 (UTC)<br />
<br />
== encrypted /boot ==<br />
<br />
Just so I remember when I come back to edit the article, grub-install (2.00) currently requires the GRUB_CRYPTODISK_ENABLE environment variable be set to "y". --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 05:58, 10 October 2012 (UTC)<br />
<br />
== Possible mistake? ==<br />
<br />
Hi there,<br />
since I do not feel familiar with Grub2 yet, you might check that:<br />
<br />
[[GRUB2#Install_to_Partition_or_Partitionless_Disk]]<br />
<br />
# grub-install --target=i386-pc --recheck --debug --force /dev/sdaX<br />
Should /dev/sdaX be /dev/sdX?<br />
<br />
--[[User:Mrln|Mrln]] ([[User talk:Mrln|talk]]) 14:13, 1 March 2013 (UTC)<br />
<br />
: This section is about installing to partition. So it is indeed /dev/sdaX. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 08:43, 4 March 2013 (UTC)<br />
<br />
::But the section does also have "Partitionless Disk" in its name, and there is the following text snippet just before the example given: " to a partitionless disk (also called superfloppy) or to a floppy disk". <br />
::I am not sure, but afaik for a Partitionless Disk the syntax given is indeed wrong (should be /dev/sdX). Not sure how the section could be reworded to make it not-confusing. Giving two separate examples runs the danger of making the whole article too bloated. [[User:Bwid|Bwid]] ([[User talk:Bwid|talk]]) 09:35, 4 March 2013 (UTC)<br />
<br />
== Boot Arch iso from LVM (LVM hook in Arch iso?) ==<br />
<br />
I added the following in /etc/grub.d/40_custom:<br />
<br />
{{bc|<nowiki><br />
menuentry "archlinux-2013.03.01-dual.iso" --class iso {<br />
insmod loopback<br />
insmod iso9660<br />
insmod part_gpt<br />
insmod lvm<br />
insmod ext2<br />
set root='lvm/vg0-arch'<br />
set isofile='/home/jordy/data/isos/archlinux-2013.03.01-dual.iso'<br />
loopback loop $isofile<br />
linux (loop)/arch/boot/x86_64/vmlinuz archisolabel=ARCH_201303 img_dev=$root img_loop=$isofile earlymodules=loop<br />
initrd (loop)/arch/boot/x86_64/archiso.img<br />
}<br />
</nowiki>}}<br />
<br />
My / is on LVM, the iso boots, but it can't mount the loop device (the iso) because the LVM hook hasn't been run before that. Is there a way to fix this and enable the LVM hook in the iso (without modifying it)<br />
<br />
[[User:Jordz|jordz]] ([[User talk:Jordz|talk]]) 22:34, 24 March 2013 (UTC)<br />
<br />
== How to create EFI directory? ==<br />
<br />
According to [[GRUB#Check_if_you_have_GPT_and_an_ESP]], 'On [the EFI partition], there should be a folder called "EFI".' How is this created? I followed the [[UEFI#EFI_System_Partition|instructions]]:<br />
<br />
{{bc|parted /dev/sda print<br />
[...]<br />
Number [...] File system Name Flags<br />
1 fat32 EFI System boot}}<br />
<br />
First, the instructions result in a "fat32" file system, and not a "vfat" one (as described in [[GRUB#Check_if_you_have_GPT_and_an_ESP]]). AFAICT "fat32" is not a subclass of "vfat", so that should probably be changed. Second, this partition, when mounted, does not contain anything at all, and I could find no instructions on how the "EFI" directory is supposed to be created. I expect some tool other than mkdir is supposed to do this (and possibly more)?<br />
<br />
Other articles have mentioned a directory "/boot/efi". I guess that's just a case of FAT file systems being case insensitive, or does it actually matter?<br />
<br />
== "Install to partition or partitionless disk" ambiguous or no longer correct? ==<br />
<br />
I just completed a test install of Arch, with Btrfs formatted directly on the disk (no MBR, no GPT). I followed the steps for the "Install to Disk" section, which is similar to how I have installed in the past following the section: "BIOS systems," "GUID Partition Table (GPT) specific instructions."<br />
<br />
Long story short, I did not follow the steps as outlined under the "Install to partition or partitionless disk" and my test install in VMWare successfully booted. I do not know if this is something peculiar with Btrfs, or if the steps outlined under the section in question are no longer needed, or are only relevant for a specific use case, but the title of the section as it currently exists seems unclear following this test.<br />
<br />
Bootloaders are not my strong suite, any thoughts or additional perspective on this?<br />
<br />
[[User:AdamT|AdamT]] ([[User_talk:AdamT|Talk]]) 05:23, 22 November 2013 (UTC)<br />
<br />
: Just a brief follow-up to this, I have completed this installation on hardware now as well. Further investigation is warranted though, as I want to investigate exactly how the drive is being structured by Btrfs and GRUB. -- [[User:AdamT|AdamT]] ([[User_talk:AdamT|Talk]]) 03:32, 30 November 2013 (UTC)<br />
<br />
== os-prober does not require partition to be mounted ==<br />
<br />
it says that os-probe only works for mounted drives, but this is incorrect. I've removed that statement, but I'm wondering why it was there. Are there conditions where this is true?<br />
<br />
:Thanks for the correction, I'm responsible for adding that information.[https://wiki.archlinux.org/index.php?title=GRUB&diff=next&oldid=283014] It was based mainly on this old "discussion": [https://wiki.archlinux.org/index.php?title=Talk%3AGRUB&diff=215696&oldid=215684]. Even if there are cases when it is necessary to mount the partition, it's certainly not necessary... -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 20:14, 5 December 2013 (UTC)<br />
<br />
== Is there something missing? ==<br />
<br />
I tried this on a Virtual Machine and on two physical machines and i always end up with "EFI variables are not supported on this system"<br />
<br />
This seems due to an bug that arch-chroot does not mount the efivars directory at all inside the chroot.<br />
<br />
You have to run <br />
# mount -t efivarfs efivarfs /sys/firmware/efi/efivars<br />
or it will not work so this should be in the article.</div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:VA-API&diff=266648Talk:VA-API2013-07-16T19:01:17Z<p>Vamp898: /* VLC */ new section</p>
<hr />
<div>== VLC ==<br />
<br />
Doesnt VLC support VA-API too?<br />
<br />
Is VLC in Archlinux compiled without VA-API Support?</div>Vamp898https://wiki.archlinux.org/index.php?title=RAID&diff=216994RAID2012-08-08T06:36:46Z<p>Vamp898: /* Build the array */</p>
<hr />
<div>[[Category:Getting and installing Arch]]<br />
[[Category:File systems]]<br />
{{Article summary start}}<br />
{{Article summary text|This article explains what RAID is and how to install, configure and maintain it.}}<br />
{{Article summary heading|Required software}}<br />
{{Article summary link|mdadm|http://neil.brown.name/blog/mdadm}}<br />
{{Article summary link|parted|http://www.gnu.org/software/parted/}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Software RAID and LVM}}<br />
{{Article summary wiki|Installing with Fake RAID}}<br />
{{Article summary wiki|Convert a single drive system to RAID}}<br />
{{Article summary end}}<br />
<br />
== Introduction ==<br />
{{Wikipedia|RAID}}<br />
Redundant Array of Independent Disks (RAID) devices are virtual devices created from two or more real block devices. This allows multiple devices (typically disk drives or partitions thereof) to be combined into a single device to hold (for example) a single filesystem. RAID is designed to prevent data loss in the event of a hard disk failure. There are different [[Wikipedia:Standard RAID levels|levels of RAID]].<br />
<br />
===Standard RAID levels===<br />
; [[Wikipedia:Standard RAID levels#RAID 0|RAID 0]]: Uses striping to combine disks. Not really RAID in that it ''provides no redundancy''. It does, however, ''provide a big speed benefit''. This example will utilize RAID 0 for swap, on the assumption that a desktop system is being used, where the speed increase is worth the possibility of system crash if one of your drives fails. On a server, a RAID 1 or RAID 5 array is more appropriate. The size of a RAID 0 array block device is the size of the smallest component partition times the number of component partitions.<br />
; [[Wikipedia:Standard RAID levels#RAID 1|RAID 1]]: The most straightforward RAID level: straight mirroring. As with other RAID levels, it only makes sense if the partitions are on different physical disk drives. If one of those drives fails, the block device provided by the RAID array will continue to function as normal. The example will be using RAID 1 for everything except swap. Note that RAID 1 is the only option for the boot partition, because bootloaders (which read the boot partition) do not understand RAID, but a RAID 1 component partition can be read as a normal partition. The size of a RAID 1 array block device is the size of the smallest component partition.<br />
; [[Wikipedia:Standard RAID levels#RAID 5|RAID 5]]: Requires 3 or more physical drives, and provides the redundancy of RAID 1 combined with the speed and size benefits of RAID 0. RAID 5 uses striping, like RAID 0, but also stores parity blocks distributed across each member disk. In the event of a failed disk, these parity blocks are used to reconstruct the data on a replacement disk. RAID 5 can withstand the loss of one member disk.<br />
: {{Note|RAID 5 is a common choice due to its combination of speed and data redundancy. The caveat is that if 1 drive were to fail and before that drive was replaced another drive failed, all data will be lost. For excellent information regarding this, see the ''[http://ubuntuforums.org/showthread.php?t&#x3d;1588106 RAID5 Risks]'' discussion thread on the Ubuntu forums. The best alternative to RAID5 when redundancy is crucial is RAID 10.}}<br />
<br />
===Nested RAID levels===<br />
; [[Wikipedia:Nested RAID levels#RAID 1 + 0|RAID 1+0]]: Commonly referred to as ''RAID 10'', is a nested RAID that combines two of the standard levels of RAID to gain performance and additional redundancy.<br />
<br />
=== Redundancy ===<br />
{{Warning|Installing a system with RAID is a complex process that may destroy data. Be sure to backup all data before proceeding.}}<br />
<br />
RAID does not provide a guarantee that your data is safe. If there is a fire, if your computer is stolen or if you have multiple hard drive failures, RAID will not protect your data. Therefore it is important to make backups (see [[Backup Programs]]). Whether you use tape drives, DVDs, CDROMs or another computer, keep an current copy of your data out of your computer (and preferably offsite). Get into the habit of making regular backups. You can also divide the data on your computer into current and archived directories. Then back up the current data frequently, and the archived data occasionally.<br />
<br />
=== RAID level comparison ===<br />
{| class="wikitable" border="1" cellpadding="5" cellspacing="0"<br />
! RAID level!!Data redundancy!!Physical drive utilization!!Read performance!!Write performance!!Min drives!!Max drives<br />
|-<br />
| '''0'''||'''No'''||100%||'''Superior'''||'''Superior'''||1||16<br />
|-<br />
| '''1'''||Yes||50%||Very high||Very high||2||2<br />
|-<br />
| '''5'''||Yes||67% - 94%||'''Superior'''||High||3||16<br />
|-<br />
| '''6'''||Yes||50% - 88%||Very High||High||4||16<br />
|-<br />
| '''10'''||Yes||50%||Very high||Very high||4||16<br />
|}<br />
<br />
==Installation==<br />
[[pacman|Install]] {{Pkg|mdadm}} and {{Pkg|parted}}, available in the [[Official Repositories]].<br />
<br />
===Prepare the device===<br />
To prevent possible issues down the line, you should consider wiping your entire disk before setting up RAID. This should be repeated for each disk you will be using for RAID, these commands completely erase anything currently on the device!<br />
{{Warning|These steps erase everything on the {{ic|/dev/disk-to-clean}} so type carefully}}<br />
<br />
Erase any old RAID configuration info<br />
{{bc|1=# mdadm --zero-superblock /dev/disk-to-clean}}<br />
<br />
Erase all partition-table data<br />
{{bc|1=# dd if=/dev/zero of=/dev/disk-to-clean bs=4096 count=1}}<br />
<br />
Make sure kernel clears old entries<br />
{{bc|1=# partprobe -s}}<br />
<br />
Verify the entries in {{ic|/etc/fstab}} and {{ic|/etc/mdadm.conf}}<br />
<br />
With a software RAID, disabling the hard disk cache will help prevent data loss during power loss, as long as you do not use a [[Wikipedia:Uninterruptible power supply|UPS]]. Repeat the command for each drive in the array. Note however, that this decreases performance.<br />
{{bc|# hdparm -W 0 /dev/path_to_disk}}<br />
<br />
===Create the partition table===<br />
The RAID setup varies between different RAID-levels. If you know what RAID you want and already set up your hardware accordingly, you can proceed with formatting the disks you want in your array. It is also possible to create a RAID-array directly on the raw disks (without partitions), but not recommended because it can cause problems when swapping a failed disk.<br />
<br />
When replacing a failed disk of a RAID-array, the new disk has to be exactly the same size as the failed disk or bigger — otherwise the array recreation process will not work. Even hard drives of the same manufacturer and model can have small size differences. By leaving a little space at the end of the disk unallocated one can compensate for the size differences between drives, which makes choosing a replacement drive model easier. Therefore, it is good practice to leave about 100 MB of unallocated space at the end of the disk. <br />
<br />
Format one of the drives in the array with your favorite tool. For example,<br />
{{bc|# cfdisk /dev/path_to_disk}}<br />
{{Tip|Using GParted to create the partitions and align them to the cylinder will create optimized disk alignment. This can be achieved using the [http://gparted.sourceforge.net/livecd.php Gnome Partition Editor Live Media].}}<br />
<br />
====Partition code====<br />
The two [[Wikipedia:Partition types|partition type]]s that are applicable to RAID devices are Non-FS data and Linux RAID auto. Non-FS data is recommended, as your array is not auto-assembled during boot. With Linux RAID auto one may run into trouble when booting from a live-cd or when installing the degraded RAID-array in a different system (maybe with other degraded RAID-arrays in worst case) as Linux will try to automatically assemble and resync the array which could render your data on the array unreadable if it fails.<br />
<br />
{{note|cfdisk and mkpart use a set of "filesystem types" to set the partition codes. Each type corresponds to a partition code (see [http://www.gnu.org/software/parted/manual/html_node/mkpart.html#mkpart Parted User's Manual]). It uses the {{ic|da}} type to denote Non-FS data and {{ic|fd}} for Linux RAID auto.}}<br />
<br />
===Copy the partition table===<br />
Once you have a properly partitioned and aligned disk you can copy the setup to any other disk.<br />
<br />
Verify your partitions meet basic requirements:<br />
{{bc|1=# sfdisk -lRV /dev/path_to_formatted_array_disk}}<br />
<br />
Dump the partition table from the formatted disk to a file:<br />
{{bc|<nowiki># sfdisk -d /dev/path_to_formatted_array_disk > ~/formatted_array.dump</nowiki>}}<br />
<br />
Copy the partition table from the disk dump file to all other disks in the array: <br />
{{bc|<nowiki># sfdisk /dev/path_to_unformatted_array_disk < ~/formatted_array.dump</nowiki>}}<br />
<br />
After repeating the command for every unformatted disk of the array, verify that the disks are identical with<br />
# fdisk -l<br />
or<br />
# sfdisk -l -u S<br />
<br />
===Build the array===<br />
Now build the array (e.g. [http://fomori.org/blog/blog/2011/10/19/raid5-server-to-hold-all-your-data-%e2%80%94-the-nas-alternative/ post on RAID5 setup]).<br />
<br />
{{Warning|Make sure to change the '''bold values''' below to match your setup.}}<br />
<br />
{{bc| <nowiki># mdadm --create --verbose /dev/md/your_array --level=</nowiki>'''5''' <nowiki>--metadata=</nowiki>'''1.2''' <nowiki>--chunk=</nowiki>'''256''' <nowiki>--raid-devices=</nowiki>'''5 /dev/path_to_array_disk-1 /dev/path_to_array_disk-2 /dev/path_to_array_disk-3 /dev/path_to_array_disk-4 /dev/path_to_array_disk-5''' }}<br />
<br />
The array is created under the virtual device ''/dev/md/your_array'', assembled and ready to use (in degraded mode). You can directly start using it while mdadm resyncs the array in the background. It can take a long time to restore parity, you can check the progress with:<br />
<br />
{{bc|$ cat /proc/mdstat}}<br />
<br />
===Update configuration file===<br />
Since the installer builds the initrd using {{ic|/etc/mdadm.conf}} in the target system, you should update the default configuration file. The default file can be overwritten using the redirection operator, because it only contains explanatory comments.<br />
<br />
Redirect the contents of the metadata stored on the named devices to the configuration file:<br />
# mdadm --examine --scan > /etc/mdadm.conf<br />
<br />
{{Note|If you are updating your RAID configuration from within the Arch Installer by swapping to another TTY, you will need to ensure that you are writing to the correct {{ic|mdadm.conf}} file:}}<br />
# mdadm --examine --scan > /mnt/etc/mdadm.conf<br />
<br />
Once the configuration file has been updated the array can be assembled using mdadm:<br />
# mdadm --assemble --scan<br />
<br />
===Configure filesystem===<br />
The array can now be formatted like any other disk, just keep in mind that:<br />
* Due to the large volume size not all filesystems are suited (see: [[Wikipedia:Comparison of file systems#Limits|File system limits]]).<br />
* The filesystem should support growing and shrinking while online (see: [[Wikipedia:Comparison of file systems#Features|File system features]]).<br />
* The biggest performance gain you can achieve on a raid array is to make sure you format the volume aligned to your RAID stripe size (see: [http://wiki.centos.org/HowTos/Disk_Optimization RAID Math]).<br />
<br />
===Assemble array on boot===<br />
If you selected the Non-FS data partition code the array will not be automatically recreated after the next boot. To assemble the array issue the following command:<br />
{{bc| <nowiki># mdadm --assemble --scan /dev/your_array --uuid=your_array_uuid</nowiki> }}<br />
<br />
or write it to {{ic|rc.local}}.<br />
<br />
== Mounting from a Live CD ==<br />
<br />
If you want to mount your RAID partition from a Live CD, use<br />
# mdadm --assemble /dev/md0 /dev/sda3 /dev/sdb3 /dev/sdc3<br />
<br />
(or whatever mdX and drives apply to you)<br />
<br />
{{Note | Live CDs like [http://www.sysresccd.org/Main_Page SystemrescueCD] assemble the RAID arrays automatically at boot time if you used the partition type fd at the install of the array)}}<br />
<br />
==Removing device, stop using the array==<br />
<br />
You can remove a device from the array after you mark it as faulty.<br />
<br />
# mdadm --fail /dev/md0 /dev/sdxx<br />
<br />
Then you can remove it from the array.<br />
<br />
# mdadm -r /dev/md0 /dev/sdxx<br />
<br />
Remove device permanently (for example in the case you want to use it individally from now on).<br />
Issue the two commands described above then:<br />
<br />
# mdadm --zero-superblock /dev/sdxx<br />
<br />
After this you can use the disk as you did before creating the array.<br />
<br />
{{Warning | If you reuse the removed disk without zeroing the superblock you will '''LOSE''' all your data next boot. (After mdadm will try to use it as the part of the raid array). '''DO NOT''' issue this command on linear or RAID0 arrays or you will '''LOSE''' all your data on the raid array. }}<br />
<br />
Stop using an array:<br />
# Umount target array<br />
# Repeat the three command described in the beginning of this section on each device.<br />
# Stop the array with: {{ic|mdadm --stop /dev/md0}}<br />
# Remove the corresponding line from /etc/mdadm.conf<br />
<br />
== Adding a device to the array ==<br />
Adding new devices with mdadm can be done on a running system with the devices mounted.<br />
Partition the new device "/dev/sdx" using the same layout as one of those already in the arrays "/dev/sda".<br />
# sfdisk -d /dev/sda > table<br />
# sfdisk /dev/sdx < table<br />
<br />
Assemble the RAID arrays if they are not already assembled:<br />
# mdadm --assemble /dev/md1 /dev/sda1 /dev/sdb1 /dev/sdc1<br />
# mdadm --assemble /dev/md2 /dev/sda2 /dev/sdb2 /dev/sdc2<br />
# mdadm --assemble /dev/md0 /dev/sda3 /dev/sdb3 /dev/sdc3<br />
<br />
First, add the new device as a Spare Device to all of the arrays. We will assume you have followed the guide and use separate arrays for /boot RAID 1 (/dev/md1), swap RAID 1 (/dev/md2) and root RAID 5 (/dev/md0).<br />
# mdadm --add /dev/md1 /dev/sdx1<br />
# mdadm --add /dev/md2 /dev/sdx2<br />
# mdadm --add /dev/md0 /dev/sdx3<br />
<br />
This should not take long for mdadm to do. Check the progress with:<br />
# cat /proc/mdstat<br />
<br />
Check that the device has been added with the command:<br />
# mdadm --misc --detail /dev/md0<br />
<br />
It should be listed as a Spare Device.<br />
<br />
Tell mdadm to grow the arrays from 3 devices to 4 (or however many devices you want to use):<br />
# mdadm --grow -n 4 /dev/md1<br />
# mdadm --grow -n 4 /dev/md2<br />
# mdadm --grow -n 4 /dev/md0<br />
<br />
This will probably take several hours. You need to wait for it to finish before you can continue. Check the progress in /proc/mdstat. The RAID 1 arrays should automatically sync /boot and swap but you need to install Grub on the MBR of the new device manually. [[Installing_with_Software_RAID_or_LVM#Install_Grub_on_the_Alternate_Boot_Drives]]<br />
<br />
The rest of this guide will explain how to resize the underlying LVM and filesystem on the RAID 5 array.<br />
{{Note|I am not sure if this can be done with the volumes mounted and will assume you are booting from a live-cd/usb}}<br />
<br />
If you are have encrypted your LVM volumes with LUKS, you need resize the LUKS volume first. Otherwise, ignore this step.<br />
# cryptsetup luksOpen /dev/md0 cryptedlvm<br />
# cryptsetup resize cryptedlvm<br />
<br />
Activate the LVM volume groups:<br />
# vgscan<br />
# vgchange -ay<br />
<br />
Resize the LVM Physical Volume /dev/md0 (or e.g. /dev/mapper/cryptedlvm if using LUKS) to take up all the available space on the array. You can list them with the command "pvdisplay".<br />
# pvresize /dev/md0<br />
<br />
Resize the Logical Volume you wish to allocate the new space to. You can list them with "lvdisplay". Assuming you want to put it all to your /home volume:<br />
# lvresize -l +100%FREE /dev/array/home<br />
<br />
To resize the filesystem to allocate the new space use the appropriate tool. If using ext2 you can resize a mounted filesystem with ext2online. For ext3 you can use resize2fs or ext2resize but not while mounted.<br />
<br />
You should check the filesystem before resizing.<br />
# e2fsck -f /dev/array/home<br />
# resize2fs /dev/array/home<br />
<br />
Read the manuals for lvresize and resize2fs if you want to customize the sizes for the volumes.<br />
<br />
== Monitoring ==<br />
A simple one-liner that prints out the status of your Raid devices:<br />
{{hc|awk '/^md/ {printf "%s: ", $1}; /blocks/ {print $NF}' </proc/mdstat<br />
|md1: [UU]<br />
md0: [UU]<br />
}}<br />
<br />
===Watch mdstat===<br />
{{bc|watch -t 'cat /proc/mdstat'}}<br />
Or preferably using {{pkg|tmux}}<br />
{{bc|tmux split-window -l 12 "watch -t 'cat /proc/mdstat'"}}<br />
<br />
===Track IO with iotop===<br />
The {{pkg|iotop}} package lets you view the input/output stats for processes. Use this command to view the IO for raid threads.<br />
<br />
{{bc|<nowiki>iotop -a -p $(sed 's, , -p ,g' <<<`pgrep "_raid|_resync|jbd2"`)</nowiki>}}<br />
<br />
==Troubleshooting==<br />
If you are getting error when you reboot about "invalid raid superblock magic" and you have additional hard drives other than the ones you installed to, check that your hard drive order is correct. During installation, your RAID devices may be hdd, hde and hdf, but during boot they may be hda, hdb and hdc. Adjust your kernel line in {{ic|/boot/grub/menu.lst}} accordingly. This is what happened to me anyway.<br />
<br />
===Start arrays read-only===<br />
When an md array is started, the superblock will be written, and resync may begin. To start read-only set the kernel module {{ic|md_mod}} parameter {{ic|start_ro}}. When this is set, new arrays get an 'auto-ro' mode, which disables all internal io (superblock updates, resync, recovery) and is automatically switched to 'rw' when the first write request arrives.<br />
<br />
{{Note|The array can be set to true 'ro' mode using {{ic|mdadm -r}} before the first write request, or resync can be started without a write using {{ic|mdadm -w}}.}}<br />
<br />
To set the parameter at boot, add {{ic|<nowiki>md_mod.start_ro=1</nowiki>}} to your {{ic|/boot/grub/menu.lst}} kernel line<br />
{{bc|<nowiki>kernel /vmlinuz-linux root=/dev/sda1 ro rootwait md_mod.start_ro=1 quiet 3</nowiki>}}<br />
<br />
Or set it at module load time from {{ic|/etc/modprobe.d/}} file or from directly from {{ic|/sys/}}.<br />
{{bc|echo 1 > /sys/module/md_mod/parameters/start_ro}}<br />
<br />
===Recovering from a broken or missing drive in the raid===<br />
You might get the above mentioned error also when one of the drives breaks for whatever reason. In that case you will have to fore the raid to still turn on even with one disk short. Type this (change where needed):<br />
# mdadm --manage /dev/md0 --run<br />
<br />
Now you should be able to mount it again with something like this (if you had it in fstab):<br />
# mount /dev/md0<br />
<br />
Now the raid should be working again and available to use, however with one disk short! So, to add that one disc partition it the way like described above in #Partition_the_Hard_Drives. Once that is done you can add the new disk to the raid by doing:<br />
# mdadm --manage --add /dev/md0 /dev/sdd1<br />
<br />
If you type:<br />
# cat /proc/mdstat<br />
you probably see that the raid is now active and rebuilding.<br />
<br />
You also might want to update your configuration (see: [[#Update configuration file]]).<br />
<br />
== Benchmarking ==<br />
There are several tools for benchmarking a RAID. The most notable improvement is the speed increase when multiple threads are reading from the same RAID volume.<br />
<br />
[http://sourceforge.net/projects/tiobench/ Tiobench] specifically benchmarks these performance improvements by measuring fully-threaded I/O on the disk.<br />
<br />
[http://www.coker.com.au/bonnie++/ Bonnie++] tests database type access to one or more files, and creation, reading, and deleting of small files which can simulate the usage of programs such as Squid, INN, or Maildir format e-mail. The enclosed [http://www.coker.com.au/bonnie++/zcav/ ZCAV] program tests the performance of different zones of a hard drive without writing any data to the disk.<br />
<br />
{{ic|hdparm}} should '''NOT''' be used to benchmark a RAID, because it provides very inconsistent results.<br />
<br />
== Additional Resources ==<br />
* [http://en.gentoo-wiki.com/wiki/RAID/Software RAID/Software] on the Gentoo Wiki<br />
* [http://en.gentoo-wiki.com/wiki/Software_RAID_Install Software RAID Install] on the Gentoo Wiki<br />
* [http://www.gentoo.org/doc/en/articles/software-raid-p1.xml Software RAID in the new Linux 2.4 kernel, Part 1] and [http://www.gentoo.org/doc/en/articles/software-raid-p2.xml Part 2] in the Gentoo Linux Docs<br />
* [http://raid.wiki.kernel.org/index.php/Linux_Raid Linux RAID wiki entry] on The Linux Kernel Archives<br />
* [http://linux-101.org/howto/arch-linux-software-raid-installation-guide Arch Linux software RAID installation guide] on Linux 101<br />
* [http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/ch-raid.html Chapter 15: Redundant Array of Independent Disks (RAID)] of Red Hat Enterprise Linux 6 Documentation<br />
* [http://tldp.org/FAQ/Linux-RAID-FAQ/x37.html Linux-RAID FAQ] on the Linux Documentation Project<br />
* [http://support.dell.com/support/topics/global.aspx/support/entvideos/raid?c=us&l=en&s=gen Dell.com Raid Tutorial] - Interactive Walkthrough of Raid<br />
* [http://www.miracleas.com/BAARF/ BAARF] including ''[http://www.miracleas.com/BAARF/RAID5_versus_RAID10.txt Why should I not use RAID 5?]'' by Art S. Kagel<br />
* [http://www.linux-mag.com/id/7924/ Introduction to RAID], [http://www.linux-mag.com/id/7931/ Nested-RAID: RAID-5 and RAID-6 Based Configurations], [http://www.linux-mag.com/id/7928/ Intro to Nested-RAID: RAID-01 and RAID-10], and [http://www.linux-mag.com/id/7932/ Nested-RAID: The Triple Lindy] in Linux Magazine<br />
<br />
'''mdadm'''<br />
* [http://anonscm.debian.org/gitweb/?p=pkg-mdadm/mdadm.git;a=blob_plain;f=debian/FAQ;hb=HEAD Debian mdadm FAQ]<br />
* [http://www.kernel.org/pub/linux/utils/raid/mdadm/ mdadm source code]<br />
* [http://www.linux-mag.com/id/7939/ Software RAID on Linux with mdadm] in Linux Magazine<br />
<br />
'''Forum threads'''<br />
* [http://forums.overclockers.com.au/showthread.php?t=865333 Raid Performance Improvements with bitmaps]<br />
* 2011-08-28 - Arch Linux - [https://bbs.archlinux.org/viewtopic.php?id=125445 GRUB and GRUB2]<br />
* 2011-08-03 - Arch Linux - [https://bbs.archlinux.org/viewtopic.php?id=123698 Can't install grub2 on software RAID]<br />
* 2011-07-29 - Gentoo - [http://forums.gentoo.org/viewtopic-t-888624-start-0.html Use RAID metadata 1.2 in boot and root partition]<br />
<br />
'''RAID with encryption'''<br />
* [http://www.shimari.com/dm-crypt-on-raid/ Linux/Fedora: Encrypt /home and swap over RAID with dm-crypt] by Justin Wells</div>Vamp898https://wiki.archlinux.org/index.php?title=RAID&diff=216993RAID2012-08-08T06:36:15Z<p>Vamp898: /* Build the array */</p>
<hr />
<div>[[Category:Getting and installing Arch]]<br />
[[Category:File systems]]<br />
{{Article summary start}}<br />
{{Article summary text|This article explains what RAID is and how to install, configure and maintain it.}}<br />
{{Article summary heading|Required software}}<br />
{{Article summary link|mdadm|http://neil.brown.name/blog/mdadm}}<br />
{{Article summary link|parted|http://www.gnu.org/software/parted/}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Software RAID and LVM}}<br />
{{Article summary wiki|Installing with Fake RAID}}<br />
{{Article summary wiki|Convert a single drive system to RAID}}<br />
{{Article summary end}}<br />
<br />
== Introduction ==<br />
{{Wikipedia|RAID}}<br />
Redundant Array of Independent Disks (RAID) devices are virtual devices created from two or more real block devices. This allows multiple devices (typically disk drives or partitions thereof) to be combined into a single device to hold (for example) a single filesystem. RAID is designed to prevent data loss in the event of a hard disk failure. There are different [[Wikipedia:Standard RAID levels|levels of RAID]].<br />
<br />
===Standard RAID levels===<br />
; [[Wikipedia:Standard RAID levels#RAID 0|RAID 0]]: Uses striping to combine disks. Not really RAID in that it ''provides no redundancy''. It does, however, ''provide a big speed benefit''. This example will utilize RAID 0 for swap, on the assumption that a desktop system is being used, where the speed increase is worth the possibility of system crash if one of your drives fails. On a server, a RAID 1 or RAID 5 array is more appropriate. The size of a RAID 0 array block device is the size of the smallest component partition times the number of component partitions.<br />
; [[Wikipedia:Standard RAID levels#RAID 1|RAID 1]]: The most straightforward RAID level: straight mirroring. As with other RAID levels, it only makes sense if the partitions are on different physical disk drives. If one of those drives fails, the block device provided by the RAID array will continue to function as normal. The example will be using RAID 1 for everything except swap. Note that RAID 1 is the only option for the boot partition, because bootloaders (which read the boot partition) do not understand RAID, but a RAID 1 component partition can be read as a normal partition. The size of a RAID 1 array block device is the size of the smallest component partition.<br />
; [[Wikipedia:Standard RAID levels#RAID 5|RAID 5]]: Requires 3 or more physical drives, and provides the redundancy of RAID 1 combined with the speed and size benefits of RAID 0. RAID 5 uses striping, like RAID 0, but also stores parity blocks distributed across each member disk. In the event of a failed disk, these parity blocks are used to reconstruct the data on a replacement disk. RAID 5 can withstand the loss of one member disk.<br />
: {{Note|RAID 5 is a common choice due to its combination of speed and data redundancy. The caveat is that if 1 drive were to fail and before that drive was replaced another drive failed, all data will be lost. For excellent information regarding this, see the ''[http://ubuntuforums.org/showthread.php?t&#x3d;1588106 RAID5 Risks]'' discussion thread on the Ubuntu forums. The best alternative to RAID5 when redundancy is crucial is RAID 10.}}<br />
<br />
===Nested RAID levels===<br />
; [[Wikipedia:Nested RAID levels#RAID 1 + 0|RAID 1+0]]: Commonly referred to as ''RAID 10'', is a nested RAID that combines two of the standard levels of RAID to gain performance and additional redundancy.<br />
<br />
=== Redundancy ===<br />
{{Warning|Installing a system with RAID is a complex process that may destroy data. Be sure to backup all data before proceeding.}}<br />
<br />
RAID does not provide a guarantee that your data is safe. If there is a fire, if your computer is stolen or if you have multiple hard drive failures, RAID will not protect your data. Therefore it is important to make backups (see [[Backup Programs]]). Whether you use tape drives, DVDs, CDROMs or another computer, keep an current copy of your data out of your computer (and preferably offsite). Get into the habit of making regular backups. You can also divide the data on your computer into current and archived directories. Then back up the current data frequently, and the archived data occasionally.<br />
<br />
=== RAID level comparison ===<br />
{| class="wikitable" border="1" cellpadding="5" cellspacing="0"<br />
! RAID level!!Data redundancy!!Physical drive utilization!!Read performance!!Write performance!!Min drives!!Max drives<br />
|-<br />
| '''0'''||'''No'''||100%||'''Superior'''||'''Superior'''||1||16<br />
|-<br />
| '''1'''||Yes||50%||Very high||Very high||2||2<br />
|-<br />
| '''5'''||Yes||67% - 94%||'''Superior'''||High||3||16<br />
|-<br />
| '''6'''||Yes||50% - 88%||Very High||High||4||16<br />
|-<br />
| '''10'''||Yes||50%||Very high||Very high||4||16<br />
|}<br />
<br />
==Installation==<br />
[[pacman|Install]] {{Pkg|mdadm}} and {{Pkg|parted}}, available in the [[Official Repositories]].<br />
<br />
===Prepare the device===<br />
To prevent possible issues down the line, you should consider wiping your entire disk before setting up RAID. This should be repeated for each disk you will be using for RAID, these commands completely erase anything currently on the device!<br />
{{Warning|These steps erase everything on the {{ic|/dev/disk-to-clean}} so type carefully}}<br />
<br />
Erase any old RAID configuration info<br />
{{bc|1=# mdadm --zero-superblock /dev/disk-to-clean}}<br />
<br />
Erase all partition-table data<br />
{{bc|1=# dd if=/dev/zero of=/dev/disk-to-clean bs=4096 count=1}}<br />
<br />
Make sure kernel clears old entries<br />
{{bc|1=# partprobe -s}}<br />
<br />
Verify the entries in {{ic|/etc/fstab}} and {{ic|/etc/mdadm.conf}}<br />
<br />
With a software RAID, disabling the hard disk cache will help prevent data loss during power loss, as long as you do not use a [[Wikipedia:Uninterruptible power supply|UPS]]. Repeat the command for each drive in the array. Note however, that this decreases performance.<br />
{{bc|# hdparm -W 0 /dev/path_to_disk}}<br />
<br />
===Create the partition table===<br />
The RAID setup varies between different RAID-levels. If you know what RAID you want and already set up your hardware accordingly, you can proceed with formatting the disks you want in your array. It is also possible to create a RAID-array directly on the raw disks (without partitions), but not recommended because it can cause problems when swapping a failed disk.<br />
<br />
When replacing a failed disk of a RAID-array, the new disk has to be exactly the same size as the failed disk or bigger — otherwise the array recreation process will not work. Even hard drives of the same manufacturer and model can have small size differences. By leaving a little space at the end of the disk unallocated one can compensate for the size differences between drives, which makes choosing a replacement drive model easier. Therefore, it is good practice to leave about 100 MB of unallocated space at the end of the disk. <br />
<br />
Format one of the drives in the array with your favorite tool. For example,<br />
{{bc|# cfdisk /dev/path_to_disk}}<br />
{{Tip|Using GParted to create the partitions and align them to the cylinder will create optimized disk alignment. This can be achieved using the [http://gparted.sourceforge.net/livecd.php Gnome Partition Editor Live Media].}}<br />
<br />
====Partition code====<br />
The two [[Wikipedia:Partition types|partition type]]s that are applicable to RAID devices are Non-FS data and Linux RAID auto. Non-FS data is recommended, as your array is not auto-assembled during boot. With Linux RAID auto one may run into trouble when booting from a live-cd or when installing the degraded RAID-array in a different system (maybe with other degraded RAID-arrays in worst case) as Linux will try to automatically assemble and resync the array which could render your data on the array unreadable if it fails.<br />
<br />
{{note|cfdisk and mkpart use a set of "filesystem types" to set the partition codes. Each type corresponds to a partition code (see [http://www.gnu.org/software/parted/manual/html_node/mkpart.html#mkpart Parted User's Manual]). It uses the {{ic|da}} type to denote Non-FS data and {{ic|fd}} for Linux RAID auto.}}<br />
<br />
===Copy the partition table===<br />
Once you have a properly partitioned and aligned disk you can copy the setup to any other disk.<br />
<br />
Verify your partitions meet basic requirements:<br />
{{bc|1=# sfdisk -lRV /dev/path_to_formatted_array_disk}}<br />
<br />
Dump the partition table from the formatted disk to a file:<br />
{{bc|<nowiki># sfdisk -d /dev/path_to_formatted_array_disk > ~/formatted_array.dump</nowiki>}}<br />
<br />
Copy the partition table from the disk dump file to all other disks in the array: <br />
{{bc|<nowiki># sfdisk /dev/path_to_unformatted_array_disk < ~/formatted_array.dump</nowiki>}}<br />
<br />
After repeating the command for every unformatted disk of the array, verify that the disks are identical with<br />
# fdisk -l<br />
or<br />
# sfdisk -l -u S<br />
<br />
===Build the array===<br />
Now build the array (e.g. [http://fomori.org/blog/blog/2011/10/19/raid5-server-to-hold-all-your-data-%e2%80%94-the-nas-alternative/ post on RAID5 setup]).<br />
<br />
{{Warning|Make sure to change the '''bold values''' below to match your setup.}}<br />
<br />
{{bc| <nowiki># mdadm --create --verbose /dev/md/your_array --level=</nowiki>'''5''' <nowiki>--metadata=</nowiki>'''1.2''' <nowiki>--chunk=</nowiki>'''256''' <nowiki>--raid-devices=</nowiki>'''5 /dev/path_to_array_disk-1 /dev/path_to_array_disk-2 /dev/path_to_array_disk-3 /dev/path_to_array_disk-4 /dev/path_to_array_disk-5''' }}<br />
<br />
The array is created under the virtual device ''/dev/your_array'', assembled and ready to use (in degraded mode). You can directly start using it while mdadm resyncs the array in the background. It can take a long time to restore parity, you can check the progress with:<br />
<br />
{{bc|$ cat /proc/mdstat}}<br />
<br />
===Update configuration file===<br />
Since the installer builds the initrd using {{ic|/etc/mdadm.conf}} in the target system, you should update the default configuration file. The default file can be overwritten using the redirection operator, because it only contains explanatory comments.<br />
<br />
Redirect the contents of the metadata stored on the named devices to the configuration file:<br />
# mdadm --examine --scan > /etc/mdadm.conf<br />
<br />
{{Note|If you are updating your RAID configuration from within the Arch Installer by swapping to another TTY, you will need to ensure that you are writing to the correct {{ic|mdadm.conf}} file:}}<br />
# mdadm --examine --scan > /mnt/etc/mdadm.conf<br />
<br />
Once the configuration file has been updated the array can be assembled using mdadm:<br />
# mdadm --assemble --scan<br />
<br />
===Configure filesystem===<br />
The array can now be formatted like any other disk, just keep in mind that:<br />
* Due to the large volume size not all filesystems are suited (see: [[Wikipedia:Comparison of file systems#Limits|File system limits]]).<br />
* The filesystem should support growing and shrinking while online (see: [[Wikipedia:Comparison of file systems#Features|File system features]]).<br />
* The biggest performance gain you can achieve on a raid array is to make sure you format the volume aligned to your RAID stripe size (see: [http://wiki.centos.org/HowTos/Disk_Optimization RAID Math]).<br />
<br />
===Assemble array on boot===<br />
If you selected the Non-FS data partition code the array will not be automatically recreated after the next boot. To assemble the array issue the following command:<br />
{{bc| <nowiki># mdadm --assemble --scan /dev/your_array --uuid=your_array_uuid</nowiki> }}<br />
<br />
or write it to {{ic|rc.local}}.<br />
<br />
== Mounting from a Live CD ==<br />
<br />
If you want to mount your RAID partition from a Live CD, use<br />
# mdadm --assemble /dev/md0 /dev/sda3 /dev/sdb3 /dev/sdc3<br />
<br />
(or whatever mdX and drives apply to you)<br />
<br />
{{Note | Live CDs like [http://www.sysresccd.org/Main_Page SystemrescueCD] assemble the RAID arrays automatically at boot time if you used the partition type fd at the install of the array)}}<br />
<br />
==Removing device, stop using the array==<br />
<br />
You can remove a device from the array after you mark it as faulty.<br />
<br />
# mdadm --fail /dev/md0 /dev/sdxx<br />
<br />
Then you can remove it from the array.<br />
<br />
# mdadm -r /dev/md0 /dev/sdxx<br />
<br />
Remove device permanently (for example in the case you want to use it individally from now on).<br />
Issue the two commands described above then:<br />
<br />
# mdadm --zero-superblock /dev/sdxx<br />
<br />
After this you can use the disk as you did before creating the array.<br />
<br />
{{Warning | If you reuse the removed disk without zeroing the superblock you will '''LOSE''' all your data next boot. (After mdadm will try to use it as the part of the raid array). '''DO NOT''' issue this command on linear or RAID0 arrays or you will '''LOSE''' all your data on the raid array. }}<br />
<br />
Stop using an array:<br />
# Umount target array<br />
# Repeat the three command described in the beginning of this section on each device.<br />
# Stop the array with: {{ic|mdadm --stop /dev/md0}}<br />
# Remove the corresponding line from /etc/mdadm.conf<br />
<br />
== Adding a device to the array ==<br />
Adding new devices with mdadm can be done on a running system with the devices mounted.<br />
Partition the new device "/dev/sdx" using the same layout as one of those already in the arrays "/dev/sda".<br />
# sfdisk -d /dev/sda > table<br />
# sfdisk /dev/sdx < table<br />
<br />
Assemble the RAID arrays if they are not already assembled:<br />
# mdadm --assemble /dev/md1 /dev/sda1 /dev/sdb1 /dev/sdc1<br />
# mdadm --assemble /dev/md2 /dev/sda2 /dev/sdb2 /dev/sdc2<br />
# mdadm --assemble /dev/md0 /dev/sda3 /dev/sdb3 /dev/sdc3<br />
<br />
First, add the new device as a Spare Device to all of the arrays. We will assume you have followed the guide and use separate arrays for /boot RAID 1 (/dev/md1), swap RAID 1 (/dev/md2) and root RAID 5 (/dev/md0).<br />
# mdadm --add /dev/md1 /dev/sdx1<br />
# mdadm --add /dev/md2 /dev/sdx2<br />
# mdadm --add /dev/md0 /dev/sdx3<br />
<br />
This should not take long for mdadm to do. Check the progress with:<br />
# cat /proc/mdstat<br />
<br />
Check that the device has been added with the command:<br />
# mdadm --misc --detail /dev/md0<br />
<br />
It should be listed as a Spare Device.<br />
<br />
Tell mdadm to grow the arrays from 3 devices to 4 (or however many devices you want to use):<br />
# mdadm --grow -n 4 /dev/md1<br />
# mdadm --grow -n 4 /dev/md2<br />
# mdadm --grow -n 4 /dev/md0<br />
<br />
This will probably take several hours. You need to wait for it to finish before you can continue. Check the progress in /proc/mdstat. The RAID 1 arrays should automatically sync /boot and swap but you need to install Grub on the MBR of the new device manually. [[Installing_with_Software_RAID_or_LVM#Install_Grub_on_the_Alternate_Boot_Drives]]<br />
<br />
The rest of this guide will explain how to resize the underlying LVM and filesystem on the RAID 5 array.<br />
{{Note|I am not sure if this can be done with the volumes mounted and will assume you are booting from a live-cd/usb}}<br />
<br />
If you are have encrypted your LVM volumes with LUKS, you need resize the LUKS volume first. Otherwise, ignore this step.<br />
# cryptsetup luksOpen /dev/md0 cryptedlvm<br />
# cryptsetup resize cryptedlvm<br />
<br />
Activate the LVM volume groups:<br />
# vgscan<br />
# vgchange -ay<br />
<br />
Resize the LVM Physical Volume /dev/md0 (or e.g. /dev/mapper/cryptedlvm if using LUKS) to take up all the available space on the array. You can list them with the command "pvdisplay".<br />
# pvresize /dev/md0<br />
<br />
Resize the Logical Volume you wish to allocate the new space to. You can list them with "lvdisplay". Assuming you want to put it all to your /home volume:<br />
# lvresize -l +100%FREE /dev/array/home<br />
<br />
To resize the filesystem to allocate the new space use the appropriate tool. If using ext2 you can resize a mounted filesystem with ext2online. For ext3 you can use resize2fs or ext2resize but not while mounted.<br />
<br />
You should check the filesystem before resizing.<br />
# e2fsck -f /dev/array/home<br />
# resize2fs /dev/array/home<br />
<br />
Read the manuals for lvresize and resize2fs if you want to customize the sizes for the volumes.<br />
<br />
== Monitoring ==<br />
A simple one-liner that prints out the status of your Raid devices:<br />
{{hc|awk '/^md/ {printf "%s: ", $1}; /blocks/ {print $NF}' </proc/mdstat<br />
|md1: [UU]<br />
md0: [UU]<br />
}}<br />
<br />
===Watch mdstat===<br />
{{bc|watch -t 'cat /proc/mdstat'}}<br />
Or preferably using {{pkg|tmux}}<br />
{{bc|tmux split-window -l 12 "watch -t 'cat /proc/mdstat'"}}<br />
<br />
===Track IO with iotop===<br />
The {{pkg|iotop}} package lets you view the input/output stats for processes. Use this command to view the IO for raid threads.<br />
<br />
{{bc|<nowiki>iotop -a -p $(sed 's, , -p ,g' <<<`pgrep "_raid|_resync|jbd2"`)</nowiki>}}<br />
<br />
==Troubleshooting==<br />
If you are getting error when you reboot about "invalid raid superblock magic" and you have additional hard drives other than the ones you installed to, check that your hard drive order is correct. During installation, your RAID devices may be hdd, hde and hdf, but during boot they may be hda, hdb and hdc. Adjust your kernel line in {{ic|/boot/grub/menu.lst}} accordingly. This is what happened to me anyway.<br />
<br />
===Start arrays read-only===<br />
When an md array is started, the superblock will be written, and resync may begin. To start read-only set the kernel module {{ic|md_mod}} parameter {{ic|start_ro}}. When this is set, new arrays get an 'auto-ro' mode, which disables all internal io (superblock updates, resync, recovery) and is automatically switched to 'rw' when the first write request arrives.<br />
<br />
{{Note|The array can be set to true 'ro' mode using {{ic|mdadm -r}} before the first write request, or resync can be started without a write using {{ic|mdadm -w}}.}}<br />
<br />
To set the parameter at boot, add {{ic|<nowiki>md_mod.start_ro=1</nowiki>}} to your {{ic|/boot/grub/menu.lst}} kernel line<br />
{{bc|<nowiki>kernel /vmlinuz-linux root=/dev/sda1 ro rootwait md_mod.start_ro=1 quiet 3</nowiki>}}<br />
<br />
Or set it at module load time from {{ic|/etc/modprobe.d/}} file or from directly from {{ic|/sys/}}.<br />
{{bc|echo 1 > /sys/module/md_mod/parameters/start_ro}}<br />
<br />
===Recovering from a broken or missing drive in the raid===<br />
You might get the above mentioned error also when one of the drives breaks for whatever reason. In that case you will have to fore the raid to still turn on even with one disk short. Type this (change where needed):<br />
# mdadm --manage /dev/md0 --run<br />
<br />
Now you should be able to mount it again with something like this (if you had it in fstab):<br />
# mount /dev/md0<br />
<br />
Now the raid should be working again and available to use, however with one disk short! So, to add that one disc partition it the way like described above in #Partition_the_Hard_Drives. Once that is done you can add the new disk to the raid by doing:<br />
# mdadm --manage --add /dev/md0 /dev/sdd1<br />
<br />
If you type:<br />
# cat /proc/mdstat<br />
you probably see that the raid is now active and rebuilding.<br />
<br />
You also might want to update your configuration (see: [[#Update configuration file]]).<br />
<br />
== Benchmarking ==<br />
There are several tools for benchmarking a RAID. The most notable improvement is the speed increase when multiple threads are reading from the same RAID volume.<br />
<br />
[http://sourceforge.net/projects/tiobench/ Tiobench] specifically benchmarks these performance improvements by measuring fully-threaded I/O on the disk.<br />
<br />
[http://www.coker.com.au/bonnie++/ Bonnie++] tests database type access to one or more files, and creation, reading, and deleting of small files which can simulate the usage of programs such as Squid, INN, or Maildir format e-mail. The enclosed [http://www.coker.com.au/bonnie++/zcav/ ZCAV] program tests the performance of different zones of a hard drive without writing any data to the disk.<br />
<br />
{{ic|hdparm}} should '''NOT''' be used to benchmark a RAID, because it provides very inconsistent results.<br />
<br />
== Additional Resources ==<br />
* [http://en.gentoo-wiki.com/wiki/RAID/Software RAID/Software] on the Gentoo Wiki<br />
* [http://en.gentoo-wiki.com/wiki/Software_RAID_Install Software RAID Install] on the Gentoo Wiki<br />
* [http://www.gentoo.org/doc/en/articles/software-raid-p1.xml Software RAID in the new Linux 2.4 kernel, Part 1] and [http://www.gentoo.org/doc/en/articles/software-raid-p2.xml Part 2] in the Gentoo Linux Docs<br />
* [http://raid.wiki.kernel.org/index.php/Linux_Raid Linux RAID wiki entry] on The Linux Kernel Archives<br />
* [http://linux-101.org/howto/arch-linux-software-raid-installation-guide Arch Linux software RAID installation guide] on Linux 101<br />
* [http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/ch-raid.html Chapter 15: Redundant Array of Independent Disks (RAID)] of Red Hat Enterprise Linux 6 Documentation<br />
* [http://tldp.org/FAQ/Linux-RAID-FAQ/x37.html Linux-RAID FAQ] on the Linux Documentation Project<br />
* [http://support.dell.com/support/topics/global.aspx/support/entvideos/raid?c=us&l=en&s=gen Dell.com Raid Tutorial] - Interactive Walkthrough of Raid<br />
* [http://www.miracleas.com/BAARF/ BAARF] including ''[http://www.miracleas.com/BAARF/RAID5_versus_RAID10.txt Why should I not use RAID 5?]'' by Art S. Kagel<br />
* [http://www.linux-mag.com/id/7924/ Introduction to RAID], [http://www.linux-mag.com/id/7931/ Nested-RAID: RAID-5 and RAID-6 Based Configurations], [http://www.linux-mag.com/id/7928/ Intro to Nested-RAID: RAID-01 and RAID-10], and [http://www.linux-mag.com/id/7932/ Nested-RAID: The Triple Lindy] in Linux Magazine<br />
<br />
'''mdadm'''<br />
* [http://anonscm.debian.org/gitweb/?p=pkg-mdadm/mdadm.git;a=blob_plain;f=debian/FAQ;hb=HEAD Debian mdadm FAQ]<br />
* [http://www.kernel.org/pub/linux/utils/raid/mdadm/ mdadm source code]<br />
* [http://www.linux-mag.com/id/7939/ Software RAID on Linux with mdadm] in Linux Magazine<br />
<br />
'''Forum threads'''<br />
* [http://forums.overclockers.com.au/showthread.php?t=865333 Raid Performance Improvements with bitmaps]<br />
* 2011-08-28 - Arch Linux - [https://bbs.archlinux.org/viewtopic.php?id=125445 GRUB and GRUB2]<br />
* 2011-08-03 - Arch Linux - [https://bbs.archlinux.org/viewtopic.php?id=123698 Can't install grub2 on software RAID]<br />
* 2011-07-29 - Gentoo - [http://forums.gentoo.org/viewtopic-t-888624-start-0.html Use RAID metadata 1.2 in boot and root partition]<br />
<br />
'''RAID with encryption'''<br />
* [http://www.shimari.com/dm-crypt-on-raid/ Linux/Fedora: Encrypt /home and swap over RAID with dm-crypt] by Justin Wells</div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:Installation_guide&diff=215697Talk:Installation guide2012-07-30T19:47:56Z<p>Vamp898: /* Keymaps */ new section</p>
<hr />
<div>== Page purpose and why it is locked ==<br />
As Falconindy said: <br />
:'' point of this page is to ''not'' become another Beginner's guide. It's meant to be a ''concise'' checklist of things to be done.''<br />
So detailed install instruction should go to [[Beginners' Guide]]. See also [https://wiki.archlinux.org/index.php/Talk:Beginners%27_Guide/Installation discussion] about changes to Beginners guide. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 04:44, 24 July 2012 (UTC)<br />
: Maybe this section should be moved to the main article to make it clear. --[[User:PMay|PMay]] ([[User talk:PMay|talk]])<br />
:: +1 Make the purpose clean and redirect people want to add/read detailed instructions to [[Beginners' Guide]]. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 02:50, 25 July 2012 (UTC)<br />
<br />
=== Leave this wiki entry KISS ===<br />
<br />
If anyone wants to discuss/add sth, then do it on [[Talk:Beginners%27_Guide/Installation]] as already stated in the first place. An advancded user will find this page less bloated and easier to read, so let's KISS. --[[User:Maevius|Maevius]] ([[User talk:Maevius|talk]]) 14:59, 24 July 2012 (UTC)<br />
<br />
=== Please remove the edit lock. ===<br />
<br />
Can you please remove the edit lock? --[[User:PMay|PMay]] ([[User talk:PMay|talk]]) 09:36, 24 July 2012 (UTC)<br />
<br />
:No. I won't. I'm going to end up repeating myself several times on this page, apparently. This wiki is meant to be a ''concise'' checklist of things that need to be done in order to get a running system. I refuse to let it turn into another beginner's guide, covering every single fathomable configuration knob that one could possibly touch. We have an enormous wiki full of this sort of info. There is absolutely nothing to be gained by doing anything but linking to it here, rather than repeating it. I have zero faith that removal of the edit lock will allow the page to remain in a state that I'm comfortable with. [[User:Falconindy|Falconindy]] ([[User talk:Falconindy|talk]]) 12:50, 24 July 2012 (UTC)<br />
<br />
== Change ''Install and configure'' to ''Install a bootloader'' ==<br />
In step 6 should it read ''Install a bootloader'' instead of ''Install and configure''? Configuration should be made once in chroot. At least that's the case with syslinux. The command /usr/sbin/syslinux-install_update -iam should be issued from within chroot to succeed. --[[User:Maevius|Maevius]] ([[User talk:Maevius|talk]]) 07:33, 17 July 2012 (UTC)<br />
<br />
== GRUB2 configuration ==<br />
I took the liberty and edited the whole page. If someone could write a line or two about grub2 configuration that'd be great. --[[User:Maevius|Maevius]] ([[User talk:Maevius|talk]]) 09:10, 17 July 2012 (UTC)<br />
* Thanks for your contribution, but the point of this page is to ''not'' become another Beginner's guide. It's meant to be a ''concise'' checklist of things to be done. [[User:Falconindy|Falconindy]] ([[User talk:Falconindy|talk]]) 13:33, 17 July 2012 (UTC)<br />
:* Yeah, I thought about that... What if we moved it in its current state somewhere else and then revert this one as it were before?--[[User:Maevius|Maevius]] ([[User talk:Maevius|talk]]) 18:28, 17 July 2012 (UTC)<br />
::* I'm no expert so when I was installing Arch last night the GRUB2 installation was confusing. I thought I had installed it and that would be it. Took me a little while to get to the GRUB page and find out how to configure it. So, basically, I was thinking it might be good to just put a link, say [[GRUB2#Install_grub-bios_boot_files|this]] one, to the GRUB config section. It would be simple and not affect the KISS of this wiki entry. But I don't think its something that is for the beginner page. --[[User:Uhgreen|Uhgreen]] ([[User talk:Uhgreen|talk]]) 14:13, 25 July 2012 (UTC)<br />
<br />
== need to load GRUB again or not ==<br />
<br />
Just wanted to check, grub is loaded as part of base packages so there is no need to load it again. Simply install syslinux or configure grub. Mr Green 17 July 2012 (UTC)<br />
:I don't believe any bootloader is included in {{grp|base}}. You have to pick one and install/configure it. --[[User:Emiralle|Emiralle]] ([[User talk:Emiralle|talk]]) 17:11, 24 July 2012 (UTC)<br />
<br />
== Configure the bootloader ==<br />
From the section ''Configure the bootloader'' in ''Configure the system'': Shouldn't you edit the {{ic|syslinux.cfg}} to point to the right '''/ (root)''' partition? Or why don't we just put a link to the corresponding section of the syslinux page there? [[User:Guelfi|Guelfi]] ([[User talk:Guelfi|talk]]) 09:18, 21 July 2012 (UTC)<br />
* I'd rather get rid of the mentions of configuring separately. It's weird. Why isn't the installation section sufficient? [[User:Falconindy|Falconindy]] ([[User talk:Falconindy|talk]]) 12:05, 21 July 2012 (UTC)<br />
** I have edited it as [[User:Guelfi|Guelfi]] Suggested. [http://www.youtube.com/watch?v=6yPzaHnn9XA&feature=youtu.be Here] is an example showing that [[User:Guelfi|Guelfi]] is right. --[[User:Kaurin|Kaurin]] ([[User talk:Kaurin|talk]]) 01:52, 23 July 2012 (UTC)<br />
*** At least we should add "syslinux-install_update -i -a -m -c /mnt" after pacstrap /mnt syslinux because otherwise there will be nothing in the MBR to boot from. After that /boot/syslinux/syslinux.cfg APPEND Line has to be changed to point to the real root partition. By default it points to root=/dev/sda3.--[[User:Blackout23|Blackout23]] ([[User talk:Blackout23|talk]]) 12:56, 26 July 2012 (UTC)<br />
**** Also this has to be done before arch-chrooting otherwise MBR installtion will say "/mnt/boot is empty Is /boot mounted?. Even though ls showed me that there is /boot with syslinux installed. --[[User:Blackout23|Blackout23]] ([[User talk:Blackout23|talk]]) 13:09, 26 July 2012 (UTC)<br />
<br />
== GRUB2 Installation ==<br />
<br />
I moved GRUB2 installation after chroot. Otherwise it doesn't work.<br />
grub-bios is in /mnt, so we need to tell grub-install about it. <br />
But arch iso has grub 0.97, and installation - 2.00, so iso's grub doesn't understand installation's files.<br />
--[[User:Shuk|Shuk]] ([[User talk:Shuk|talk]]) 11:42, 23 July 2012 (UTC)<br />
<br />
== GRUB install failure ==<br />
<br />
This doesn't work for me.<br />
<br />
It looks so similar to the Beginners' Guide as to be almost redundant, but the first subtle difference I came across meant (for me) that this procedure failed where the Beginners' Guide succeeded.<br />
<br />
Under "GRUB" you have:<br />
<br />
"Install GRUB2 to the harddrive containing your boot partition before you chroot."<br />
<br />
# grub-install /dev/sda<br />
<br />
<br />
doing so returns:<br />
<br />
"Path /boot/grub is not readable by GRUB on boot. Installation is impossible. Aborting."<br />
<br />
<br />
<br />
In the Beginners' Guide, this step takes place after chrooting, which (for me) works ok, (although the wording - "Install GRUB2 to the harddrive containing your boot partition before you chroot" - is the same, so I guess both wiki entries are at fault).<br />
--[[User:bananabrain|bananabrain]]<br />
<br />
== Link Elinks to wiki ==<br />
<br />
Just read that elinks is included on install iso, maybe add an alias/script to allow loading of wiki guide installation guide? --[[User:Mr Green|Mr Green]]<br />
<br />
== <s> Check MD5 with Windows </s> ==<br />
<br />
Maybe we should add a link to http://www.etree.org/md5com.html - so people know how to check the MD5 with windows. I would add it myself but the page is locked for edit :-( . --[[User:PMay|PMay]] ([[User talk:PMay|talk]])<br />
<br />
: This info should be add to [[Beginner's Guide]]. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 03:26, 25 July 2012 (UTC)<br />
<br />
: QuickSFV is better, IMO. Personally I wouldn't add it at all. Downloading through BitTorrent means that the hash tree is checked, and unless you have a drive with bad sectors ''(in which case you have bigger issues than this)'', then you don't really need to verify it. -- [[User:DSpider|DSpider]] ([[User talk:DSpider|talk]]) 07:44, 25 July 2012 (UTC)<br />
<br />
== The method to set locale ==<br />
<br />
The documentation sais to set the locale by:<br />
* Set [https://wiki.archlinux.org/index.php/Locale#Setting_system-wide_locale locale] preferences in {{ic|/etc/locale.conf}}.<br />
The documentation at [https://wiki.archlinux.org/index.php/Locale#Setting_system-wide_locale locale] sais that the locale can also be set at {{ic|/etc/rc.conf}}. This is confusing and should be clarified. --[[User:PMay|PMay]] ([[User talk:PMay|talk]])<br />
:It can be set in both files. The {{ic|locale.conf}} file is used by systemd and is more portable across distributions. It's relatively new, so the {{ic|rc.conf}} method existed previously (rc.conf is specific to Arch Linux). I think the [[locale]] page makes it pretty clear that both can be used. [[User:Thestinger|thestinger]] ([[User talk:Thestinger|talk]]) 08:27, 26 July 2012 (UTC)<br />
<br />
== Mention the other config files ==<br />
<br />
The old installation guide said something about editing the other config files:<br />
<br />
* /etc/rc.conf<br />
* [http://wiki.archlinux.org/index.php/Fstab /etc/fstab]<br />
* /etc/mkinitcpio.conf<br />
* /etc/modprobe.d/modprobe.conf<br />
* /etc/resolv.conf<br />
* /etc/hosts<br />
* /etc/locale.gen<br />
* /etc/pacman.d/mirrorlist<br />
* /etc/pacman.conf<br />
* /etc/crypttab<br />
<br />
This guide does not even mention {{ic|/etc/rc.conf}} which is one of the central config files of archlinux. That should be added. --[[User:PMay|PMay]] ([[User talk:PMay|talk]])<br />
: Well I saw this: [[Beginners'_Guide#Configure_system]] so {{ic|/etc/rc.conf}} isnot the official way to configure the system anymore... --[[User:PMay|PMay]] ([[User talk:PMay|talk]])<br />
::True, but some clarification somewhere about exactly which bits of rc.conf are still necessary and which have been superceded (and by what) would be useful. So far it seems like just the first six lines of the LOCALIZATION section and the HOSTNAME line from the networking section. I'm still slightly in the dark here, but getting there. --[[User:bananabrain|bananabrain]]<br />
:::Regarding rc.conf, a lot of information has been added to its man page. I'm not sure how well aligned the [https://projects.archlinux.org/initscripts.git/tree/rc.conf.5.txt man page] and [[rc.conf|wiki page]] for it are, might need some updating. In any case you don't need to change anything in rc.conf for a basic install, so anything regarding that should go into the [[Beginners' Guide]]. --[[User:Emiralle|Emiralle]] ([[User talk:Emiralle|talk]]) 16:59, 24 July 2012 (UTC)<br />
<br />
::::The [[rc.conf]] page will need quite a bit of updating once {{pkg|initscripts}} >= 2012.07.5-1 moves to [core].<br />
::::-- [[User:Jstjohn|Jstjohn]] ([[User talk:Jstjohn|talk]]) 17:06, 24 July 2012 (UTC)<br />
<br />
== No mentioning of SWAP ==<br />
In the main-article I saw a link to "paritioning" and "create new filesystems" but none of them mention how to set up a swap-partition.<br />
I would link it under "Format partitions": https://wiki.archlinux.org/index.php/Swap<br />
:As Dave already said multiple times, this guide is intended as a check list. Swap is hardly different from normal partitions, most likely not needed on recent hardware and you can set it up later if it turns out you really need one. I don't see the need for a link here. --[[User:Bluewind|Bluewind]] ([[User talk:Bluewind|talk]]) 12:56, 26 July 2012 (UTC)<br />
<br />
== Change section "Connect to the internet" ==<br />
<br />
Since the installation guide is now part of the iso image, I'd like to see a few references to the manpages of the necessary tools here, since you cannot open the network related wiki pages. Maybe something like this would be acceptable:<br />
Assuming a wired ethernet connection, running dhclient or dhcpcd is <br />
sufficient to get a lease. Otherwise set up the connection manually<br />
using ip add, wpa_supplicant (WLAN with WPA), pppoe-setup (DSL), etc.<br />
You can also create and use netcfg profiles. Read more in the manpages:<br />
ip(8), wpa_supplicant(8), pppoe(8), netcfg(8), netcfg-profiles(5)<br />
A reminder to install the packages for the internet connection in the pacstrap section would also be nice. -- [[User:progandy|progandy]]<br />
<br />
== Please add the interlanguage link to [[Installation Guide (한국어)]] ==<br />
<br />
I translated [[Installation Guide]] into Korean, but I can't edit the English version to insert the interlanguage link to the Korean version [[Installation Guide (한국어)]]. Would an administrator do it for me? Thank you in advance.--[[User:Kentarch|Kentarch]] ([[User talk:Kentarch|talk]]) 04:14, 27 July 2012 (UTC)<br />
<br />
== Suggestions to update this guide as part of ISO ==<br />
Since this guide is now being included as 'install.txt' in the ISO, it might be beneficial to incorporate the following changes:<br />
* Entirely remove the '''1. Download''' section and move it to the Download area of the archlinux.org page. This document here is about installing, not downloading, checking, burning discs or dd'ing. The majority of users reading this have likely already booted up the install medium.<br />
* Begin or end the document by mentioning the new archlinux(7) man page which explains the location of important system configuration files<br />
# man archlinux<br />
* Slightly expand the '''6. Connect to the internet''' section to include the most basic examples of setting up a private network using a dynamic and static IP address. (Right now it's only a single paragraph/line.) It's a vital installation step and should actually be moved to the top as one of the first actions during system setup. This fact should be emphasized.<br />
<br />
Obtain dynamic IP <br />
# dhcpcd<br />
<br />
Set static IP<br />
# ip addr add 192.168.1.2/24 dev eth0<br />
# ip route add default via 192.168.1.1<br />
# echo "nameserver 8.8.8.8" >> /etc/resolv.conf<br />
--[[User:MajorTom|MajorTom]]<br />
<br />
== Change PS1 during chroot ==<br />
<br />
Be handy for some users to export PS1="[ chroot ]" maybe minor change to arch-chroot script [[User:Mr Green|Mr Green]]<br />
<br />
== Keymaps ==<br />
<br />
As this guide mentions the loading of keymaps using loadkeys there should be at least a very small example about /etc/vconsole.conf<br />
<br />
Either not talk about keymaps or tell how to make it correct. When this is used as a checklist, the setup of the keymap should not be missing.</div>Vamp898https://wiki.archlinux.org/index.php?title=ATI&diff=185287ATI2012-02-19T19:25:36Z<p>Vamp898: /* Overview */</p>
<hr />
<div>[[Category: Graphics (English)]]<br />
[[Category: X Server (English)]]<br />
{{i18n|ATI}}<br />
[[fr:ATI]]<br />
<br />
{{Article summary start}}<br />
{{Article summary text|An overview of the open source ATI/AMD video card driver.}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|ATI Catalyst}}<br />
{{Article summary wiki|KMS}}<br />
{{Article summary wiki|Xorg}}<br />
{{Article summary end}}<br />
<br />
Owners of '''ATI/AMD''' video cards have a choice between ATI's [[ATI Catalyst|proprietary driver]] ({{AUR|catalyst}}) and the open source driver ({{Pkg|xf86-video-ati}}). This article covers the open source driver.<br />
<br />
The open source driver is currently not ''on par'' with the proprietary driver in terms of 3D performance on newer cards or reliable TV-out support. It does, however, offer better dual-head support, excellent 2D acceleration, and provide sufficient 3D acceleration for OpenGL-accelerated [[window manager]]s, such as [[Compiz]] or KWin.<br />
<br />
If unsure, try the open source driver first, it will suit most needs and is generally less problematic (see the [http://www.x.org/wiki/RadeonFeature feature matrix] for details).<br />
<br />
==Naming conventions==<br />
ATI's [[Wikipedia:Radeon|Radeon]] brand follows a naming scheme that relates each product to a market segment. Within this article, readers will see both ''product'' names (e.g. HD 4850, X1900) and ''code'' or ''core'' names (e.g. RV770, R580). Traditionally, a ''product series'' will correspond to a ''core series'' (e.g. the "X1000" product series includes the X1300, X1600, X1800, and X1900 products which utilize the "R500" core series &ndash; including the RV515, RV530, R520, and R580 cores).<br />
<br />
For a table of core and product series, see [[Wikipedia:Comparison of AMD graphics processing units]].<br />
<br />
==Overview==<br />
The {{ic|xf86-video-ati}} (radeon) driver:<br />
*Works with Radeon chipsets up to HD 6xxx and 7xxxM (latest Northern Islands chipsets).<br />
**Radeons up to the X1xxx series are fully supported, stable, and full 2D and 3D acceleration are provided.<br />
**Radeons from HD 2xxx to HD 6xxx have full 2D acceleration and functional 3D acceleration, but are not supported by all the features that the proprietary driver provides (for example, powersaving is still in a testing phase).<br />
*Supports DRI1, RandR 1.2/1.3, EXA acceleration and [[KMS|kernel mode-setting]]/DRI2 (with the latest Linux kernel, libdrm and Mesa versions).<br />
<br />
Generally, '''xf86-video-ati''' should be your first choice, no matter which ATI card you own. In case you need to use a driver for newer ATI cards, you should prefer the proprietary '''catalyst''' driver.<br />
<br />
{{Note|xf86-video-ati is recognized as "'''radeon'''" by Xorg (in {{ic|xorg.conf}}). }}<br />
<br />
==Installation==<br />
{{Warning|If you have the proprietary driver (catalyst) installed, remove it and '''reboot''' before installing the radeon driver and make sure to remove the old {{ic|/etc/X11/xorg.conf}}.}}<br />
<br />
To install {{ic|xf86-video-ati}}:<br />
pacman -S xf86-video-ati<br />
<br />
The -git version of the driver and other needed packages (linux-git, etc) can be found in the [https://bbs.archlinux.org/viewtopic.php?id=79509&p=1 radeon repository] or the [[AUR]].<br />
<br />
==Configuration==<br />
Xorg will automatically load the driver and it will use your monitor's EDID to set the native resolution. Configuration is only required for tuning the driver.<br />
<br />
If you want manual configuration, create {{ic|/etc/X11/xorg.conf.d/20-radeon.conf}}, and add the following:<br />
<br />
Section "Device"<br />
Identifier "Radeon"<br />
Driver "radeon"<br />
EndSection<br />
<br />
Using this section, you can enable features and tweak the driver settings.<br />
<br />
== Kernel mode-setting (KMS) ==<br />
<br />
[[KMS]] enables native resolution in the framebuffer and allows for instant console (tty) switching. KMS also enables newer technologies (such as DRI2) which will help reduce artifacts and increase 3D performance, even kernel space power-saving.<br />
<br />
KMS for ATI video cards requires the [[Xorg]] free video user space driver {{Pkg|xf86-video-ati}} version 6.12.4 or later.<br />
<br />
=== Enabling KMS ===<br />
<br />
Since Linux kernel v.2.6.33, KMS is '''enabled''' by default for ATI cards.<br />
<br />
==== Early KMS start ====<br />
<br />
''This method will start KMS as early as possible in the [[boot process]] (when the [[initramfs]] is loaded).''<br />
<br />
If you have a special kernel (e.g. linux-zen), remember to use appropriate mkinitcpio configuration file, e.g. {{ic|/etc/mkinitcpio-zen.conf}}. These instructions are written for the default kernel ({{Pkg|linux}}).<br />
<br />
# Remove all {{ic|<nowiki>vga=</nowiki>}} options from the ''kernel'' line in the bootloader configuration file ({{ic|/boot/grub/menu.lst}} for [[GRUB]] users). Using other framebuffer drivers (such as {{ic|[[uvesafb]]}} or {{ic|radeonfb}}) will conflict with KMS. Remove any framebuffer related modules from {{ic|/etc/mkinitcpio.conf}}. {{ic|<nowiki>video=</nowiki>}} can now be used in conjunction with KMS.<br />
# Add {{ic|radeon}} to {{ic|MODULES}} array in {{ic|/etc/mkinitcpio.conf}}. For AGP support, it is necessary to add {{ic|intel_agp}} (or {{ic|ali_agp}}, {{ic|ati_agp}}, {{ic|amd_agp}}, {{ic|amd64_agp}} etc.) before the {{ic|radeon}} module.<br />
# Re-generate your initramfs: {{ic|# mkinitcpio -p linux}}<br />
# AGP speed can be set with {{ic|<nowiki>radeon.agpmode=x</nowiki>}} kernel option, where x is 1, 2, 4, 8 (AGP speed) or -1 (PCI mode).<br />
# '''Reboot''' the system.<br />
<br />
==== Late start ====<br />
<br />
''With this choice, KMS will be enabled when modules are loaded during the [[boot process]].''<br />
<br />
If you have a special kernel (e.g. linux-zen), remember to use appropriate mkinitcpio configuration file, e.g. {{ic|/etc/mkinitcpio-zen.conf}}. These instructions are written for the default kernel ({{Pkg|linux}}).<br />
<br />
# Remove all {{ic|<nowiki>vga=</nowiki>}} options from the ''kernel'' line in the bootloader configuration file ({{ic|/boot/grub/menu.lst}} for [[GRUB]] users). Using other framebuffer drivers (such as {{ic|[[uvesafb]]}} or {{ic|radeonfb}}) will conflict with KMS. Remove any framebuffer related modules from {{ic|/etc/mkinitcpio.conf}}. {{ic|<nowiki>video=</nowiki>}} can now be used in conjunction with KMS.<br />
# Add {{ic|radeon}} to {{ic|MODULES}} array in {{ic|/etc/rc.conf}}. For AGP support, it may be necessary to add {{ic|intel_agp}} (or ali_agp, {{ic|ati_agp}}, {{ic|amd_agp}}, {{ic|amd64_agp}} etc.) before the {{ic|radeon}} module.<br />
# '''Reboot''' the system.<br />
<br />
{{Tip|Some users have reported faster [[udev]] module loading by adding {{ic|<nowiki>options radeon modeset=1</nowiki>}} to {{ic|/etc/modprobe.d/modprobe.conf}}.}}<br />
<br />
=== Troubleshooting KMS ===<br />
<br />
==== Disable KMS ====<br />
<br />
Users should consider disabling kernel mode-setting if encountering kernel panics, distorted framebuffer on boot, no GPU signal, [[Xorg]] refusing to start, Xorg falling back to Mesa software rasterizer (no 3D acceleration) or 'POWER OFF' problem (kernel 2.6.33-2)at shutdown.<br />
<br />
# Add {{ic|<nowiki>radeon.modeset=0</nowiki>}} (or {{ic|nomodeset}}, if this does not work) to the kernel options line in the bootloader configuration file ({{ic|/boot/grub/menu.lst}} for [[GRUB]] users). That should work. {{Note| Adding '''nomodeset''' to the kernel boot line might prevent Gnome 3's gnome-shell or KDE's desktop effects from running.}} If you want to remove KMS support from the initramfs, follow the next two steps.<br />
# If {{ic|radeon}} was added to the {{ic|MODULES}} array in {{ic|mkinitcpio.conf}} to enable ''early start'', remove it.<br />
# Rebuild the [[initramfs]] with {{bc|# mkinitcpio -p linux}}<br />
<br />
Alternatively, module options can be specified in a file within the {{ic|/etc/modprobe.d}} directory. If using the '''radeon''' module ({{ic|<nowiki>lsmod | grep radeon</nowiki>}}) disable KMS by creating a file containing the above code:<br />
<br />
{{hc|/etc/modprobe.d/radeon.conf|2=options radeon modeset=0}}<br />
<br />
==== Renaming {{ic|xorg.conf}} ====<br />
<br />
Renaming {{ic|/etc/X11/xorg.conf}}, which may include options that conflict with KMS, will force Xorg to autodetect hardware with sane defaults. After renaming, '''restart''' Xorg.<br />
<br />
== Performance tuning ==<br />
The following options apply to {{ic|/etc/X11/xorg.conf.d/'''20-radeon.conf'''}}.<br />
<br />
By design, xf86-video-ati runs at AGP 4x speed. It is generally safe to modify this. If you notice hangs, try reducing the value or removing the line entirely (you can use values 1, 2, 4, 8). If KMS is enabled, this option is not used and it is superseded by {{ic|radeon.agpmode}} kernel option.<br />
<br />
Option "AGPMode" "8"<br />
<br />
'''ColorTiling''' is completely safe to enable and supposedly is enabled by default. Most users will notice increased performance but its not yet supported on R200 and earlier cards. Can be enabled on earlier cards, but the workload is transferred to the CPU<br />
<br />
Option "ColorTiling" "on"<br />
<br />
'''Acceleration architecture'''; this will work only on '''newer''' cards. If you enable this and then cannot get back into X, remove it.<br />
<br />
Option "AccelMethod" "EXA"<br />
<br />
'''Page Flip''' is generally safe to enable. This would mostly be used on older cards, as enabling this would disable EXA. With recent drivers can be used together with EXA.<br />
<br />
Option "EnablePageFlip" "on"<br />
<br />
'''AGPFastWrite''' will enable fast writes for AGP cards. This one can cause instabilities, so be prepared to remove it if you cannot get into X. This option is not used when KMS is on.<br />
<br />
Option "AGPFastWrite" "yes"<br />
<br />
'''EXAVSync ''' option attempts to avoid tearing by stalling the engine until the display controller has passed the destination region. It reduces tearing at the cost of performance and has been know to cause instability on some chips.<br />
Really useful when enabling Xv overlay on videos on a 3D accelerated desktop. It is not necessary when KMS (thus DRI2 acceleration) is enabled.<br />
<br />
Option "EXAVSync" "yes"<br />
<br />
Bellow is a sample config file {{ic|/etc/X11/xorg.conf.d/'''20-radeon.conf'''}}:<br />
<br />
{{bc|<br />
Section "Device"<br />
Identifier "My Graphics Card"<br />
Option "AGPMode" "8" #not used when KMS is on<br />
Option "AGPFastWrite" "off" #could cause instabilities enable it at your own risk<br />
Option "SWcursor" "off" #software cursor might be necessary on some rare occasions, hence set off by default<br />
Option "EnablePageFlip" "on" #supported on all R/RV/RS4xx and older hardware and set off by default<br />
Option "AccelMethod" "EXA" #valid options are XAA and EXA. EXA is the newest acceleration method and its the default.<br />
Option "RenderAccel" "on" #enabled by default on all radeon hardware<br />
Option "ColorTiling" "on" #enabled by default on RV300 and later radeon cards.<br />
Option "EXAVSync" "off" #default is off, otherwise on<br />
Option "EXAPixmaps" "on" #when on icreases 2D performance, but may also cause artifacts on some old cards<br />
Option "AccelDFS" "on" #default is off, read the radeon manpage for more information<br />
EndSection<br />
}}<br />
<br />
Defining the '''gartsize''', if not autodetected, can be done with the following option:<br />
<br />
In the kernel options (in this case {{ic|syslinux.cfg}}):<br />
<br />
APPEND root=/dev/sda1 ro 5 radeon.modeset=1 radeon.agpmode=8 radeon.gartsize=32 quiet<br />
<br />
Size is in megabytes and 32 is for RV280 cards.<br />
<br />
Alternatively, do it with a modprobe option in {{ic|/etc/modprobe.d/radeon.conf}}:<br />
<br />
options radeon gartsize=32<br />
<br />
'''For further information and other options, read the radeon manpage and the module's info page''':<br />
man radeon<br />
<br />
modinfo radeon<br />
<br />
A fine tool to try is [https://www.archlinux.org/packages/community/any/driconf/ driconf]. It will allow you to modify several settings, like vsync, anisotropic filtering, texture compression, etc. Using this tool it is also possible to "disable Low Impact fallback" needed by some programs (e.g. Google Earth).<br />
<br />
=== Activate PCI-E 2.0 ===<br />
Can be unstable with some motherboards or not produce any performarce, test yourself adding "radeon.pcie_gen2=1" on the kernel command line.<br />
<br />
More info on [http://www.phoronix.com/scan.php?page=article&item=amd_pcie_gen2&num=1 Phoronix article]<br />
<br />
==Powersaving==<br />
<br />
The powersaving part is totally different with and without KMS.<br />
<br />
===With KMS enabled===<br />
<br />
With the radeon driver, power saving is disabled by default but the stock kernel (2.6.35 as of this writing) provides a "sysfs" utility to enable it.<br />
<br />
Power saving through KMS is still a work in progress for the most part. It should work, but some chips do have problems with it. A common issue for all is screen blinking when the kernel switches between power states, and in some configurations it even causes system freezes. But KMS is awesome, so it is your choice. The UMS method is generally more stable, however its power savings might not be as good as those provided by KMS options.<br />
<br />
There are two ways to enable power management:<br />
<br />
#Try adding {{ic|1=radeon.dynpm=1}} to the kernel parameters (if using the stock kernel < 2.6.35). If you are using Linux kernel >= 2.6.35 this option is no longer needed and the sysfs interface will be present by default. If this option is passed to a kernel >= 2.6.35, the driver will fail and fall back to software rendering.<br />
#Use the (unsupported) [radeon] repo:<br />
<br />
This repository will grant you up-to-date packages of the radeon driver and its dependencies, from (mostly) git snapshots.<br />
<br />
{{bc|1=<br />
[radeon]<br />
Server = http://spiralinear.org/perry3d/$arch/<br />
}}<br />
<br />
You can select the methods via sysfs.<br />
<br />
With root access, you have two choices:<br />
<br />
1. '''Dynamic frequency switching (depending on GPU load)'''<br />
<br />
{{bc|# echo dynpm > /sys/class/drm/card0/device/power_method}}<br />
<br />
The "dynpm" method dynamically changes the clocks based on the number of pending fences, so performance is ramped up when running GPU intensive apps, and ramped down when the GPU is idle. The re-clocking is attempted during vertical blanking periods, but due to the timing of the re-clocking functions, does not always complete in the blanking period, which can lead to flicker in the display. Due to this, dynpm only works when a single head is active.<br />
<br />
{{Note|The "profile" method mentioned below is not as aggressive as "dynpm," but is currently much more stable and flicker free and works with multiple heads active.}}<br />
<br />
2. '''Profile-based frequency switching'''<br />
<br />
{{bc|# echo profile > /sys/class/drm/card0/device/power_method}}<br />
<br />
The "profile" mode will allow you to select one of the five profiles below.<br />
Different profiles, for the most part, end up changing the frequency/voltage of the card.<br />
<br />
* "default" uses the default clocks and does not change the power state. This is the default behavior.<br />
* "auto" selects between "mid" and "high" power states based on the whether the system is on battery power or not. The "low" power state are selected when the monitors are in the dpms off state.<br />
* "low" forces the gpu to be in the low power state all the time. Note that "low" can cause display problems on some laptops; this is why auto only uses "low" when displays are off.<br />
* "mid" forces the gpu to be in the "mid" power state all the time. The "low" power state is selected when the monitors are in the dpms off state.<br />
* "high" forces the gpu to be in the "high" power state all the time. The "low" power state is selected when the monitors are in the dpms off state.<br />
<br />
So lets say we want the "low" option...for this, run the following command:<br />
<br />
{{bc|# echo low > /sys/class/drm/card0/device/power_profile}}<br />
<br />
Replace "low" with any of the aforementioned profiles as necessary.<br />
<br />
{{Note|Echoing a profile value to this file is not permanent, so when you find something that fits your needs, you will need to add it to /etc/rc.local, so it is executed at system startup.}}<br />
<br />
Power management is supported on all asics (r1xx-evergreen) that include the appropriate power state tables in the vbios; not all boards do (especially older desktop cards).<br />
<br />
To view the voltage that the GPU is running at, perform the following command and you will get something like this output:<br />
<br />
{{hc|$ cat /sys/kernel/debug/dri/0/radeon_pm_info|<nowiki> state: PM_STATE_ENABLED<br />
default engine clock: 300000 kHz<br />
current engine clock: 300720 kHz<br />
default memory clock: 200000 kHz</nowiki>}}<br />
<br />
If /sys/kernel/debug is empty, run this command:<br />
<br />
{{bc|# mount -t debugfs none /sys/kernel/debug}}<br />
<br />
To permanently mount, add the following line to /etc/fstab:<br />
<br />
debugfs /sys/kernel/debug debugfs defaults 0 0<br />
<br />
It depends on which GPU line yours is, however. Along with the radeon driver versions, kernel versions, etc. So it may not have much/any voltage regulation at all.<br />
<br />
Thermal sensors are implemented via external i2c chips or via the internal thermal sensor (rv6xx-evergreen only). To get the temperature on asics that use i2c chips, you need to load the appropriate hwmon driver for the sensor used on your board (lm63, lm64, etc.). The drm will attempt to load the appropriate hwmon driver. On boards that use the internal thermal sensor, the drm will set up the hwmon interface automatically. When the appropriate driver is loaded, the temperatures can be accessed via lm_sensors tools or via sysfs in /sys/class/hwmon .<br />
<br />
There is a GUI for switching profiles [http://code.google.com/p/power-play-switcher here] ([https://aur.archlinux.org/packages.php?ID=53752 available in AUR]).<br />
<br />
===Without KMS===<br />
<br />
In your {{ic|xorg.conf}} file, add 2 lines to "Device" Section:<br />
Option "DynamicPM" "on"<br />
Option "ClockGating" "on"<br />
<br />
If the two options are enabled successfully, you will see following lines in /var/log/Xorg.0.log:<br />
<br />
(**) RADEON(0): Option "ClockGating" "on"<br />
(**) RADEON(0): Option "DynamicPM" "on"<br />
<br />
Static power management enable success<br />
(II) RADEON(0): Dynamic Clock Gating Enabled<br />
(II) RADEON(0): Dynamic Power Management Enabled<br />
<br />
If you desire low power cost, you can add an extra line to "Device" Section of {{ic|xorg.conf}}:<br />
Option "ForceLowPowerMode" "on"<br />
<br />
==TV out==<br />
{{out of date}}<br />
Since August 2007, there is TV-out support for all Radeons with integrated TV-out.<br />
<br />
It is somewhat limited for now, it does not always autodetect the output correctly and only NTSC mode works.<br />
<br />
First, check that you have an S-video output: {{ic|xrandr}} should give you something like<br />
Screen 0: minimum 320x200, current 1024x768, maximum 1280x1200<br />
...<br />
S-video disconnected (normal left inverted right x axis y axis)<br />
<br />
Now we should tell Xorg that it is actually connected (it ''is'', right?)<br />
xrandr --output S-video --set load_detection 1<br />
<br />
Setting tv standard to use:<br />
xrandr --output S-video --set tv_standard ntsc<br />
<br />
Adding a mode for it (currently it supports only 800x600):<br />
xrandr --addmode S-video 800x600<br />
<br />
I will go for a clone mode:<br />
xrandr --output S-video --same-as VGA-0<br />
<br />
So far so good. Now let us try to see what we have:<br />
xrandr --output S-video --mode 800x600<br />
<br />
At this point you should see a 800x600 version of your desktop on your TV.<br />
<br />
To disable the output, do<br />
xrandr --output S-video --off<br />
<br />
Also you may notice that the video is being played on monitor only and not on the TV. Where the Xv overlay is sent is controlled by XV_CRTC attribute.<br />
<br />
To send the output to the TV, I do<br />
xvattr -a XV_CRTC -v 1<br />
<br />
{{Note| you need to install '''xvattr''' from [[AUR]] to execute this command.}}<br />
<br />
To switch back to my monitor, I change this to {{ic|0}}. {{ic|-1}} is used for automatic switching in dualhead setups.<br />
<br />
Please see [http://www.x.org/wiki/radeonTV Enabling TV-Out Statically] for how to enable TV-out in your xorg configuration file.<br />
<br />
=== Force TV-out in KMS ===<br />
<br />
Kernel can recognize {{ic|1=video=}} parameter in following form:<br />
<br />
video=<conn>:<xres>x<yres>[M][R][-<bpp>][@<refresh>][i][m][eDd]<br />
<br />
(see [[KMS]])<br />
<br />
For example:<br />
<br />
video=DVI-I-1:1280x1024-24@60e<br />
or<br />
"video=9-pin DIN-1:1024x768-24@60e"<br />
<br />
Parameters with whitespaces must be quoted. Current mkinitcpio implementation also requires # before. For example:<br />
<br />
root=/dev/disk/by-uuid/d950a14f-fc0c-451d-b0d4-f95c2adefee3 ro quiet radeon.modeset=1 security=none # video=DVI-I-1:1280x1024-24@60e "video=9-pin DIN-1:1024x768-24@60e"<br />
<br />
* Grub can pass such command line as is.<br />
* Lilo needs backslashes for doublequotes (append="...... # .... \"video=9-pin DIN-1:1024x768-24@60e\"")<br />
* Grub2: TODO<br />
<br />
You can get list of your video outputs with following command:<br />
<br />
{{bc|<nowiki>ls -1 /sys/class/drm/ | grep -E '^card[[:digit:]]+-' | cut -d- -f2-</nowiki>}}<br />
<br />
== HDMI Audio ==<br />
<br />
'''xf86-video-ati''' can enable HDMI audio output for all supported chipsets up to r7xx when using [[ATI#Kernel_mode-setting_.28KMS.29|KMS]]. Just use xrandr to enable the output and Test as described below.<br />
<br />
=== Testing HDMI Audio ===<br />
# Connect your PC to the Display via HDMI cable.<br />
# Use xrandr to get picture to the Display. Ex: {{ic|xrandr --output DVI-D_1 --mode 1280x768 --right-of PANEL}}. Simply typing {{ic|xrandr}} will give you a list of your valid outputs.<br />
# Run {{ic|aplay -l}} to get the list of your sound devices. Find HDMI and note the card number and corresponding device number. Example of what you want to see: {{ic|card 1: HDMI [HDA ATI HDMI], device 3: ATI HDMI [ATI HDMI]}}<br />
# Try sending sound to this device: {{ic|aplay -D plughw:1,3 /usr/share/sounds/alsa/Front_Center.wav}}. Be sure to change plughw:z,y to match your hardware number found with last command. You should be able to hear the test sound from your Display.<br />
<br />
* The audio module is disabled by default in kernel >=3.0. Add {{ic|1=radeon.audio=1}} to the end of your "kernel" line in /boot/grub/menu.lst to enable it.<br />
* See [https://bbs.archlinux.org/viewtopic.php?id=124130 this thread]<br />
<br />
== Dual Head Setup ==<br />
=== Independent X Screens ===<br />
Independent dual-headed setups can be configured the usual way. However you might want to know that the radeon driver has a {{ic|"ZaphodHeads"}} option which allows you to bind a specific device section to an output of your choice, for instance using:<br />
Section "Device"<br />
Identifier "Device0"<br />
Driver "radeon"<br />
Option "ZaphodHeads" "VGA-0"<br />
VendorName "ATI"<br />
BusID "PCI:1:0:0"<br />
Screen 0<br />
EndSection<br />
<br />
This can be a life-saver, because some cards which have more than two outputs (for instance one HDMI out, one DVI, one VGA), will only select and use HDMI+DVI outputs for the dual-head setup, unless you explicitely specify {{ic|"ZaphodHeads" "VGA-0"}}.<br />
<br />
Moreover, this option allows you to easily select the screen you want to mark as primary.<br />
<br />
== Troubleshooting ==<br />
<br />
=== I encounter artifacts when logging into my DE or WM ===<br />
<br />
If you encounter artifacts, first try starting X without {{ic|/etc/X11/xorg.conf}}. Recent versions of Xorg are capable of reliable auto-detection and auto-configuration for most use cases. Outdated or improperly configured {{ic|xorg.conf}} files are known to cause trouble.<br />
<br />
In order to run without a configuration tile, it is recommended that the {{ic|xorg-input-drivers}} package group be installed.<br />
<br />
Artifacts may also be related to [[kernel mode setting]]. Consider [[#Disable KMS|disabling KMS]].<br />
<br />
You may as well try disabling '''EXAPixmaps''' in {{ic|/etc/X11/xorg.conf.d/20-radeon.conf}}:<br />
<br />
Section "Device"<br />
Identifier "Radeon"<br />
Driver "radeon"<br />
Option "EXAPixmaps" "off"<br />
EndSection<br />
<br />
Further tweaking could be done by disabling '''AccelDFS'''<br />
<br />
Option "AccelDFS" "off"<br />
<br />
=== I have installed a free driver and my card is painfully slow ===<br />
<br />
{{Note|Make sure you are member of '''video''' group.}}<br />
<br />
Some cards can be installed by default trying to use [[ATI#AMD/Ati cards and kernel mode-setting (KMS)|KMS]]. You can check whether this is your case running:<br />
dmesg | egrep "drm|radeon"<br />
<br />
This command might show something ''like'' this, meaning it is trying to default to KMS:<br />
[drm] radeon default to kernel modesetting.<br />
...<br />
[drm:radeon_driver_load_kms] *ERROR* Failed to initialize radeon, disabling IOCTL<br />
<br />
If your card is not supported by KMS (anything older than r100), then you can [[ATI#Disable KMS|disable KMS]]. This should fix the problem.<br />
<br />
=== AGP is disabled (with KMS) ===<br />
<br />
If you experience poor performance and dmesg shows something like this<br />
[drm:radeon_agp_init] *ERROR* Unable to acquire AGP: -19<br />
then check if the agp driver for your motherboard (e.g., {{ic|via_agp}}, {{ic|intel_agp}} etc.) is loaded before the {{ic|radeon}} module, see [[ATI#Enabling KMS|Enabling KMS]].<br />
<br />
=== My TV is showing a black border around the screen ===<br />
<br />
When I connected my TV to my Radeon HD 5770 using the HDMI port, the TV showed a blurry picture with a 2-3cm border around it. This is not the case when using the proprietary driver. However, this protection against overscanning (see [[Wikipedia:Overscan]]) can be turned off using xrandr:<br />
xrandr --output HDMI-0 --set underscan off<br />
<br />
=== Black screen and no console, but X works in KMS ===<br />
This is a solution to no-console problem that might come up, when using two or more ATI cards on the same PC. Fujitsu Siemens Amilo PA 3553 laptop for example has this problem. This is due to fbcon console driver mapping itself to wrong framebuffer device that exist on the wrong card. This can be fixed by adding a this to the kernel boot line:<br />
fbcon=map:1<br />
This will tell the fbcon to map itself to the {{ic|/dev/fb1}} framebuffer dev and not the {{ic|/dev/fb0}}, that in our case exist on the wrong graphics card.<br />
<br />
=== Some 3D applications show textures as all black or crash ===<br />
You might need texture compression support, which is not included with the free driver. Install [https://aur.archlinux.org/packages.php?ID=15571 libtxc_dxtn] from AUR (or [https://aur.archlinux.org/packages.php?ID=40343 lib32-libtxc_dxtn] for multilib systems).<br />
<br />
For a list of supported games have a look at the [http://xorg.freedesktop.org/wiki/RadeonProgram Radeon Program] page.<br />
<br />
On R600 chips you additionally have to<br />
export R600_ENABLE_S3TC=1<br />
to enable the texture compression support (for permanent change write this line to your ~/.bashrc).<br />
<br />
=== 2D performance (e.g. scrolling) is slow ===<br />
If you have problem with 2D performance, like scrolling in terminal or browser, you might need to add {{ic|Option "MigrationHeuristic" "greedy"}} into the {{ic|"Device"}} section of your {{ic|xorg.conf}} file.<br />
<br />
Bellow is a sample config file {{ic|/etc/X11/xorg.conf.d/'''20-radeon.conf'''}}:<br />
<br />
{{bc|<br />
Section "Device"<br />
Identifier "My Graphics Card"<br />
Driver "radeon"<br />
Option "MigrationHeuristic" "greedy"<br />
EndSection<br />
}}</div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:GNOME&diff=136143Talk:GNOME2011-04-07T17:00:50Z<p>Vamp898: /* NetworkManager is unstable in that repo */ new section</p>
<hr />
<div>Could somebody add an installation section? --[[User:Axanon|Axanon]] 10:49, 16 March 2011 (EDT)<br />
<br />
Does installing gnome 3 remove Gnome 2? --[[User:Gdw2|Gdw2]] 16:58, 28 March 2011 (EDT)<br />
<br />
Followed installation instructions and cannot start gnome-shell. <br />
<br />
$ gnome-shell --replace<br />
gnome-shell: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory [[User:Arangel|Arangel]] 17:50, 2 April 2011 (CET)<br />
<br />
<br />
@Atmospherian please don't add that nautilus section. <br />
<br />
default nautilus is installed because is a member in gnome group<br />
<br />
Name : nautilus<br />
Version : 3.0.0-1<br />
URL : http://www.gnome.org<br />
Licenses : GPL<br />
Groups : gnome<br />
<br />
also in an update case, you already have nautilus and it would be automatically updated when doing pacman -Syu. If is not then your repo configuration order is wrong. [[User:Wonder|Wonder]] 7 April 2011 (CET)<br />
<br />
== NetworkManager is unstable in that repo ==<br />
<br />
it that worths an information! Becease if you use KDE as fallback you cant use the NetworkManager anymore. GNOME Unstable contains a mix of stable and unstable packages now which causes some applications to break (in a lot of cases also firefox dont work anymore)</div>Vamp898https://wiki.archlinux.org/index.php?title=KDE&diff=117785KDE2010-09-20T23:19:10Z<p>Vamp898: /* Installing full KDE SC */</p>
<hr />
<div>[[Category:Desktop environments (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n|KDE}}<br />
[[de:KDE]]<br />
{{Article summary start}}<br />
{{Article summary text|KDE is a full featured desktop environment known for its well integrated applications, like Konqueror, Dolphin, Plasma, KWrite and Konsole.}}<br />
{{Article summary end}}<br />
==KDE 4.5 Arch Linux Notes==<br />
<br />
'''KDE 4.5''' Software Compilation is the current major release of KDE that includes a number of improvements and bug fixes. The new Arch package set for KDE makes it possible to only install those applications you like.''<br />
<br />
Important features of the Archlinux KDE SC in short:<br />
* '''Split packages'''; for more Information see [[KDE_Packages|KDE Packages]] and [[DeveloperWiki:Splitting_KDE|Splitting KDE]].<br />
* You can use different Phonon backends, like Gstreamer or Xine<br />
* Meta packages ensure a smooth upgrade and emulate the old monolith packages for those who prefer them.<br />
<br />
Important hints for upgraders:<br />
* Always check if your mirror is '''up to date'''.<br />
* pacman will ask you to replace '''all''' kde packages with kde-meta packages.<br />
* '''Do not force an update'''. If pacman complains about conflicts please '''file a bug report'''.<br />
* You can remove the meta packages and the sub packages you do not need after the update.<br />
* If you do not like split packages just keep using the kde-meta packages.<br />
<br />
:Information about upstream changes are be available [http://kde.org/announcements/4.5 here]<br />
<br />
=== KDE 4.5 Archlinux packaging specific info ===<br />
<br />
* KDEpim has seen no new release, please continue to use version 4.4.5 until KDEpim 4.5 is released.<br />
* Due to incompatibility with ruby 1.9, ruby kdebindings are not provided<br />
* Webkit support in konqueror is provided by kwebkitpart<br />
* KDM is now started as the kdm user<br />
* Upstream removed five translations: csb, mai, mk, si and tg<br />
<br />
==Installing KDE 4.5 Software Compilation==<br />
<br />
=== Installing full KDE SC ===<br />
<br />
To install the entire KDE set, first '''fully upgrade your system''':<br />
<br />
pacman -Syu<br />
<br />
and then:<br />
<br />
pacman -S kde phonon-xine<br />
<br />
If you need language files:<br />
<br />
pacman -S kde-l10n-yourlanguagehere<br />
<br />
e.g. kde-l10n-'''de''', for the German language.<br />
<br />
{{Note| KDE 4.x is '''modular'''; you can install your preferred KDE applications without having to install an entire set of packages. See [[KDE Packages]] for more information.}}<br />
<br />
=== Minimal Install ===<br />
<br />
If you want to have a minimal installation of the KDE SC, here is an example:<br />
<br />
pacman -S kdebase kde-l10n-yourlanguagehere phonon-xine<br />
<br />
== Starting KDE ==<br />
<br />
Starting KDE depends on your preferences. Basically there are two ways of starting KDE. Using '''KDM''' or '''xinitrc'''.<br />
<br />
=== Using KDM (KDE Display Manager)===<br />
''It is highly recommended to get familiar with the [http://wiki.archlinux.org/index.php/Display_Manager full article] concerning display managers, before you make any changes. See also [[KDM]] Wiki page.''<br />
<br />
==== Starting KDM as a daemon ====<br />
Add "'''kdm'''" (without the quotes) to deamons array in '''{{Filename|/etc/rc.conf}}'''<br />
<br />
DAEMONS=(dbus hal syslog-ng network netfs crond ... '''kdm''')<br />
<br />
==== Starting KDM through /etc/inittab [''preferable''] ==== <br />
<br />
Edit '''{{Filename|/etc/inittab}}''' and comment out:<br />
#id:3:initdefault:<br />
<br />
[...]<br />
<br />
#x:5:respawn:/usr/bin/xdm -nodaemon<br />
<br />
Then uncomment:<br />
<br />
id:5:initdefault:<br />
<br />
[...]<br />
<br />
x:5:respawn:/usr/bin/kdm -nodaemon<br />
<br />
{{Note| In both methods KDM loads Xorg automatically.}}<br />
<br />
===Using xinitrc===<br />
''The meaning and usage of '''xinitrc''' is very well described [http://wiki.archlinux.org/index.php/Xinitrc here].<br />
<br />
Edit '''{{Filename|/home/}}'''{{Filename|''your-username''}}'''{{Filename|/.xinitrc}}'''. Then uncomment:<br />
exec ck-launch-session startkde <br />
After a reboot or/and login, each execution of Xorg ('''startx''' or '''xinit''') will start KDE automatically.<br />
<br />
{{Warning| By doing this you may have restart/shutdown functions enabled in your KDE menu.}}<br />
<br />
{{Note| If you want to start Xorg at boot, please read [[Start X at boot]] article.}}<br />
<br />
==Configuring==<br />
<br />
{{Note| Configuring KDE is primarily done in ''''System Settings''''. There are also a few other options available for the desktop with 'Desktop Settings' when you right click the desktop.}}<br />
<br />
For other personalization options not covered below such as activities, different wallpapers on one cube, etc please refer to the [[Plasma]] wiki page.<br />
<br />
===Personalization===<br />
<br />
How to set up the KDE desktop to your personal style; use different Plasma themes, window decorations and icon themes. <br />
<br />
====Plasma Desktop====<br />
<br />
[[Plasma]] is a desktop integration technology that provides many functions from displaying the wallpaper, adding widgets to the desktop, and handling the panels or "taskbar".<br />
<br />
=====Themes=====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=76&PHPSESSID=bba0ae5354c7818b519687ebf5badf0e Plasma themes] can be installed through the Desktop Settings control panel. Plasma themes define how your panels and plasmoids look like. If you like to have them installed system-wide, themes can be found in both the official repositories and [http://aur.archlinux.org/packages.php?O=0&K=plasmatheme&do_Search=Go AUR].<br />
<br />
=====Widgets=====<br />
Plasmoids are little scripted or coded KDE apps that enhance the functionality of your deskop in a yet very pleasing way, based on the Plasma technology of KDE. You are able to display system-critical information like ''left over disk space'' or ''monitor/modify your network connection''. It also allows all kinds of other widgets, like displaying the weather, a widget for easily pasting images to a pastebin website, or having collections of virtual folders "folderview". Just to name a few.<br />
<br />
The easiest way to install more widgets is by left-clicking onto a panel or the desktop:<br />
<br />
Add Widgets -> Get new Widgets -> Download Widgets<br />
<br />
You should be aware that these widgets are not created officially by KDE developers. Most of them are just people who wanted to script one (easily) to suit a need they had.<br />
<br />
It may be of interest to you that many different widget types are supported (not just our own "plasmoids" or widgets). Plasma can use all kinds of widgets, from MacOSX widgets, Microsoft Windows Vista/7 widgets, Google Widgets, and even the old system - SuperKaramba - widgets. You should however, prefer Plasma widgets to other ones, since they provide more thorough integration and are prepared to be on the KDE desktop.<br />
<br />
This will present a nice frontend for [http://www.kde-look.org/ kde-look.org] and allows you to (un)install or update third-party widgets with just one click.<br />
They are also available in the [http://aur.archlinux.org/packages.php?O=0&K=plasmoid&do_Search=Go&PP=25&SO=d&SB=v repositories].<br />
<br />
{{Note|The widgets provided via KHNS (KHotNewStuff, what you just used to download widgets) does not/cannot grant the ability to install third-party widgets written in C++ since nearly each one requires different setup techniques, etc. and is thus difficult/impossible to automate. In other words, there could theoretically be useful widgets out there that you cannot try.}}<br />
<br />
One thing to keep in mind, is that when a third-part developers creates a C++ widgets which has severe bugs in it, it could potentially bring down the Plasma process (crashing it). Scripted ones are sandboxed and this cannot happen. If it does crash - no worries, just remove the widget.<br />
<br />
====Window Decorations====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=75 Window decorations] can be changed in<br />
System Settings -> Application Appearance -> Style<br />
There you can also directly download and install more themes with one click and some are available on [http://aur.archlinux.org/packages.php?O=0&K=kdestyle&do_Search=Go&PP=25&SO=d&SB=v AUR].<br />
<br />
====KDE 4 Theme Integration with GTK Applications====<br />
To better integrate GTK and KDE 4 themes, you can use '''QtCurve'''.<br />
<br />
pacman -S qtcurve-gtk2 qtcurve-kde4 gtk-kde4<br />
<br />
Or you can download a GTK theme that matches your version of KDE [http://kde-look.org/content/show.php?content=103741 here]. This theme comes closer to the original Oxygen and is updated frequently.<br />
<br />
=====Automatic procedure=====<br />
<br />
To change the GTK theme to QtCurve or something else a few applications are available:<br />
<br />
pacman -S lxappearance<br />
pacman -S gtk-theme-switch2<br />
pacman -S gtk-chtheme<br />
<br />
Then change the theme of your choice in the respective application:<br />
<br />
lxappearance<br />
gtk-theme-switch2<br />
gtk-chtheme<br />
<br />
=====Manual procedure=====<br />
To manually change the GTK theme to QtCurve, you need to create the file {{Filename|~/.gtkrc-2.0-kde4}} with the following content:<br />
include "/usr/share/themes/QtCurve/gtk-2.0/gtkrc"<br />
include "/etc/gtk-2.0/gtkrc"<br />
<br />
style "user-font"<br />
{<br />
font_name="Sans Serif"<br />
}<br />
widget_class "*" style "user-font" <br />
gtk-theme-name="QtCurve"<br />
Then you need to create the symbolic link {{Filename|~/.gtkrc-2.0}}:<br />
ln -s .gtkrc-2.0-kde4 .gtkrc-2.0<br />
If you want also specify a font, you can add (and adapt) the following line to the file:<br />
gtk-font-name="Sans Serif 9"<br />
<br />
=====Icons=====<br />
If you're using Oxygen icons and want a consistent look in GTK open/save dialogs, you can install an [http://aur.archlinux.org/packages.php?O=0&K=oxygenrefit2-icon-theme&do_Search=Go oxygenrefit2] icon theme from AUR and set it as your GTK icon theme. Add the theme to the {{Filename|~/.gtkrc-2.0}} file or you can use lxappearance and set it.<br />
gtk-icon-theme-name="OxygenRefit2"<br />
There are also a couple GTK themes built on the [http://aur.archlinux.org/packages.php?ID=24329 gtk-kde42-oxygen-theme Oxygen style] that can also do this.<br />
<br />
====Icon Themes====<br />
Not many full system icons themes are available for KDE 4. You can open up '''System Settings > Application Appearance > Icons''' and browse for new ones or install them manually. Many of them can be found on [http://www.kde-look.org/ kde-look.org].<br />
<br />
====Arch Linux Logo Icon in Kicker menu====<br />
Right-Click on the Kicker menu button, press "'''Application launcher settings'''" and then press the icon on the '''right'''. Then you may choose Arch Linux icon or any other icon that will replace the default one.<br />
<br />
Alternatively, install archlinux-themes-kde from ''extra'' and select the Arch icon theme in System Settings->Application Appearance->Icons.<br />
<br />
====Fonts====<br />
<br />
If by default, the fonts in KDE look poor, try installing the [http://www.archlinux.org/packages/extra/any/ttf-dejavu/ ttf-dejavu] and [http://www.archlinux.org/packages/community/any/ttf-liberation/ ttf-liberation] packages. After the installation, be sure to log out and back in. You should not have to modify any settings in the "Fonts" panel of the KDE System Settings application.<br />
<br />
If you have personally set up how your [[Fonts]] render, be aware that System Settings may alter their appearance. When you go '''System Settings > Appearance > Fonts''' System Settings will likely alter your font configuration file ({{Filename|fonts.conf}}). There is no way to prevent this but if you set the values to match your {{Filename|fonts.conf}} file the expected font rendering will return (it will require you to restart your application or in a few cases for you to have to restart your desktop). Note too that Gnomes' Font Preferences will also do this if you use both desktop environments.<br />
<br />
====Space efficiency====<br />
KDE is often '''critizised''' for being bloated. The user might get this perception from seeing''' many toolbars and pretty big scaled icons in the applications'''. One thing that improved the situation was the new Kwin-Theme that came with KDE SC 4.4.* with the more elegant buttons that one can also resize. '''KDE Apps allows to hide many toolbars, menubars and statusbars'''.<br />
<br />
=====All sorts of *bars=====<br />
Most toolbars of a program can be removed in the menubar-entry "'''Settings'''". There you often can hide the statusbar and often all toolbars. The last step should be to remove the menubar itself via '''Ctrl + M'''. If you do not want to remove any bars you can still make them smaller or remove the text via:<br />
System-Settings -> Appearance -> Style -> Tab "Finetuning" -> "Main toolbar text", "secondary toolbar text"<br />
<br />
Since most aspect ratios of modern flat screens are wider than 4:3 it could be reasonable to put the toolbar '''at the left or right of a window''' to artificially stretch windows more to the monitors aspect ratio.<br />
<br />
=====Plasma=====<br />
There are also some settings and modifications you can apply to your plasmoids to make KDE less space wasting. For example, the "Digital Clock" wastes more space than the "Analogue Clock". The little plasma icon ("Casheew") that one can see in the panel can be hidden by locking the widgets via rightklicking onto the panel.<br />
If you have got many tasks in your task-manager you should consider using ''Smooth-tasks''. This alternative task-manager allows you to just display the icons of a task thus using less space but still maintaining the ability of the user to distinguish the different tasks.<br />
<br />
Install [http://aur.archlinux.org/packages.php?ID=29410 smooth-tasks] from the [[AUR]].<br />
<br />
After installing and substituting it with the original task-manager you should have a deep look at the settings since they are much broader.<br />
one way of using the features of smooth-tasks could be to only display the icons of tasks and move the panel to the left or right of the screen. This is most usefull on widescreens.<br />
On very small screens it could be reasonable to set the bottom-panel to auto-hide completely.<br />
For netbooks there exists a special form factor to make a better use of the screen:<br />
<br />
System-Settings -> Desktop -> Workspace -> Form factor<br />
<br />
=====KWin=====<br />
The windows decorations can also be resized by making the buttons in the decoration smaller thus making the whole top border smaller:<br />
System Settings -> Appearance -> Windows -> Button size<br />
You could also remove the side-border of all windows via:<br />
System Settings -> Appearance -> Windows -> Border size<br />
<br />
=== Networking/Printing ===<br />
<br />
NetworkManager support has been added in KDE 4.5 SC. See [[Networkmanager#KDE4|NetworkManager]] for more information.<br />
<br />
===Samba/Windows support===<br />
<br />
If you want to have access to Windows services:<br />
<br />
pacman -S samba<br />
<br />
You may then configure your Samba shares through <br />
<br />
System Settings > Sharing > Samba<br />
<br />
=== KDE Desktop Activities ===<br />
<br />
KDE are Plasma based "virtual desktop"-like set of Plasma Widgets where you can independently configure widgets as if you had more than one screens/desktops. <br />
Since KDE 4.5, the feature of changing Desktop Activities has been simplified. <br />
<br />
On your desktop, click the Cashew Plasmoid and on the pop-up window press "Activities".<br />
<br />
A plasma bar will appear at the bottom of the screen which presents you the current Plasma Desktop Activities which exist. You can then navigate between them by pressing their correspondent icon.<br />
<br />
===Powersaving===<br />
<br />
KDE has integrated Powersaving service called "'''Powerdevil Power Management'''" that may adjust the powersaving profile of the system or/and the brightness of the screen (if supported).<br />
<br />
==== How to enable generic powersaving ====<br />
<br />
Navigate to Systemsettings > Power Management<br />
In Profile Management, in "When AC adaptor is plugged in" (or the battery<br />
option) choose "Powersave"<br />
In "Edit Profiles" > "Powersave", tick the "Enable System power saving", and<br />
then press apply.<br />
<br />
==== How to enable Cpufreq based powersaving ====<br />
<br />
Since KDE 4.5, [http://lists.kde.org/?l=kde-devel&m=126800277431817&w=2 Powerdevil doesn't handle CPU power schemes through Cpufreq]. CPU is being used by using the hardware or/and kernel "'''ondemand'''" governor power scheme and that's the official way to have the system's power management handled, according to the guidelines by the kernel power-management devs.<br />
<br />
{{Warning| Using Cpufreq in order to handle your CPU power schemes, that means, controlling it through software, IS NOT suggested for use since modern CPUs are capable of powersaving through their BIOSes.<br />
<br />
[http://www.codon.org.uk/~mjg59/power/good_practices.html Visit this link] for more info on good power management practices.}}<br />
<br />
If you do want, you still can use Cpufreq for your system which is accessible through the '''Solid Device Framework'''.<br />
<br />
So in order to do that, follow these steps:<br />
<br />
1. You need to create a script for every Cpufreq governor you want to be used. In this example, you will now create a script to enable the powersaving governor.<br />
<br />
Create a script in /usr/bin<br />
<br />
# touch /usr/bin/kde-cpufreq-powersave<br />
<br />
Add these in the script<br />
<br />
#!/bin/bash<br />
solid-powermanagement set cpufreq powersave<br />
<br />
Make it executable<br />
<br />
# chmod +x /usr/bin/kde-cpufreq-powersave<br />
<br />
2. Install cpufrequtils<br />
<br />
pacman -S cpufrequtils<br />
<br />
and make sure you have your CPU's cpufreq module loaded. For more information on this, visit [[Cpufreq|this article]].<br />
<br />
3. Then, in '''System Settings > Power Management''', go to "Edit Profiles" > "Powersave", and make sure that "Enable System power saving" is enabled.<br />
<br />
After that, press the file dialog button next to the phrase "When loading profile execute" and choose the script you have just created. Now, each time you choose the Powersaving profile through Powerdevil, Cpufreq will force the powersaving governor.<br />
<br />
You can do the same for other profiles and governors.<br />
<br />
==System Administration==<br />
<br />
===Set keyboard layout in order switch language inputs===<br />
In order to do that, navigate to <br />
System Settings > Input Devices > Keyboard<br />
There you may choose your keyboard model at first.<br />
{{Note| It is preferable that, if you use Evdev, that means Xorg automatic configuration for keyboards, you should choose "Evdev-managed keyboard".}}<br />
In the "'''Layouts'''" tab, you choose the languages you may want to use by pressing the "Add Layout" button and therefore the variant and the language.<br />
In the "'''Advanced'''" tab, you can choose the keyboard combination you want in order to change the layouts in the "Key(s) to change layout" sub-menu.<br />
<br />
===Terminate Xorg-server through KDE system settings===<br />
Navigate to <br />
System Settings > Input Devices > Keyboard > Advanced (tab) > "Key Sequence to terminate X server" submenu<br />
and tick the checkbox.<br />
<br />
==Desktop Search and Semantic Desktop==<br />
Most users who freshly install KDE are wondering what functionality the following four pieces of software are able to offer. Most features are still somehow hidden under the hood and yet not many applications featured in the KDE SC are using these interfaces. This capter intends to first explain the features and then convince the user of the power these tools offer once properly integrated into KDE. The following sections are more or less a roughly shortened version of [[http://thomasmcguire.wordpress.com/2009/10/03/akonadi-nepomuk-and-strigi-explained/ this blogpost].<br />
<br />
===Soprano===<br />
Soprano is a library for QT that is able to process RDF data. This is semantic data. Semantic data is a special kind of metadata which is much more flexible than metadata you might know from MP3-Tags or Meta-Tags in HTML since RDF data more resembles the structure of a spoken sentence, thus allowing a much wider field of ways dealing with them. Soprano stores semantic data in a backend and allows low level access to this data.<br />
<br />
===Nepomuk===<br />
Nepomuk is somehow the glue between Soprano and the KDE Desktop and thus the user. Nepomuk allows to tag the files with various entries and offers an API for the applications featured in KDE SC. It is enabled by default. Nepomuk can be turned on and off in<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
===Akonadi===<br />
Akonadi is one of the ways of getting data into Nepomuk. Its intention is to gather all kinds of PIM data from KMail, KAdressbook or Kopete. It collects chat contacts, email adresses, email attachments and email contents. First of all it feeds Nepomuk with this data but moreover does also provide a centralized accesspoint for all this data.<br />
<br />
===Strigi Search===<br />
Strigi is another way of feeding data into Nepomuk. It preverably indexes the users home-folder. Indexing means that it not only gathers filenames but also information about your music collection or tagged downloads you did with Kget. The Strigi search is also integrated into KDEs launcher which can be accessed via:<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
By default, Dolphin has a search bar on top-right where you may type what you want to be found from Strigi's index. <br />
<br />
{{Note | Strigi has implications for resource usage on your computer - CPU, memory, disk access, disk space, battery life. If Strigi is too resource-hungry for you, you can turn it off in "'''System Settings > Advanced > Desktop Search'''". }}<br />
<br />
Strigi folder indexing can be configured in:<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
==KDM (KDE Desktop Manager)==<br />
<br />
===KDM Xserver file===<br />
An example configuration for KDM can be found at '''/usr/share/config/kdm/kdmrc'''. See '''/usr/share/doc/HTML/en/kdm/kdmrc-ref.docbook''' for all options.<br />
<br />
===Configuring KDM===<br />
<br />
You can visit '''System Settings > Login Screen''' and make your changes. Whenever you press "Apply", a '''KDE Polkit authorisation''' window appears which will ask you to give your root password in order to finish the changes.<br />
<br />
==== Problems while Configuring KDM as a user ====<br />
<br />
If you seem not to be able to KDM settings when launching System Settings as user, press<br />
<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
and type<br />
<br />
kdesu systemsettings<br />
<br />
In the pop-up kdesu window, enter your root password and wait for System Settings to be launched.<br />
<br />
{{Note| Since you have launched it as root, be careful when changing your settings. All settings configuration in root-launched System Settings are saved under /root/.kde4 and not under ~/.kde4 (your home location).}}<br />
<br />
In the System Settings window, go to Login Screen.<br />
<br />
==Phonon==<br />
<br />
===What is Phonon ?===<br />
<br />
''Phonon is the multimedia API for KDE 4. Phonon was created to allow KDE 4 to be independent of any single multimedia framework such as GStreamer or xine and to provide a stable API for KDE 4's lifetime. It was done for various reasons: to create a simple KDE/Qt style multimedia API, to better support native multimedia frameworks on Windows and Mac OS X, and to fix problems of frameworks becoming unmaintained or having API or ABI instability.<br />
''<br />
<br />
from Wikipedia.<br />
<br />
'''Phonon''' is being widely used within KDE, for both audio (e.g., the System notifications or KDE audio apps) and video (e.g., the Dolphin video thumbnails).<br />
<br />
===Which backend should I choose ?===<br />
<br />
You can choose between various backends, like Gstreamer, Xine ( [http://www.archlinux.org/packages/?q=phonon phonon-xine] ) or VLC ( [http://www.archlinux.org/packages/?q=phonon-vlc phonon-vlc] ).<br />
<br />
==Using WebKit in Konqueror==<br />
<br />
===What is WebKit ?===<br />
<br />
WebKit is an open source browser engine developped by Apple Inc. It is used by Safari and Google Chrome. WebKit is a derivative from the KHTML and KJS libraries and contain many improvements.<br />
<br />
===How to use in konqueror===<br />
<br />
It is possible to use WebKit in Konqueror instead of KHTML. First install the kwebkitpart package :<br />
<br />
pacman -S kwebkitpart<br />
<br />
Then execute the following command<br />
<br />
keditfiletype text/html<br />
<br />
<br />
In the window that opens go to the "Embedding" tab. Move the entry "WebKit" up to the top of the list and then hit the "OK" button and restart Konqueror.<br />
<br />
==Troubleshooting==<br />
<br />
===KHotkeys issue===<br />
Ιf '''khotkeys''' does not work, make sure you have a fully updated system first.<br />
You can also create ~/.kde4/Autostart/reloadkhotkeys.sh with contents <br />
#!/bin/bash<br />
(sleep 3 && qdbus org.kde.kded /modules/khotkeys reread_configuration) &<br />
and then do a<br />
chmod u+x ~/.kde4/Autostart/reloadkhotkeys.sh<br />
then logout & login.<br />
<br />
===Enabling thumbnails under Konqueror and Dolphin file managers===<br />
For thumbnails of videos in konqueror and dolphin:<br />
pacman -S kdemultimedia-mplayerthumbs<br />
<br />
===I encounter problems with automounting (or) KDE behaves strangely for no apparent reason===<br />
Since the new X-Server 1.8 arrived in the stable repos some users got the impression that HAL (Hardware Abstraction Layer) might not be needed anymore at all. But for a fully functional KDE-Desktop it is neccessary to run hal:<br />
/etc/rc.d/hal start<br />
For ease of use you should add it to your daemons list in ''/etc/rc.conf'':<br />
DAEMONS=( .. @hal ..)<br />
It is no problem to start HAL in the background to shave some time of boot.<br />
If you are using udev to automatically mount your drives with an udev-rule without running hal you should take note of the fact that these mounted drives will '''not''' be recognized by KDE. So no entry of this device will show up in Dolphin and Device Notifier won't notify you either.<br />
<br />
=== Suspend to Disk/Ram not working ===<br />
If suspend to disk/ram does not work the be sure hal is running, also make sure you are in the power group (remember to logout)<br />
Also, if you are starting KDE with startx try adding ck-launch-session to the .xinitrc,<br />
as so:<br />
#!/bin/sh<br />
#<br />
# ~/.xinitrc<br />
#<br />
# Executed by startx (run your window manager from here)<br />
# exec gnome-session<br />
exec ck-launch-session startkde<br />
# exec startxfce4<br />
# ...or the Window Manager of your choice<br />
This is done automatically with kdm.<br />
<br />
=== Graphical related issues ===<br />
<br />
==== Low 2D desktop performance (or) Artifacts appear when on 2D ====<br />
Make sure you have the proper driver for your card installed, so that your desktop is at least 2D accelerated. Follow these articles for more information: [[ATI]], [[NVIDIA]], [[Intel]] for more information, in order to make sure that everything is all right.<br />
The open-source ATI and Intel drivers and the proprietary (binary) Nvidia driver should theoretically provide the best 2D and 3D acceleration.<br />
<br />
However, in my case, I have found the [[Nouveau]] open-source driver for Nvidia cards to be the most efficient when it comes to 2D drawing (the binary was ''so'' bad, changing a tab or minimizing a window would require 5-8 seconds, but I have only heard one or two other people with my problem). As with anything, your mileage may vary.<br />
<br />
If this doesn't solve your problems, maybe your driver doesn't provide a good XRender acceleration which the current Qt painter engine relies on by default. You can change the painter engine to software based only by invoking the application with the "-graphicssystem raster" command line. This rendering engine can be set as the default one by recompiling Qt with the same as configure option, "-graphicssystem raster". The raster paint engine enables the CPU to do the majority of the painting, as opposed to the GPU. You may get better performance, depending on your system. This is basically a work-around for the terrible Linux driver stack...since the CPU should obviously not be doing graphical computations since it is designed for fewer threads of greater complexity, as opposed to the GPU which is many threads but lesser computational strength.<br />
<br />
With Qt 4.7+, recompiling Qt is not needed. Simply export QT_GRAPHCSSYSTEM=raster, or "opengl", or "native" (for the default). Raster depends on the CPU, OpenGL depends on the GPU and high driver support (it's buggy and highly in development, so I wouldn't expect it to work), and Native is just using the X11 rendering (mixture, usually).<br />
<br />
For mroe information, consult this [http://apachelog.wordpress.com/2010/09/05/qt-graphics-system-kcm/ KDE Developer blog entry] and/or this [http://labs.trolltech.com/blogs/2009/12/18/qt-graphics-and-performance-the-raster-engine/ Qt Developer blog entry]. I recommend both.<br />
<br />
==== Konsole is slow in applications like vim ====<br />
This is a problem that is caused by slow glyph rendering. You can solve this by switching to a scalable font like Bitstream Vera Sans Mono.<br />
<br />
==== Low 3D desktop performance====<br />
KDE begins with desktop effects enabled. Older cards may be insufficient for 3D desktop acceleration. You can disable desktop effects in <br />
System Settings > Desktop <br />
or you can toggle desktop effects with <br />
{{Keypress|Alt}} + {{Keypress|Shift}} + {{Keypress|F12}}<br />
<br />
{{Note| You may encounter such problems with 3D desktop performance even when using a more powerful graphics card, but using catalyst proprietary driver (fglrx). This driver is known for having issues with 3D acceleration. Visit [[ATI|the ATi Wiki page]] for more troubleshooting.}}<br />
<br />
==== Flickering in fullscreen when compositing is enabled ====<br />
According to https://fedoraproject.org/wiki/KDE/How_to_reduce_fullscreen_flicker : <br />
<br />
Press Alt+F2 and run: <br />
<br />
kwriteconfig --file kwinrc --group Compositing --key UnredirectFullscreen --type bool false<br />
<br />
Apply the changes by pressing Alt+F2 and running: <br />
<br />
qdbus org.kde.kwin /KWin reconfigure<br />
<br />
This forces KWin not to use window unredirection but can affect performance of fullscreen OpenGL applications when desktop effects are enabled. Desktop effects can be suspended to prevent performance issues (press Alt+Shift+F12) before running such applications. <br />
<br />
See https://bugs.kde.org/show_bug.cgi?id=177495<br />
<br />
===== KDE 4.5 specific graphics' issues =====<br />
<br />
Many users who use the ATI and Intel open-source drivers have encountered several performance regressions with the latest KWin update in KDE 4.5. Please try one of the following workarounds (in order of merit) if you have such a problem (via System Settings > Desktop Effects > Advanced):<br />
<br />
* Add '''export LIBGL_ALWAYS_INDIRECT=1''' to ''/etc/profile''<br />
** Optionally (because the above already forces this), ''uncheck'' '''Enable direct rendering''' under ''OpenGL Options''<br />
** Reboot (and we ''do'' mean reboot - don't try to restart the X server)<br />
** This effectively disables Direct Rendering and may affect other OpenGL applications negatively<br />
* Use '''XRender''' as the ''Compositing type''<br />
* Disable Desktop Effects (compositing) altogether<br />
** the best way to achieve this appears to be to disable compositing in xorg.conf by adding<br />
Section "Extensions"<br />
Option "Composite" "Disable"<br />
EndSection<br />
<br />
<br />
See upstream bug report: https://bugs.kde.org/show_bug.cgi?id=241402<br />
<br />
===Sound problems under KDE===<br />
<br />
====ALSA related problems====<br />
{{Note| First make sure you have '''alsa-lib''' and '''alsa-utils''' installed.}}<br />
<br />
====="Falling back to default" messages when trying to listen to any sound in KDE=====<br />
When you encounter such messages:<br />
:The audio playback device ''<name-of-the-sound-device>'' does not work.<br />
:Falling back to default<br />
Go to<br />
System Settings > Multimedia<br />
and set the device named "'''default'''" above all the other devices in each box you see.<br />
<br />
=====I cannot play mp3 files when having Gstreamer backend in Qt Phonon=====<br />
That can be solved by installing gstreamer0.10-plugins<br />
pacman -S gstreamer0.10-plugins<br />
You can also change the backend used by Phonon, by installing the phonon-xine<br />
pacman -S phonon-xine<br />
if you encounter problems that are not solved after installing gstreamer plugins. Then choose Xine in<br />
System Settings > Multimedia > Backend (tab)<br />
(it may have been autoselected after installing phonon-xine)<br />
<br />
=====Amarok "waits" before playing any track=====<br />
If you have encountered this error, the problem is backend specific. In order to solve this problem, change Amarok's backend from '''gstreamer''' to '''xine'''.<br />
<br />
====OSS4 related problems====<br />
If you have OSS4 installed and encounter any problems you should be aware that developers of Kmix are still integrating OSSv4 support. There is an [http://aur.archlinux.org/packages.php?ID=29286 AUR package] that is still experimental.<br />
Arch uses phonon with the Gstreamer backend that should work for most applications. Alternately you could try [[KDE#I_can.27t_play_mp3_files_when_having_Gstreamer_backend_in_Qt_Phonon|phonon with Xine]].<br />
<br />
=== Arch linux specific packaging issues ===<br />
Due to some upgrades on the packages or a newer versioned pacman with bugs (pft, like there are any ;) there could be some problems during upgrading. Please read the sections below, if you have a problem.<br />
<br />
===I wanted a minimal installation of KDE. After I installed some packages and logged in KDE, there are no panels===<br />
If you wanted a minimal installation of KDE, logged in, heard the login sound but nothing else happened, you may not have installed the Plasma binaries. These are included in<br />
kdebase-workspace<br />
Install this package and restart Xorg.<br />
<br />
===I want a fresh installation of KDE for my system. What should I do ?===<br />
Just rename the settings directory of KDE (just in case you'll want to go back to your original settings):<br />
mv ~/.kde4 ~/.kde4-backup<br />
<br />
===Plasma desktop behaves strangely===<br />
Plasma issues are usually caused by unstable '''plasmoids''' or '''plasma themes'''. First, find which was the last plasmoid or plasma theme you had installed and disable it or uninstall it. <br />
<br />
So, if your desktop suddenly exhibits "locking up", this is likely caused by a faulty installed widget. If you cannot remember which widget you installed before the problem began(sometimes it can be an irregular problem), try to track it down by removing each widget until the problem ceases. Then you can uninstall the widget, and file a bug report (bugs.kde.org) '''only if it is an official widget'''. If it is not, I recommend you find the entry on kde-look.org and inform the developer of that widget about the issue (detailing steps to reproduce, etc).<br />
<br />
<br />
If you cannot find the problem, but you do not want ''all'' the KDE settings to be lost, do:<br />
<br />
rm -r ~/.kde4/share/config/plasma*<br />
<br />
This command will '''delete all plasma related configs''' of your user and when you will relogin into KDE, you will have the '''default''' settings back. You should know that this action '''cannot be undone'''. You ought to create a backup folder and copy all the plasma related configs in it.<br />
<br />
==Other KDE projects==<br />
===The Chakra Project===<br />
<br />
{{Warning| Chakra Project may soon '''split''' from Arch's main system. You should be informed on Chakra Project's news and devs' decisions on [http://chakra-project.org/ Chakra Project website].}}<br />
<br />
====Split KDE packages====<br />
[http://chakra-project.org/ The Chakra Project] is a community-based modular version of KDE 4 and Live CD project, which includes a number of UI enhancements for KDE 4.x. Visit [http://chakra-project.org/wiki/index.php/Main_Page the Chakra Project Wiki main page] for more information.<br />
<br />
====Chakra Project Arch Live CD====<br />
<br />
The Chakra Project also provides a full featured Live CD, which has the latest stable KDEmod4 packages included.<br />
You may visit [http://chakra-project.org/download-iso.html the Chakra Project Live CD webpage] in order to find more information.<br />
<br />
====Passing from KDEmod to [extra]'s KDE====<br />
<br />
{{Note|You do have instructions for passing from '''[extra]''''s KDE4 to KDEmod4 [http://chakra-project.org/download-kdemod.html here]. }}<br />
<br />
Both flavours of KDE provide the same Desktop Environment, so if you install the one or the other, in the same upstream version, there should not be any problem regarding plasmoids, themes, styles or any KDE related application.<br />
<br />
So, if you want, for any reason, to pass from KDEmod to '''[extra]''''s KDE, do:<br />
<br />
pacman -Rd kdemod<br />
<br />
OR<br />
<br />
pacman -Rd kdemod-uninstall<br />
<br />
and it should be removed, but with the '''-d''' argument, the KDE dependent packages '''are not''' uninstalled, but only the Desktop Environment. But, if you want to '''completelly''' remove any KDEmod specific application/plasmoid/style etc too, do<br />
<br />
pacman -Rcns kdemod<br />
<br />
and then make sure that everything has been uninstalled:<br />
<br />
pacman -Q | grep kde<br />
<br />
{{Note| If you want to use the same KDE specific settings from the previous KDEmod installation, move or rename ~/'''.kdemod4''' to ~/'''.kde4''' }}<br />
<br />
After this, you may have KDEmod uninstalled.<br />
<br />
Then, follow [[KDE#Installing_KDE_4.5|this]].<br />
<br />
===KDE unstable===<br />
====KDEmod testing/unstable====<br />
<br />
You may visit [http://chakra-project.org/repos.html this webpage] and see which repos can you add in''' pacman.conf''' in order to test the KDEmod unstable packages.<br />
<br />
====KDE unstable (snapshot)====<br />
<br />
===== Unofficial kde-unstable =====<br />
<br />
The member '''ProgDan''' has created a repo where he uploads the testing KDE packages when a new '''upstream snapshot''' is out. You may visit [http://bbs.archlinux.org/viewtopic.php?id=76245 this topic] for more information.<br />
<br />
===== Semi-official kde-unstable =====<br />
<br />
When KDE is reaching beta or RC milestone, KDE "unstable" packages are uploaded to the [kde-unstable] repo. <br />
<br />
You may add it by adding:<br />
<br />
[kde-unstable]<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
in '''{{Filename|/etc/pacman.conf}}'''<br />
<br />
They stay there until KDE is declared stable and passes to [extra].<br />
<br />
Make sure [http://wiki.archlinux.org/index.php/KDE#Distro_and_Upstream_bug_report you make bug reports] if you find any issues.<br />
<br />
Read [http://wiki.archlinux.org/index.php/DeveloperWiki:KDE#Users this section] in the wiki as well.<br />
<br />
===KDE Legacy===<br />
<br />
====Downgrading to KDEmod3 from KDE 4====<br />
For those people who decide that KDE 4 is still not yet "ready" for them, there is a website about how to downgrade to a version of KDE 3.5 called '''kdemod3''':<br />
* [http://chakra-project.org/download-kdemod3.html KDEmod3]<br />
<br />
'''Warning''': There have been issues reported regarding Libjpeg7, that caused KDEmod3 to behave strangely. In order to solve that, install [http://aur.archlinux.org/packages.php?ID=28427 libjpeg6] [http://aur.archlinux.org/packages.php?ID=33795 libpng12 from AUR]. The libs '''libjpeg6''' and '''libpng12''' can be safely installed along side the current libraries. You will also want to update [http://aur.archlinux.org/packages.php?ID=19338 poppler-qt3 from AUR]. The only conflict you will find is a conflict between poppler and poppler-qt3 during poppler updates. '''poppler-qt3''' is a dependency for the kdemod3-kdegraphics-kpdf package, but as a work-around you can simply remove poppler-qt3 with the --nodeps flag, complete the Arch update of poppler and then reinstall poppler-qt3. More info [http://chakra-project.org/bbs/viewtopic.php?id=1097 here]<br />
<br />
{{Warning| KDE 3 is no longer maintained and supported by the KDE developers. KDEmod3 is no longer maintained by the Chakra Projects developers. Use it on your own risk, regarding any bugs, performance issues or security risks.}}<br />
<br />
==== Unofficial community repository for KDEmod3 ====<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=97612 In this thread] you may find info on a rebuild of the unsupported KDEmod3.<br />
<br />
==Bugs==<br />
===Common bugs===<br />
If you think you found something that seems like bug, please see [[Common_Issues]] and regarding that: KDE 4 config files are usually located at <br />
<br />
~/.kde4/share/config/<br />
<br />
and for app-specific configs <br />
<br />
~/.kde4/share/apps/<br />
<br />
===Distro and Upstream bug report===<br />
It is preferrable that if you find a minor or serious bug, you should visit [http://bugs.archlinux.org the Arch Bug Tracker] or/and [http://bugs.kde.org KDE Bug Tracker] in order to report that. Make sure that you be clear on what you want to report.<br />
<br />
If you have any issue and you write about in on the Arch forums, first make sure that you have '''FULLY''' updated your system using a good sync mirror (check [https://www.archlinux.de/?page=MirrorStatus here]) or try '''reflector'''.<br />
<br />
==External Links==<br />
* [http://www.kde.org KDE Homepage]<br />
* [http://bugs.kde.org KDE Bug Tracker]<br />
* [http://bugs.archlinux.org Arch Linux Bug Tracker]<br />
* [http://websvn.kde.org KDE WebSVN]</div>Vamp898https://wiki.archlinux.org/index.php?title=KDE&diff=117784KDE2010-09-20T23:18:50Z<p>Vamp898: /* Minimal Install */</p>
<hr />
<div>[[Category:Desktop environments (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n|KDE}}<br />
[[de:KDE]]<br />
{{Article summary start}}<br />
{{Article summary text|KDE is a full featured desktop environment known for its well integrated applications, like Konqueror, Dolphin, Plasma, KWrite and Konsole.}}<br />
{{Article summary end}}<br />
==KDE 4.5 Arch Linux Notes==<br />
<br />
'''KDE 4.5''' Software Compilation is the current major release of KDE that includes a number of improvements and bug fixes. The new Arch package set for KDE makes it possible to only install those applications you like.''<br />
<br />
Important features of the Archlinux KDE SC in short:<br />
* '''Split packages'''; for more Information see [[KDE_Packages|KDE Packages]] and [[DeveloperWiki:Splitting_KDE|Splitting KDE]].<br />
* You can use different Phonon backends, like Gstreamer or Xine<br />
* Meta packages ensure a smooth upgrade and emulate the old monolith packages for those who prefer them.<br />
<br />
Important hints for upgraders:<br />
* Always check if your mirror is '''up to date'''.<br />
* pacman will ask you to replace '''all''' kde packages with kde-meta packages.<br />
* '''Do not force an update'''. If pacman complains about conflicts please '''file a bug report'''.<br />
* You can remove the meta packages and the sub packages you do not need after the update.<br />
* If you do not like split packages just keep using the kde-meta packages.<br />
<br />
:Information about upstream changes are be available [http://kde.org/announcements/4.5 here]<br />
<br />
=== KDE 4.5 Archlinux packaging specific info ===<br />
<br />
* KDEpim has seen no new release, please continue to use version 4.4.5 until KDEpim 4.5 is released.<br />
* Due to incompatibility with ruby 1.9, ruby kdebindings are not provided<br />
* Webkit support in konqueror is provided by kwebkitpart<br />
* KDM is now started as the kdm user<br />
* Upstream removed five translations: csb, mai, mk, si and tg<br />
<br />
==Installing KDE 4.5 Software Compilation==<br />
<br />
=== Installing full KDE SC ===<br />
<br />
To install the entire KDE set, first '''fully upgrade your system''':<br />
<br />
pacman -Syu<br />
<br />
and then:<br />
<br />
pacman -S kde<br />
<br />
If you need language files:<br />
<br />
pacman -S kde-l10n-yourlanguagehere<br />
<br />
e.g. kde-l10n-'''de''', for the German language.<br />
<br />
{{Note| KDE 4.x is '''modular'''; you can install your preferred KDE applications without having to install an entire set of packages. See [[KDE Packages]] for more information.}}<br />
<br />
=== Minimal Install ===<br />
<br />
If you want to have a minimal installation of the KDE SC, here is an example:<br />
<br />
pacman -S kdebase kde-l10n-yourlanguagehere phonon-xine<br />
<br />
== Starting KDE ==<br />
<br />
Starting KDE depends on your preferences. Basically there are two ways of starting KDE. Using '''KDM''' or '''xinitrc'''.<br />
<br />
=== Using KDM (KDE Display Manager)===<br />
''It is highly recommended to get familiar with the [http://wiki.archlinux.org/index.php/Display_Manager full article] concerning display managers, before you make any changes. See also [[KDM]] Wiki page.''<br />
<br />
==== Starting KDM as a daemon ====<br />
Add "'''kdm'''" (without the quotes) to deamons array in '''{{Filename|/etc/rc.conf}}'''<br />
<br />
DAEMONS=(dbus hal syslog-ng network netfs crond ... '''kdm''')<br />
<br />
==== Starting KDM through /etc/inittab [''preferable''] ==== <br />
<br />
Edit '''{{Filename|/etc/inittab}}''' and comment out:<br />
#id:3:initdefault:<br />
<br />
[...]<br />
<br />
#x:5:respawn:/usr/bin/xdm -nodaemon<br />
<br />
Then uncomment:<br />
<br />
id:5:initdefault:<br />
<br />
[...]<br />
<br />
x:5:respawn:/usr/bin/kdm -nodaemon<br />
<br />
{{Note| In both methods KDM loads Xorg automatically.}}<br />
<br />
===Using xinitrc===<br />
''The meaning and usage of '''xinitrc''' is very well described [http://wiki.archlinux.org/index.php/Xinitrc here].<br />
<br />
Edit '''{{Filename|/home/}}'''{{Filename|''your-username''}}'''{{Filename|/.xinitrc}}'''. Then uncomment:<br />
exec ck-launch-session startkde <br />
After a reboot or/and login, each execution of Xorg ('''startx''' or '''xinit''') will start KDE automatically.<br />
<br />
{{Warning| By doing this you may have restart/shutdown functions enabled in your KDE menu.}}<br />
<br />
{{Note| If you want to start Xorg at boot, please read [[Start X at boot]] article.}}<br />
<br />
==Configuring==<br />
<br />
{{Note| Configuring KDE is primarily done in ''''System Settings''''. There are also a few other options available for the desktop with 'Desktop Settings' when you right click the desktop.}}<br />
<br />
For other personalization options not covered below such as activities, different wallpapers on one cube, etc please refer to the [[Plasma]] wiki page.<br />
<br />
===Personalization===<br />
<br />
How to set up the KDE desktop to your personal style; use different Plasma themes, window decorations and icon themes. <br />
<br />
====Plasma Desktop====<br />
<br />
[[Plasma]] is a desktop integration technology that provides many functions from displaying the wallpaper, adding widgets to the desktop, and handling the panels or "taskbar".<br />
<br />
=====Themes=====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=76&PHPSESSID=bba0ae5354c7818b519687ebf5badf0e Plasma themes] can be installed through the Desktop Settings control panel. Plasma themes define how your panels and plasmoids look like. If you like to have them installed system-wide, themes can be found in both the official repositories and [http://aur.archlinux.org/packages.php?O=0&K=plasmatheme&do_Search=Go AUR].<br />
<br />
=====Widgets=====<br />
Plasmoids are little scripted or coded KDE apps that enhance the functionality of your deskop in a yet very pleasing way, based on the Plasma technology of KDE. You are able to display system-critical information like ''left over disk space'' or ''monitor/modify your network connection''. It also allows all kinds of other widgets, like displaying the weather, a widget for easily pasting images to a pastebin website, or having collections of virtual folders "folderview". Just to name a few.<br />
<br />
The easiest way to install more widgets is by left-clicking onto a panel or the desktop:<br />
<br />
Add Widgets -> Get new Widgets -> Download Widgets<br />
<br />
You should be aware that these widgets are not created officially by KDE developers. Most of them are just people who wanted to script one (easily) to suit a need they had.<br />
<br />
It may be of interest to you that many different widget types are supported (not just our own "plasmoids" or widgets). Plasma can use all kinds of widgets, from MacOSX widgets, Microsoft Windows Vista/7 widgets, Google Widgets, and even the old system - SuperKaramba - widgets. You should however, prefer Plasma widgets to other ones, since they provide more thorough integration and are prepared to be on the KDE desktop.<br />
<br />
This will present a nice frontend for [http://www.kde-look.org/ kde-look.org] and allows you to (un)install or update third-party widgets with just one click.<br />
They are also available in the [http://aur.archlinux.org/packages.php?O=0&K=plasmoid&do_Search=Go&PP=25&SO=d&SB=v repositories].<br />
<br />
{{Note|The widgets provided via KHNS (KHotNewStuff, what you just used to download widgets) does not/cannot grant the ability to install third-party widgets written in C++ since nearly each one requires different setup techniques, etc. and is thus difficult/impossible to automate. In other words, there could theoretically be useful widgets out there that you cannot try.}}<br />
<br />
One thing to keep in mind, is that when a third-part developers creates a C++ widgets which has severe bugs in it, it could potentially bring down the Plasma process (crashing it). Scripted ones are sandboxed and this cannot happen. If it does crash - no worries, just remove the widget.<br />
<br />
====Window Decorations====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=75 Window decorations] can be changed in<br />
System Settings -> Application Appearance -> Style<br />
There you can also directly download and install more themes with one click and some are available on [http://aur.archlinux.org/packages.php?O=0&K=kdestyle&do_Search=Go&PP=25&SO=d&SB=v AUR].<br />
<br />
====KDE 4 Theme Integration with GTK Applications====<br />
To better integrate GTK and KDE 4 themes, you can use '''QtCurve'''.<br />
<br />
pacman -S qtcurve-gtk2 qtcurve-kde4 gtk-kde4<br />
<br />
Or you can download a GTK theme that matches your version of KDE [http://kde-look.org/content/show.php?content=103741 here]. This theme comes closer to the original Oxygen and is updated frequently.<br />
<br />
=====Automatic procedure=====<br />
<br />
To change the GTK theme to QtCurve or something else a few applications are available:<br />
<br />
pacman -S lxappearance<br />
pacman -S gtk-theme-switch2<br />
pacman -S gtk-chtheme<br />
<br />
Then change the theme of your choice in the respective application:<br />
<br />
lxappearance<br />
gtk-theme-switch2<br />
gtk-chtheme<br />
<br />
=====Manual procedure=====<br />
To manually change the GTK theme to QtCurve, you need to create the file {{Filename|~/.gtkrc-2.0-kde4}} with the following content:<br />
include "/usr/share/themes/QtCurve/gtk-2.0/gtkrc"<br />
include "/etc/gtk-2.0/gtkrc"<br />
<br />
style "user-font"<br />
{<br />
font_name="Sans Serif"<br />
}<br />
widget_class "*" style "user-font" <br />
gtk-theme-name="QtCurve"<br />
Then you need to create the symbolic link {{Filename|~/.gtkrc-2.0}}:<br />
ln -s .gtkrc-2.0-kde4 .gtkrc-2.0<br />
If you want also specify a font, you can add (and adapt) the following line to the file:<br />
gtk-font-name="Sans Serif 9"<br />
<br />
=====Icons=====<br />
If you're using Oxygen icons and want a consistent look in GTK open/save dialogs, you can install an [http://aur.archlinux.org/packages.php?O=0&K=oxygenrefit2-icon-theme&do_Search=Go oxygenrefit2] icon theme from AUR and set it as your GTK icon theme. Add the theme to the {{Filename|~/.gtkrc-2.0}} file or you can use lxappearance and set it.<br />
gtk-icon-theme-name="OxygenRefit2"<br />
There are also a couple GTK themes built on the [http://aur.archlinux.org/packages.php?ID=24329 gtk-kde42-oxygen-theme Oxygen style] that can also do this.<br />
<br />
====Icon Themes====<br />
Not many full system icons themes are available for KDE 4. You can open up '''System Settings > Application Appearance > Icons''' and browse for new ones or install them manually. Many of them can be found on [http://www.kde-look.org/ kde-look.org].<br />
<br />
====Arch Linux Logo Icon in Kicker menu====<br />
Right-Click on the Kicker menu button, press "'''Application launcher settings'''" and then press the icon on the '''right'''. Then you may choose Arch Linux icon or any other icon that will replace the default one.<br />
<br />
Alternatively, install archlinux-themes-kde from ''extra'' and select the Arch icon theme in System Settings->Application Appearance->Icons.<br />
<br />
====Fonts====<br />
<br />
If by default, the fonts in KDE look poor, try installing the [http://www.archlinux.org/packages/extra/any/ttf-dejavu/ ttf-dejavu] and [http://www.archlinux.org/packages/community/any/ttf-liberation/ ttf-liberation] packages. After the installation, be sure to log out and back in. You should not have to modify any settings in the "Fonts" panel of the KDE System Settings application.<br />
<br />
If you have personally set up how your [[Fonts]] render, be aware that System Settings may alter their appearance. When you go '''System Settings > Appearance > Fonts''' System Settings will likely alter your font configuration file ({{Filename|fonts.conf}}). There is no way to prevent this but if you set the values to match your {{Filename|fonts.conf}} file the expected font rendering will return (it will require you to restart your application or in a few cases for you to have to restart your desktop). Note too that Gnomes' Font Preferences will also do this if you use both desktop environments.<br />
<br />
====Space efficiency====<br />
KDE is often '''critizised''' for being bloated. The user might get this perception from seeing''' many toolbars and pretty big scaled icons in the applications'''. One thing that improved the situation was the new Kwin-Theme that came with KDE SC 4.4.* with the more elegant buttons that one can also resize. '''KDE Apps allows to hide many toolbars, menubars and statusbars'''.<br />
<br />
=====All sorts of *bars=====<br />
Most toolbars of a program can be removed in the menubar-entry "'''Settings'''". There you often can hide the statusbar and often all toolbars. The last step should be to remove the menubar itself via '''Ctrl + M'''. If you do not want to remove any bars you can still make them smaller or remove the text via:<br />
System-Settings -> Appearance -> Style -> Tab "Finetuning" -> "Main toolbar text", "secondary toolbar text"<br />
<br />
Since most aspect ratios of modern flat screens are wider than 4:3 it could be reasonable to put the toolbar '''at the left or right of a window''' to artificially stretch windows more to the monitors aspect ratio.<br />
<br />
=====Plasma=====<br />
There are also some settings and modifications you can apply to your plasmoids to make KDE less space wasting. For example, the "Digital Clock" wastes more space than the "Analogue Clock". The little plasma icon ("Casheew") that one can see in the panel can be hidden by locking the widgets via rightklicking onto the panel.<br />
If you have got many tasks in your task-manager you should consider using ''Smooth-tasks''. This alternative task-manager allows you to just display the icons of a task thus using less space but still maintaining the ability of the user to distinguish the different tasks.<br />
<br />
Install [http://aur.archlinux.org/packages.php?ID=29410 smooth-tasks] from the [[AUR]].<br />
<br />
After installing and substituting it with the original task-manager you should have a deep look at the settings since they are much broader.<br />
one way of using the features of smooth-tasks could be to only display the icons of tasks and move the panel to the left or right of the screen. This is most usefull on widescreens.<br />
On very small screens it could be reasonable to set the bottom-panel to auto-hide completely.<br />
For netbooks there exists a special form factor to make a better use of the screen:<br />
<br />
System-Settings -> Desktop -> Workspace -> Form factor<br />
<br />
=====KWin=====<br />
The windows decorations can also be resized by making the buttons in the decoration smaller thus making the whole top border smaller:<br />
System Settings -> Appearance -> Windows -> Button size<br />
You could also remove the side-border of all windows via:<br />
System Settings -> Appearance -> Windows -> Border size<br />
<br />
=== Networking/Printing ===<br />
<br />
NetworkManager support has been added in KDE 4.5 SC. See [[Networkmanager#KDE4|NetworkManager]] for more information.<br />
<br />
===Samba/Windows support===<br />
<br />
If you want to have access to Windows services:<br />
<br />
pacman -S samba<br />
<br />
You may then configure your Samba shares through <br />
<br />
System Settings > Sharing > Samba<br />
<br />
=== KDE Desktop Activities ===<br />
<br />
KDE are Plasma based "virtual desktop"-like set of Plasma Widgets where you can independently configure widgets as if you had more than one screens/desktops. <br />
Since KDE 4.5, the feature of changing Desktop Activities has been simplified. <br />
<br />
On your desktop, click the Cashew Plasmoid and on the pop-up window press "Activities".<br />
<br />
A plasma bar will appear at the bottom of the screen which presents you the current Plasma Desktop Activities which exist. You can then navigate between them by pressing their correspondent icon.<br />
<br />
===Powersaving===<br />
<br />
KDE has integrated Powersaving service called "'''Powerdevil Power Management'''" that may adjust the powersaving profile of the system or/and the brightness of the screen (if supported).<br />
<br />
==== How to enable generic powersaving ====<br />
<br />
Navigate to Systemsettings > Power Management<br />
In Profile Management, in "When AC adaptor is plugged in" (or the battery<br />
option) choose "Powersave"<br />
In "Edit Profiles" > "Powersave", tick the "Enable System power saving", and<br />
then press apply.<br />
<br />
==== How to enable Cpufreq based powersaving ====<br />
<br />
Since KDE 4.5, [http://lists.kde.org/?l=kde-devel&m=126800277431817&w=2 Powerdevil doesn't handle CPU power schemes through Cpufreq]. CPU is being used by using the hardware or/and kernel "'''ondemand'''" governor power scheme and that's the official way to have the system's power management handled, according to the guidelines by the kernel power-management devs.<br />
<br />
{{Warning| Using Cpufreq in order to handle your CPU power schemes, that means, controlling it through software, IS NOT suggested for use since modern CPUs are capable of powersaving through their BIOSes.<br />
<br />
[http://www.codon.org.uk/~mjg59/power/good_practices.html Visit this link] for more info on good power management practices.}}<br />
<br />
If you do want, you still can use Cpufreq for your system which is accessible through the '''Solid Device Framework'''.<br />
<br />
So in order to do that, follow these steps:<br />
<br />
1. You need to create a script for every Cpufreq governor you want to be used. In this example, you will now create a script to enable the powersaving governor.<br />
<br />
Create a script in /usr/bin<br />
<br />
# touch /usr/bin/kde-cpufreq-powersave<br />
<br />
Add these in the script<br />
<br />
#!/bin/bash<br />
solid-powermanagement set cpufreq powersave<br />
<br />
Make it executable<br />
<br />
# chmod +x /usr/bin/kde-cpufreq-powersave<br />
<br />
2. Install cpufrequtils<br />
<br />
pacman -S cpufrequtils<br />
<br />
and make sure you have your CPU's cpufreq module loaded. For more information on this, visit [[Cpufreq|this article]].<br />
<br />
3. Then, in '''System Settings > Power Management''', go to "Edit Profiles" > "Powersave", and make sure that "Enable System power saving" is enabled.<br />
<br />
After that, press the file dialog button next to the phrase "When loading profile execute" and choose the script you have just created. Now, each time you choose the Powersaving profile through Powerdevil, Cpufreq will force the powersaving governor.<br />
<br />
You can do the same for other profiles and governors.<br />
<br />
==System Administration==<br />
<br />
===Set keyboard layout in order switch language inputs===<br />
In order to do that, navigate to <br />
System Settings > Input Devices > Keyboard<br />
There you may choose your keyboard model at first.<br />
{{Note| It is preferable that, if you use Evdev, that means Xorg automatic configuration for keyboards, you should choose "Evdev-managed keyboard".}}<br />
In the "'''Layouts'''" tab, you choose the languages you may want to use by pressing the "Add Layout" button and therefore the variant and the language.<br />
In the "'''Advanced'''" tab, you can choose the keyboard combination you want in order to change the layouts in the "Key(s) to change layout" sub-menu.<br />
<br />
===Terminate Xorg-server through KDE system settings===<br />
Navigate to <br />
System Settings > Input Devices > Keyboard > Advanced (tab) > "Key Sequence to terminate X server" submenu<br />
and tick the checkbox.<br />
<br />
==Desktop Search and Semantic Desktop==<br />
Most users who freshly install KDE are wondering what functionality the following four pieces of software are able to offer. Most features are still somehow hidden under the hood and yet not many applications featured in the KDE SC are using these interfaces. This capter intends to first explain the features and then convince the user of the power these tools offer once properly integrated into KDE. The following sections are more or less a roughly shortened version of [[http://thomasmcguire.wordpress.com/2009/10/03/akonadi-nepomuk-and-strigi-explained/ this blogpost].<br />
<br />
===Soprano===<br />
Soprano is a library for QT that is able to process RDF data. This is semantic data. Semantic data is a special kind of metadata which is much more flexible than metadata you might know from MP3-Tags or Meta-Tags in HTML since RDF data more resembles the structure of a spoken sentence, thus allowing a much wider field of ways dealing with them. Soprano stores semantic data in a backend and allows low level access to this data.<br />
<br />
===Nepomuk===<br />
Nepomuk is somehow the glue between Soprano and the KDE Desktop and thus the user. Nepomuk allows to tag the files with various entries and offers an API for the applications featured in KDE SC. It is enabled by default. Nepomuk can be turned on and off in<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
===Akonadi===<br />
Akonadi is one of the ways of getting data into Nepomuk. Its intention is to gather all kinds of PIM data from KMail, KAdressbook or Kopete. It collects chat contacts, email adresses, email attachments and email contents. First of all it feeds Nepomuk with this data but moreover does also provide a centralized accesspoint for all this data.<br />
<br />
===Strigi Search===<br />
Strigi is another way of feeding data into Nepomuk. It preverably indexes the users home-folder. Indexing means that it not only gathers filenames but also information about your music collection or tagged downloads you did with Kget. The Strigi search is also integrated into KDEs launcher which can be accessed via:<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
By default, Dolphin has a search bar on top-right where you may type what you want to be found from Strigi's index. <br />
<br />
{{Note | Strigi has implications for resource usage on your computer - CPU, memory, disk access, disk space, battery life. If Strigi is too resource-hungry for you, you can turn it off in "'''System Settings > Advanced > Desktop Search'''". }}<br />
<br />
Strigi folder indexing can be configured in:<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
==KDM (KDE Desktop Manager)==<br />
<br />
===KDM Xserver file===<br />
An example configuration for KDM can be found at '''/usr/share/config/kdm/kdmrc'''. See '''/usr/share/doc/HTML/en/kdm/kdmrc-ref.docbook''' for all options.<br />
<br />
===Configuring KDM===<br />
<br />
You can visit '''System Settings > Login Screen''' and make your changes. Whenever you press "Apply", a '''KDE Polkit authorisation''' window appears which will ask you to give your root password in order to finish the changes.<br />
<br />
==== Problems while Configuring KDM as a user ====<br />
<br />
If you seem not to be able to KDM settings when launching System Settings as user, press<br />
<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
and type<br />
<br />
kdesu systemsettings<br />
<br />
In the pop-up kdesu window, enter your root password and wait for System Settings to be launched.<br />
<br />
{{Note| Since you have launched it as root, be careful when changing your settings. All settings configuration in root-launched System Settings are saved under /root/.kde4 and not under ~/.kde4 (your home location).}}<br />
<br />
In the System Settings window, go to Login Screen.<br />
<br />
==Phonon==<br />
<br />
===What is Phonon ?===<br />
<br />
''Phonon is the multimedia API for KDE 4. Phonon was created to allow KDE 4 to be independent of any single multimedia framework such as GStreamer or xine and to provide a stable API for KDE 4's lifetime. It was done for various reasons: to create a simple KDE/Qt style multimedia API, to better support native multimedia frameworks on Windows and Mac OS X, and to fix problems of frameworks becoming unmaintained or having API or ABI instability.<br />
''<br />
<br />
from Wikipedia.<br />
<br />
'''Phonon''' is being widely used within KDE, for both audio (e.g., the System notifications or KDE audio apps) and video (e.g., the Dolphin video thumbnails).<br />
<br />
===Which backend should I choose ?===<br />
<br />
You can choose between various backends, like Gstreamer, Xine ( [http://www.archlinux.org/packages/?q=phonon phonon-xine] ) or VLC ( [http://www.archlinux.org/packages/?q=phonon-vlc phonon-vlc] ).<br />
<br />
==Using WebKit in Konqueror==<br />
<br />
===What is WebKit ?===<br />
<br />
WebKit is an open source browser engine developped by Apple Inc. It is used by Safari and Google Chrome. WebKit is a derivative from the KHTML and KJS libraries and contain many improvements.<br />
<br />
===How to use in konqueror===<br />
<br />
It is possible to use WebKit in Konqueror instead of KHTML. First install the kwebkitpart package :<br />
<br />
pacman -S kwebkitpart<br />
<br />
Then execute the following command<br />
<br />
keditfiletype text/html<br />
<br />
<br />
In the window that opens go to the "Embedding" tab. Move the entry "WebKit" up to the top of the list and then hit the "OK" button and restart Konqueror.<br />
<br />
==Troubleshooting==<br />
<br />
===KHotkeys issue===<br />
Ιf '''khotkeys''' does not work, make sure you have a fully updated system first.<br />
You can also create ~/.kde4/Autostart/reloadkhotkeys.sh with contents <br />
#!/bin/bash<br />
(sleep 3 && qdbus org.kde.kded /modules/khotkeys reread_configuration) &<br />
and then do a<br />
chmod u+x ~/.kde4/Autostart/reloadkhotkeys.sh<br />
then logout & login.<br />
<br />
===Enabling thumbnails under Konqueror and Dolphin file managers===<br />
For thumbnails of videos in konqueror and dolphin:<br />
pacman -S kdemultimedia-mplayerthumbs<br />
<br />
===I encounter problems with automounting (or) KDE behaves strangely for no apparent reason===<br />
Since the new X-Server 1.8 arrived in the stable repos some users got the impression that HAL (Hardware Abstraction Layer) might not be needed anymore at all. But for a fully functional KDE-Desktop it is neccessary to run hal:<br />
/etc/rc.d/hal start<br />
For ease of use you should add it to your daemons list in ''/etc/rc.conf'':<br />
DAEMONS=( .. @hal ..)<br />
It is no problem to start HAL in the background to shave some time of boot.<br />
If you are using udev to automatically mount your drives with an udev-rule without running hal you should take note of the fact that these mounted drives will '''not''' be recognized by KDE. So no entry of this device will show up in Dolphin and Device Notifier won't notify you either.<br />
<br />
=== Suspend to Disk/Ram not working ===<br />
If suspend to disk/ram does not work the be sure hal is running, also make sure you are in the power group (remember to logout)<br />
Also, if you are starting KDE with startx try adding ck-launch-session to the .xinitrc,<br />
as so:<br />
#!/bin/sh<br />
#<br />
# ~/.xinitrc<br />
#<br />
# Executed by startx (run your window manager from here)<br />
# exec gnome-session<br />
exec ck-launch-session startkde<br />
# exec startxfce4<br />
# ...or the Window Manager of your choice<br />
This is done automatically with kdm.<br />
<br />
=== Graphical related issues ===<br />
<br />
==== Low 2D desktop performance (or) Artifacts appear when on 2D ====<br />
Make sure you have the proper driver for your card installed, so that your desktop is at least 2D accelerated. Follow these articles for more information: [[ATI]], [[NVIDIA]], [[Intel]] for more information, in order to make sure that everything is all right.<br />
The open-source ATI and Intel drivers and the proprietary (binary) Nvidia driver should theoretically provide the best 2D and 3D acceleration.<br />
<br />
However, in my case, I have found the [[Nouveau]] open-source driver for Nvidia cards to be the most efficient when it comes to 2D drawing (the binary was ''so'' bad, changing a tab or minimizing a window would require 5-8 seconds, but I have only heard one or two other people with my problem). As with anything, your mileage may vary.<br />
<br />
If this doesn't solve your problems, maybe your driver doesn't provide a good XRender acceleration which the current Qt painter engine relies on by default. You can change the painter engine to software based only by invoking the application with the "-graphicssystem raster" command line. This rendering engine can be set as the default one by recompiling Qt with the same as configure option, "-graphicssystem raster". The raster paint engine enables the CPU to do the majority of the painting, as opposed to the GPU. You may get better performance, depending on your system. This is basically a work-around for the terrible Linux driver stack...since the CPU should obviously not be doing graphical computations since it is designed for fewer threads of greater complexity, as opposed to the GPU which is many threads but lesser computational strength.<br />
<br />
With Qt 4.7+, recompiling Qt is not needed. Simply export QT_GRAPHCSSYSTEM=raster, or "opengl", or "native" (for the default). Raster depends on the CPU, OpenGL depends on the GPU and high driver support (it's buggy and highly in development, so I wouldn't expect it to work), and Native is just using the X11 rendering (mixture, usually).<br />
<br />
For mroe information, consult this [http://apachelog.wordpress.com/2010/09/05/qt-graphics-system-kcm/ KDE Developer blog entry] and/or this [http://labs.trolltech.com/blogs/2009/12/18/qt-graphics-and-performance-the-raster-engine/ Qt Developer blog entry]. I recommend both.<br />
<br />
==== Konsole is slow in applications like vim ====<br />
This is a problem that is caused by slow glyph rendering. You can solve this by switching to a scalable font like Bitstream Vera Sans Mono.<br />
<br />
==== Low 3D desktop performance====<br />
KDE begins with desktop effects enabled. Older cards may be insufficient for 3D desktop acceleration. You can disable desktop effects in <br />
System Settings > Desktop <br />
or you can toggle desktop effects with <br />
{{Keypress|Alt}} + {{Keypress|Shift}} + {{Keypress|F12}}<br />
<br />
{{Note| You may encounter such problems with 3D desktop performance even when using a more powerful graphics card, but using catalyst proprietary driver (fglrx). This driver is known for having issues with 3D acceleration. Visit [[ATI|the ATi Wiki page]] for more troubleshooting.}}<br />
<br />
==== Flickering in fullscreen when compositing is enabled ====<br />
According to https://fedoraproject.org/wiki/KDE/How_to_reduce_fullscreen_flicker : <br />
<br />
Press Alt+F2 and run: <br />
<br />
kwriteconfig --file kwinrc --group Compositing --key UnredirectFullscreen --type bool false<br />
<br />
Apply the changes by pressing Alt+F2 and running: <br />
<br />
qdbus org.kde.kwin /KWin reconfigure<br />
<br />
This forces KWin not to use window unredirection but can affect performance of fullscreen OpenGL applications when desktop effects are enabled. Desktop effects can be suspended to prevent performance issues (press Alt+Shift+F12) before running such applications. <br />
<br />
See https://bugs.kde.org/show_bug.cgi?id=177495<br />
<br />
===== KDE 4.5 specific graphics' issues =====<br />
<br />
Many users who use the ATI and Intel open-source drivers have encountered several performance regressions with the latest KWin update in KDE 4.5. Please try one of the following workarounds (in order of merit) if you have such a problem (via System Settings > Desktop Effects > Advanced):<br />
<br />
* Add '''export LIBGL_ALWAYS_INDIRECT=1''' to ''/etc/profile''<br />
** Optionally (because the above already forces this), ''uncheck'' '''Enable direct rendering''' under ''OpenGL Options''<br />
** Reboot (and we ''do'' mean reboot - don't try to restart the X server)<br />
** This effectively disables Direct Rendering and may affect other OpenGL applications negatively<br />
* Use '''XRender''' as the ''Compositing type''<br />
* Disable Desktop Effects (compositing) altogether<br />
** the best way to achieve this appears to be to disable compositing in xorg.conf by adding<br />
Section "Extensions"<br />
Option "Composite" "Disable"<br />
EndSection<br />
<br />
<br />
See upstream bug report: https://bugs.kde.org/show_bug.cgi?id=241402<br />
<br />
===Sound problems under KDE===<br />
<br />
====ALSA related problems====<br />
{{Note| First make sure you have '''alsa-lib''' and '''alsa-utils''' installed.}}<br />
<br />
====="Falling back to default" messages when trying to listen to any sound in KDE=====<br />
When you encounter such messages:<br />
:The audio playback device ''<name-of-the-sound-device>'' does not work.<br />
:Falling back to default<br />
Go to<br />
System Settings > Multimedia<br />
and set the device named "'''default'''" above all the other devices in each box you see.<br />
<br />
=====I cannot play mp3 files when having Gstreamer backend in Qt Phonon=====<br />
That can be solved by installing gstreamer0.10-plugins<br />
pacman -S gstreamer0.10-plugins<br />
You can also change the backend used by Phonon, by installing the phonon-xine<br />
pacman -S phonon-xine<br />
if you encounter problems that are not solved after installing gstreamer plugins. Then choose Xine in<br />
System Settings > Multimedia > Backend (tab)<br />
(it may have been autoselected after installing phonon-xine)<br />
<br />
=====Amarok "waits" before playing any track=====<br />
If you have encountered this error, the problem is backend specific. In order to solve this problem, change Amarok's backend from '''gstreamer''' to '''xine'''.<br />
<br />
====OSS4 related problems====<br />
If you have OSS4 installed and encounter any problems you should be aware that developers of Kmix are still integrating OSSv4 support. There is an [http://aur.archlinux.org/packages.php?ID=29286 AUR package] that is still experimental.<br />
Arch uses phonon with the Gstreamer backend that should work for most applications. Alternately you could try [[KDE#I_can.27t_play_mp3_files_when_having_Gstreamer_backend_in_Qt_Phonon|phonon with Xine]].<br />
<br />
=== Arch linux specific packaging issues ===<br />
Due to some upgrades on the packages or a newer versioned pacman with bugs (pft, like there are any ;) there could be some problems during upgrading. Please read the sections below, if you have a problem.<br />
<br />
===I wanted a minimal installation of KDE. After I installed some packages and logged in KDE, there are no panels===<br />
If you wanted a minimal installation of KDE, logged in, heard the login sound but nothing else happened, you may not have installed the Plasma binaries. These are included in<br />
kdebase-workspace<br />
Install this package and restart Xorg.<br />
<br />
===I want a fresh installation of KDE for my system. What should I do ?===<br />
Just rename the settings directory of KDE (just in case you'll want to go back to your original settings):<br />
mv ~/.kde4 ~/.kde4-backup<br />
<br />
===Plasma desktop behaves strangely===<br />
Plasma issues are usually caused by unstable '''plasmoids''' or '''plasma themes'''. First, find which was the last plasmoid or plasma theme you had installed and disable it or uninstall it. <br />
<br />
So, if your desktop suddenly exhibits "locking up", this is likely caused by a faulty installed widget. If you cannot remember which widget you installed before the problem began(sometimes it can be an irregular problem), try to track it down by removing each widget until the problem ceases. Then you can uninstall the widget, and file a bug report (bugs.kde.org) '''only if it is an official widget'''. If it is not, I recommend you find the entry on kde-look.org and inform the developer of that widget about the issue (detailing steps to reproduce, etc).<br />
<br />
<br />
If you cannot find the problem, but you do not want ''all'' the KDE settings to be lost, do:<br />
<br />
rm -r ~/.kde4/share/config/plasma*<br />
<br />
This command will '''delete all plasma related configs''' of your user and when you will relogin into KDE, you will have the '''default''' settings back. You should know that this action '''cannot be undone'''. You ought to create a backup folder and copy all the plasma related configs in it.<br />
<br />
==Other KDE projects==<br />
===The Chakra Project===<br />
<br />
{{Warning| Chakra Project may soon '''split''' from Arch's main system. You should be informed on Chakra Project's news and devs' decisions on [http://chakra-project.org/ Chakra Project website].}}<br />
<br />
====Split KDE packages====<br />
[http://chakra-project.org/ The Chakra Project] is a community-based modular version of KDE 4 and Live CD project, which includes a number of UI enhancements for KDE 4.x. Visit [http://chakra-project.org/wiki/index.php/Main_Page the Chakra Project Wiki main page] for more information.<br />
<br />
====Chakra Project Arch Live CD====<br />
<br />
The Chakra Project also provides a full featured Live CD, which has the latest stable KDEmod4 packages included.<br />
You may visit [http://chakra-project.org/download-iso.html the Chakra Project Live CD webpage] in order to find more information.<br />
<br />
====Passing from KDEmod to [extra]'s KDE====<br />
<br />
{{Note|You do have instructions for passing from '''[extra]''''s KDE4 to KDEmod4 [http://chakra-project.org/download-kdemod.html here]. }}<br />
<br />
Both flavours of KDE provide the same Desktop Environment, so if you install the one or the other, in the same upstream version, there should not be any problem regarding plasmoids, themes, styles or any KDE related application.<br />
<br />
So, if you want, for any reason, to pass from KDEmod to '''[extra]''''s KDE, do:<br />
<br />
pacman -Rd kdemod<br />
<br />
OR<br />
<br />
pacman -Rd kdemod-uninstall<br />
<br />
and it should be removed, but with the '''-d''' argument, the KDE dependent packages '''are not''' uninstalled, but only the Desktop Environment. But, if you want to '''completelly''' remove any KDEmod specific application/plasmoid/style etc too, do<br />
<br />
pacman -Rcns kdemod<br />
<br />
and then make sure that everything has been uninstalled:<br />
<br />
pacman -Q | grep kde<br />
<br />
{{Note| If you want to use the same KDE specific settings from the previous KDEmod installation, move or rename ~/'''.kdemod4''' to ~/'''.kde4''' }}<br />
<br />
After this, you may have KDEmod uninstalled.<br />
<br />
Then, follow [[KDE#Installing_KDE_4.5|this]].<br />
<br />
===KDE unstable===<br />
====KDEmod testing/unstable====<br />
<br />
You may visit [http://chakra-project.org/repos.html this webpage] and see which repos can you add in''' pacman.conf''' in order to test the KDEmod unstable packages.<br />
<br />
====KDE unstable (snapshot)====<br />
<br />
===== Unofficial kde-unstable =====<br />
<br />
The member '''ProgDan''' has created a repo where he uploads the testing KDE packages when a new '''upstream snapshot''' is out. You may visit [http://bbs.archlinux.org/viewtopic.php?id=76245 this topic] for more information.<br />
<br />
===== Semi-official kde-unstable =====<br />
<br />
When KDE is reaching beta or RC milestone, KDE "unstable" packages are uploaded to the [kde-unstable] repo. <br />
<br />
You may add it by adding:<br />
<br />
[kde-unstable]<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
in '''{{Filename|/etc/pacman.conf}}'''<br />
<br />
They stay there until KDE is declared stable and passes to [extra].<br />
<br />
Make sure [http://wiki.archlinux.org/index.php/KDE#Distro_and_Upstream_bug_report you make bug reports] if you find any issues.<br />
<br />
Read [http://wiki.archlinux.org/index.php/DeveloperWiki:KDE#Users this section] in the wiki as well.<br />
<br />
===KDE Legacy===<br />
<br />
====Downgrading to KDEmod3 from KDE 4====<br />
For those people who decide that KDE 4 is still not yet "ready" for them, there is a website about how to downgrade to a version of KDE 3.5 called '''kdemod3''':<br />
* [http://chakra-project.org/download-kdemod3.html KDEmod3]<br />
<br />
'''Warning''': There have been issues reported regarding Libjpeg7, that caused KDEmod3 to behave strangely. In order to solve that, install [http://aur.archlinux.org/packages.php?ID=28427 libjpeg6] [http://aur.archlinux.org/packages.php?ID=33795 libpng12 from AUR]. The libs '''libjpeg6''' and '''libpng12''' can be safely installed along side the current libraries. You will also want to update [http://aur.archlinux.org/packages.php?ID=19338 poppler-qt3 from AUR]. The only conflict you will find is a conflict between poppler and poppler-qt3 during poppler updates. '''poppler-qt3''' is a dependency for the kdemod3-kdegraphics-kpdf package, but as a work-around you can simply remove poppler-qt3 with the --nodeps flag, complete the Arch update of poppler and then reinstall poppler-qt3. More info [http://chakra-project.org/bbs/viewtopic.php?id=1097 here]<br />
<br />
{{Warning| KDE 3 is no longer maintained and supported by the KDE developers. KDEmod3 is no longer maintained by the Chakra Projects developers. Use it on your own risk, regarding any bugs, performance issues or security risks.}}<br />
<br />
==== Unofficial community repository for KDEmod3 ====<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=97612 In this thread] you may find info on a rebuild of the unsupported KDEmod3.<br />
<br />
==Bugs==<br />
===Common bugs===<br />
If you think you found something that seems like bug, please see [[Common_Issues]] and regarding that: KDE 4 config files are usually located at <br />
<br />
~/.kde4/share/config/<br />
<br />
and for app-specific configs <br />
<br />
~/.kde4/share/apps/<br />
<br />
===Distro and Upstream bug report===<br />
It is preferrable that if you find a minor or serious bug, you should visit [http://bugs.archlinux.org the Arch Bug Tracker] or/and [http://bugs.kde.org KDE Bug Tracker] in order to report that. Make sure that you be clear on what you want to report.<br />
<br />
If you have any issue and you write about in on the Arch forums, first make sure that you have '''FULLY''' updated your system using a good sync mirror (check [https://www.archlinux.de/?page=MirrorStatus here]) or try '''reflector'''.<br />
<br />
==External Links==<br />
* [http://www.kde.org KDE Homepage]<br />
* [http://bugs.kde.org KDE Bug Tracker]<br />
* [http://bugs.archlinux.org Arch Linux Bug Tracker]<br />
* [http://websvn.kde.org KDE WebSVN]</div>Vamp898https://wiki.archlinux.org/index.php?title=KDE&diff=117783KDE2010-09-20T23:18:20Z<p>Vamp898: /* Minimal Install */</p>
<hr />
<div>[[Category:Desktop environments (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n|KDE}}<br />
[[de:KDE]]<br />
{{Article summary start}}<br />
{{Article summary text|KDE is a full featured desktop environment known for its well integrated applications, like Konqueror, Dolphin, Plasma, KWrite and Konsole.}}<br />
{{Article summary end}}<br />
==KDE 4.5 Arch Linux Notes==<br />
<br />
'''KDE 4.5''' Software Compilation is the current major release of KDE that includes a number of improvements and bug fixes. The new Arch package set for KDE makes it possible to only install those applications you like.''<br />
<br />
Important features of the Archlinux KDE SC in short:<br />
* '''Split packages'''; for more Information see [[KDE_Packages|KDE Packages]] and [[DeveloperWiki:Splitting_KDE|Splitting KDE]].<br />
* You can use different Phonon backends, like Gstreamer or Xine<br />
* Meta packages ensure a smooth upgrade and emulate the old monolith packages for those who prefer them.<br />
<br />
Important hints for upgraders:<br />
* Always check if your mirror is '''up to date'''.<br />
* pacman will ask you to replace '''all''' kde packages with kde-meta packages.<br />
* '''Do not force an update'''. If pacman complains about conflicts please '''file a bug report'''.<br />
* You can remove the meta packages and the sub packages you do not need after the update.<br />
* If you do not like split packages just keep using the kde-meta packages.<br />
<br />
:Information about upstream changes are be available [http://kde.org/announcements/4.5 here]<br />
<br />
=== KDE 4.5 Archlinux packaging specific info ===<br />
<br />
* KDEpim has seen no new release, please continue to use version 4.4.5 until KDEpim 4.5 is released.<br />
* Due to incompatibility with ruby 1.9, ruby kdebindings are not provided<br />
* Webkit support in konqueror is provided by kwebkitpart<br />
* KDM is now started as the kdm user<br />
* Upstream removed five translations: csb, mai, mk, si and tg<br />
<br />
==Installing KDE 4.5 Software Compilation==<br />
<br />
=== Installing full KDE SC ===<br />
<br />
To install the entire KDE set, first '''fully upgrade your system''':<br />
<br />
pacman -Syu<br />
<br />
and then:<br />
<br />
pacman -S kde<br />
<br />
If you need language files:<br />
<br />
pacman -S kde-l10n-yourlanguagehere<br />
<br />
e.g. kde-l10n-'''de''', for the German language.<br />
<br />
{{Note| KDE 4.x is '''modular'''; you can install your preferred KDE applications without having to install an entire set of packages. See [[KDE Packages]] for more information.}}<br />
<br />
=== Minimal Install ===<br />
<br />
If you want to have a minimal installation of the KDE SC, here is an example:<br />
<br />
pacman -S kdebase kde-l10n-yourlanguagehere<br />
<br />
== Starting KDE ==<br />
<br />
Starting KDE depends on your preferences. Basically there are two ways of starting KDE. Using '''KDM''' or '''xinitrc'''.<br />
<br />
=== Using KDM (KDE Display Manager)===<br />
''It is highly recommended to get familiar with the [http://wiki.archlinux.org/index.php/Display_Manager full article] concerning display managers, before you make any changes. See also [[KDM]] Wiki page.''<br />
<br />
==== Starting KDM as a daemon ====<br />
Add "'''kdm'''" (without the quotes) to deamons array in '''{{Filename|/etc/rc.conf}}'''<br />
<br />
DAEMONS=(dbus hal syslog-ng network netfs crond ... '''kdm''')<br />
<br />
==== Starting KDM through /etc/inittab [''preferable''] ==== <br />
<br />
Edit '''{{Filename|/etc/inittab}}''' and comment out:<br />
#id:3:initdefault:<br />
<br />
[...]<br />
<br />
#x:5:respawn:/usr/bin/xdm -nodaemon<br />
<br />
Then uncomment:<br />
<br />
id:5:initdefault:<br />
<br />
[...]<br />
<br />
x:5:respawn:/usr/bin/kdm -nodaemon<br />
<br />
{{Note| In both methods KDM loads Xorg automatically.}}<br />
<br />
===Using xinitrc===<br />
''The meaning and usage of '''xinitrc''' is very well described [http://wiki.archlinux.org/index.php/Xinitrc here].<br />
<br />
Edit '''{{Filename|/home/}}'''{{Filename|''your-username''}}'''{{Filename|/.xinitrc}}'''. Then uncomment:<br />
exec ck-launch-session startkde <br />
After a reboot or/and login, each execution of Xorg ('''startx''' or '''xinit''') will start KDE automatically.<br />
<br />
{{Warning| By doing this you may have restart/shutdown functions enabled in your KDE menu.}}<br />
<br />
{{Note| If you want to start Xorg at boot, please read [[Start X at boot]] article.}}<br />
<br />
==Configuring==<br />
<br />
{{Note| Configuring KDE is primarily done in ''''System Settings''''. There are also a few other options available for the desktop with 'Desktop Settings' when you right click the desktop.}}<br />
<br />
For other personalization options not covered below such as activities, different wallpapers on one cube, etc please refer to the [[Plasma]] wiki page.<br />
<br />
===Personalization===<br />
<br />
How to set up the KDE desktop to your personal style; use different Plasma themes, window decorations and icon themes. <br />
<br />
====Plasma Desktop====<br />
<br />
[[Plasma]] is a desktop integration technology that provides many functions from displaying the wallpaper, adding widgets to the desktop, and handling the panels or "taskbar".<br />
<br />
=====Themes=====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=76&PHPSESSID=bba0ae5354c7818b519687ebf5badf0e Plasma themes] can be installed through the Desktop Settings control panel. Plasma themes define how your panels and plasmoids look like. If you like to have them installed system-wide, themes can be found in both the official repositories and [http://aur.archlinux.org/packages.php?O=0&K=plasmatheme&do_Search=Go AUR].<br />
<br />
=====Widgets=====<br />
Plasmoids are little scripted or coded KDE apps that enhance the functionality of your deskop in a yet very pleasing way, based on the Plasma technology of KDE. You are able to display system-critical information like ''left over disk space'' or ''monitor/modify your network connection''. It also allows all kinds of other widgets, like displaying the weather, a widget for easily pasting images to a pastebin website, or having collections of virtual folders "folderview". Just to name a few.<br />
<br />
The easiest way to install more widgets is by left-clicking onto a panel or the desktop:<br />
<br />
Add Widgets -> Get new Widgets -> Download Widgets<br />
<br />
You should be aware that these widgets are not created officially by KDE developers. Most of them are just people who wanted to script one (easily) to suit a need they had.<br />
<br />
It may be of interest to you that many different widget types are supported (not just our own "plasmoids" or widgets). Plasma can use all kinds of widgets, from MacOSX widgets, Microsoft Windows Vista/7 widgets, Google Widgets, and even the old system - SuperKaramba - widgets. You should however, prefer Plasma widgets to other ones, since they provide more thorough integration and are prepared to be on the KDE desktop.<br />
<br />
This will present a nice frontend for [http://www.kde-look.org/ kde-look.org] and allows you to (un)install or update third-party widgets with just one click.<br />
They are also available in the [http://aur.archlinux.org/packages.php?O=0&K=plasmoid&do_Search=Go&PP=25&SO=d&SB=v repositories].<br />
<br />
{{Note|The widgets provided via KHNS (KHotNewStuff, what you just used to download widgets) does not/cannot grant the ability to install third-party widgets written in C++ since nearly each one requires different setup techniques, etc. and is thus difficult/impossible to automate. In other words, there could theoretically be useful widgets out there that you cannot try.}}<br />
<br />
One thing to keep in mind, is that when a third-part developers creates a C++ widgets which has severe bugs in it, it could potentially bring down the Plasma process (crashing it). Scripted ones are sandboxed and this cannot happen. If it does crash - no worries, just remove the widget.<br />
<br />
====Window Decorations====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=75 Window decorations] can be changed in<br />
System Settings -> Application Appearance -> Style<br />
There you can also directly download and install more themes with one click and some are available on [http://aur.archlinux.org/packages.php?O=0&K=kdestyle&do_Search=Go&PP=25&SO=d&SB=v AUR].<br />
<br />
====KDE 4 Theme Integration with GTK Applications====<br />
To better integrate GTK and KDE 4 themes, you can use '''QtCurve'''.<br />
<br />
pacman -S qtcurve-gtk2 qtcurve-kde4 gtk-kde4<br />
<br />
Or you can download a GTK theme that matches your version of KDE [http://kde-look.org/content/show.php?content=103741 here]. This theme comes closer to the original Oxygen and is updated frequently.<br />
<br />
=====Automatic procedure=====<br />
<br />
To change the GTK theme to QtCurve or something else a few applications are available:<br />
<br />
pacman -S lxappearance<br />
pacman -S gtk-theme-switch2<br />
pacman -S gtk-chtheme<br />
<br />
Then change the theme of your choice in the respective application:<br />
<br />
lxappearance<br />
gtk-theme-switch2<br />
gtk-chtheme<br />
<br />
=====Manual procedure=====<br />
To manually change the GTK theme to QtCurve, you need to create the file {{Filename|~/.gtkrc-2.0-kde4}} with the following content:<br />
include "/usr/share/themes/QtCurve/gtk-2.0/gtkrc"<br />
include "/etc/gtk-2.0/gtkrc"<br />
<br />
style "user-font"<br />
{<br />
font_name="Sans Serif"<br />
}<br />
widget_class "*" style "user-font" <br />
gtk-theme-name="QtCurve"<br />
Then you need to create the symbolic link {{Filename|~/.gtkrc-2.0}}:<br />
ln -s .gtkrc-2.0-kde4 .gtkrc-2.0<br />
If you want also specify a font, you can add (and adapt) the following line to the file:<br />
gtk-font-name="Sans Serif 9"<br />
<br />
=====Icons=====<br />
If you're using Oxygen icons and want a consistent look in GTK open/save dialogs, you can install an [http://aur.archlinux.org/packages.php?O=0&K=oxygenrefit2-icon-theme&do_Search=Go oxygenrefit2] icon theme from AUR and set it as your GTK icon theme. Add the theme to the {{Filename|~/.gtkrc-2.0}} file or you can use lxappearance and set it.<br />
gtk-icon-theme-name="OxygenRefit2"<br />
There are also a couple GTK themes built on the [http://aur.archlinux.org/packages.php?ID=24329 gtk-kde42-oxygen-theme Oxygen style] that can also do this.<br />
<br />
====Icon Themes====<br />
Not many full system icons themes are available for KDE 4. You can open up '''System Settings > Application Appearance > Icons''' and browse for new ones or install them manually. Many of them can be found on [http://www.kde-look.org/ kde-look.org].<br />
<br />
====Arch Linux Logo Icon in Kicker menu====<br />
Right-Click on the Kicker menu button, press "'''Application launcher settings'''" and then press the icon on the '''right'''. Then you may choose Arch Linux icon or any other icon that will replace the default one.<br />
<br />
Alternatively, install archlinux-themes-kde from ''extra'' and select the Arch icon theme in System Settings->Application Appearance->Icons.<br />
<br />
====Fonts====<br />
<br />
If by default, the fonts in KDE look poor, try installing the [http://www.archlinux.org/packages/extra/any/ttf-dejavu/ ttf-dejavu] and [http://www.archlinux.org/packages/community/any/ttf-liberation/ ttf-liberation] packages. After the installation, be sure to log out and back in. You should not have to modify any settings in the "Fonts" panel of the KDE System Settings application.<br />
<br />
If you have personally set up how your [[Fonts]] render, be aware that System Settings may alter their appearance. When you go '''System Settings > Appearance > Fonts''' System Settings will likely alter your font configuration file ({{Filename|fonts.conf}}). There is no way to prevent this but if you set the values to match your {{Filename|fonts.conf}} file the expected font rendering will return (it will require you to restart your application or in a few cases for you to have to restart your desktop). Note too that Gnomes' Font Preferences will also do this if you use both desktop environments.<br />
<br />
====Space efficiency====<br />
KDE is often '''critizised''' for being bloated. The user might get this perception from seeing''' many toolbars and pretty big scaled icons in the applications'''. One thing that improved the situation was the new Kwin-Theme that came with KDE SC 4.4.* with the more elegant buttons that one can also resize. '''KDE Apps allows to hide many toolbars, menubars and statusbars'''.<br />
<br />
=====All sorts of *bars=====<br />
Most toolbars of a program can be removed in the menubar-entry "'''Settings'''". There you often can hide the statusbar and often all toolbars. The last step should be to remove the menubar itself via '''Ctrl + M'''. If you do not want to remove any bars you can still make them smaller or remove the text via:<br />
System-Settings -> Appearance -> Style -> Tab "Finetuning" -> "Main toolbar text", "secondary toolbar text"<br />
<br />
Since most aspect ratios of modern flat screens are wider than 4:3 it could be reasonable to put the toolbar '''at the left or right of a window''' to artificially stretch windows more to the monitors aspect ratio.<br />
<br />
=====Plasma=====<br />
There are also some settings and modifications you can apply to your plasmoids to make KDE less space wasting. For example, the "Digital Clock" wastes more space than the "Analogue Clock". The little plasma icon ("Casheew") that one can see in the panel can be hidden by locking the widgets via rightklicking onto the panel.<br />
If you have got many tasks in your task-manager you should consider using ''Smooth-tasks''. This alternative task-manager allows you to just display the icons of a task thus using less space but still maintaining the ability of the user to distinguish the different tasks.<br />
<br />
Install [http://aur.archlinux.org/packages.php?ID=29410 smooth-tasks] from the [[AUR]].<br />
<br />
After installing and substituting it with the original task-manager you should have a deep look at the settings since they are much broader.<br />
one way of using the features of smooth-tasks could be to only display the icons of tasks and move the panel to the left or right of the screen. This is most usefull on widescreens.<br />
On very small screens it could be reasonable to set the bottom-panel to auto-hide completely.<br />
For netbooks there exists a special form factor to make a better use of the screen:<br />
<br />
System-Settings -> Desktop -> Workspace -> Form factor<br />
<br />
=====KWin=====<br />
The windows decorations can also be resized by making the buttons in the decoration smaller thus making the whole top border smaller:<br />
System Settings -> Appearance -> Windows -> Button size<br />
You could also remove the side-border of all windows via:<br />
System Settings -> Appearance -> Windows -> Border size<br />
<br />
=== Networking/Printing ===<br />
<br />
NetworkManager support has been added in KDE 4.5 SC. See [[Networkmanager#KDE4|NetworkManager]] for more information.<br />
<br />
===Samba/Windows support===<br />
<br />
If you want to have access to Windows services:<br />
<br />
pacman -S samba<br />
<br />
You may then configure your Samba shares through <br />
<br />
System Settings > Sharing > Samba<br />
<br />
=== KDE Desktop Activities ===<br />
<br />
KDE are Plasma based "virtual desktop"-like set of Plasma Widgets where you can independently configure widgets as if you had more than one screens/desktops. <br />
Since KDE 4.5, the feature of changing Desktop Activities has been simplified. <br />
<br />
On your desktop, click the Cashew Plasmoid and on the pop-up window press "Activities".<br />
<br />
A plasma bar will appear at the bottom of the screen which presents you the current Plasma Desktop Activities which exist. You can then navigate between them by pressing their correspondent icon.<br />
<br />
===Powersaving===<br />
<br />
KDE has integrated Powersaving service called "'''Powerdevil Power Management'''" that may adjust the powersaving profile of the system or/and the brightness of the screen (if supported).<br />
<br />
==== How to enable generic powersaving ====<br />
<br />
Navigate to Systemsettings > Power Management<br />
In Profile Management, in "When AC adaptor is plugged in" (or the battery<br />
option) choose "Powersave"<br />
In "Edit Profiles" > "Powersave", tick the "Enable System power saving", and<br />
then press apply.<br />
<br />
==== How to enable Cpufreq based powersaving ====<br />
<br />
Since KDE 4.5, [http://lists.kde.org/?l=kde-devel&m=126800277431817&w=2 Powerdevil doesn't handle CPU power schemes through Cpufreq]. CPU is being used by using the hardware or/and kernel "'''ondemand'''" governor power scheme and that's the official way to have the system's power management handled, according to the guidelines by the kernel power-management devs.<br />
<br />
{{Warning| Using Cpufreq in order to handle your CPU power schemes, that means, controlling it through software, IS NOT suggested for use since modern CPUs are capable of powersaving through their BIOSes.<br />
<br />
[http://www.codon.org.uk/~mjg59/power/good_practices.html Visit this link] for more info on good power management practices.}}<br />
<br />
If you do want, you still can use Cpufreq for your system which is accessible through the '''Solid Device Framework'''.<br />
<br />
So in order to do that, follow these steps:<br />
<br />
1. You need to create a script for every Cpufreq governor you want to be used. In this example, you will now create a script to enable the powersaving governor.<br />
<br />
Create a script in /usr/bin<br />
<br />
# touch /usr/bin/kde-cpufreq-powersave<br />
<br />
Add these in the script<br />
<br />
#!/bin/bash<br />
solid-powermanagement set cpufreq powersave<br />
<br />
Make it executable<br />
<br />
# chmod +x /usr/bin/kde-cpufreq-powersave<br />
<br />
2. Install cpufrequtils<br />
<br />
pacman -S cpufrequtils<br />
<br />
and make sure you have your CPU's cpufreq module loaded. For more information on this, visit [[Cpufreq|this article]].<br />
<br />
3. Then, in '''System Settings > Power Management''', go to "Edit Profiles" > "Powersave", and make sure that "Enable System power saving" is enabled.<br />
<br />
After that, press the file dialog button next to the phrase "When loading profile execute" and choose the script you have just created. Now, each time you choose the Powersaving profile through Powerdevil, Cpufreq will force the powersaving governor.<br />
<br />
You can do the same for other profiles and governors.<br />
<br />
==System Administration==<br />
<br />
===Set keyboard layout in order switch language inputs===<br />
In order to do that, navigate to <br />
System Settings > Input Devices > Keyboard<br />
There you may choose your keyboard model at first.<br />
{{Note| It is preferable that, if you use Evdev, that means Xorg automatic configuration for keyboards, you should choose "Evdev-managed keyboard".}}<br />
In the "'''Layouts'''" tab, you choose the languages you may want to use by pressing the "Add Layout" button and therefore the variant and the language.<br />
In the "'''Advanced'''" tab, you can choose the keyboard combination you want in order to change the layouts in the "Key(s) to change layout" sub-menu.<br />
<br />
===Terminate Xorg-server through KDE system settings===<br />
Navigate to <br />
System Settings > Input Devices > Keyboard > Advanced (tab) > "Key Sequence to terminate X server" submenu<br />
and tick the checkbox.<br />
<br />
==Desktop Search and Semantic Desktop==<br />
Most users who freshly install KDE are wondering what functionality the following four pieces of software are able to offer. Most features are still somehow hidden under the hood and yet not many applications featured in the KDE SC are using these interfaces. This capter intends to first explain the features and then convince the user of the power these tools offer once properly integrated into KDE. The following sections are more or less a roughly shortened version of [[http://thomasmcguire.wordpress.com/2009/10/03/akonadi-nepomuk-and-strigi-explained/ this blogpost].<br />
<br />
===Soprano===<br />
Soprano is a library for QT that is able to process RDF data. This is semantic data. Semantic data is a special kind of metadata which is much more flexible than metadata you might know from MP3-Tags or Meta-Tags in HTML since RDF data more resembles the structure of a spoken sentence, thus allowing a much wider field of ways dealing with them. Soprano stores semantic data in a backend and allows low level access to this data.<br />
<br />
===Nepomuk===<br />
Nepomuk is somehow the glue between Soprano and the KDE Desktop and thus the user. Nepomuk allows to tag the files with various entries and offers an API for the applications featured in KDE SC. It is enabled by default. Nepomuk can be turned on and off in<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
===Akonadi===<br />
Akonadi is one of the ways of getting data into Nepomuk. Its intention is to gather all kinds of PIM data from KMail, KAdressbook or Kopete. It collects chat contacts, email adresses, email attachments and email contents. First of all it feeds Nepomuk with this data but moreover does also provide a centralized accesspoint for all this data.<br />
<br />
===Strigi Search===<br />
Strigi is another way of feeding data into Nepomuk. It preverably indexes the users home-folder. Indexing means that it not only gathers filenames but also information about your music collection or tagged downloads you did with Kget. The Strigi search is also integrated into KDEs launcher which can be accessed via:<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
By default, Dolphin has a search bar on top-right where you may type what you want to be found from Strigi's index. <br />
<br />
{{Note | Strigi has implications for resource usage on your computer - CPU, memory, disk access, disk space, battery life. If Strigi is too resource-hungry for you, you can turn it off in "'''System Settings > Advanced > Desktop Search'''". }}<br />
<br />
Strigi folder indexing can be configured in:<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
==KDM (KDE Desktop Manager)==<br />
<br />
===KDM Xserver file===<br />
An example configuration for KDM can be found at '''/usr/share/config/kdm/kdmrc'''. See '''/usr/share/doc/HTML/en/kdm/kdmrc-ref.docbook''' for all options.<br />
<br />
===Configuring KDM===<br />
<br />
You can visit '''System Settings > Login Screen''' and make your changes. Whenever you press "Apply", a '''KDE Polkit authorisation''' window appears which will ask you to give your root password in order to finish the changes.<br />
<br />
==== Problems while Configuring KDM as a user ====<br />
<br />
If you seem not to be able to KDM settings when launching System Settings as user, press<br />
<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
and type<br />
<br />
kdesu systemsettings<br />
<br />
In the pop-up kdesu window, enter your root password and wait for System Settings to be launched.<br />
<br />
{{Note| Since you have launched it as root, be careful when changing your settings. All settings configuration in root-launched System Settings are saved under /root/.kde4 and not under ~/.kde4 (your home location).}}<br />
<br />
In the System Settings window, go to Login Screen.<br />
<br />
==Phonon==<br />
<br />
===What is Phonon ?===<br />
<br />
''Phonon is the multimedia API for KDE 4. Phonon was created to allow KDE 4 to be independent of any single multimedia framework such as GStreamer or xine and to provide a stable API for KDE 4's lifetime. It was done for various reasons: to create a simple KDE/Qt style multimedia API, to better support native multimedia frameworks on Windows and Mac OS X, and to fix problems of frameworks becoming unmaintained or having API or ABI instability.<br />
''<br />
<br />
from Wikipedia.<br />
<br />
'''Phonon''' is being widely used within KDE, for both audio (e.g., the System notifications or KDE audio apps) and video (e.g., the Dolphin video thumbnails).<br />
<br />
===Which backend should I choose ?===<br />
<br />
You can choose between various backends, like Gstreamer, Xine ( [http://www.archlinux.org/packages/?q=phonon phonon-xine] ) or VLC ( [http://www.archlinux.org/packages/?q=phonon-vlc phonon-vlc] ).<br />
<br />
==Using WebKit in Konqueror==<br />
<br />
===What is WebKit ?===<br />
<br />
WebKit is an open source browser engine developped by Apple Inc. It is used by Safari and Google Chrome. WebKit is a derivative from the KHTML and KJS libraries and contain many improvements.<br />
<br />
===How to use in konqueror===<br />
<br />
It is possible to use WebKit in Konqueror instead of KHTML. First install the kwebkitpart package :<br />
<br />
pacman -S kwebkitpart<br />
<br />
Then execute the following command<br />
<br />
keditfiletype text/html<br />
<br />
<br />
In the window that opens go to the "Embedding" tab. Move the entry "WebKit" up to the top of the list and then hit the "OK" button and restart Konqueror.<br />
<br />
==Troubleshooting==<br />
<br />
===KHotkeys issue===<br />
Ιf '''khotkeys''' does not work, make sure you have a fully updated system first.<br />
You can also create ~/.kde4/Autostart/reloadkhotkeys.sh with contents <br />
#!/bin/bash<br />
(sleep 3 && qdbus org.kde.kded /modules/khotkeys reread_configuration) &<br />
and then do a<br />
chmod u+x ~/.kde4/Autostart/reloadkhotkeys.sh<br />
then logout & login.<br />
<br />
===Enabling thumbnails under Konqueror and Dolphin file managers===<br />
For thumbnails of videos in konqueror and dolphin:<br />
pacman -S kdemultimedia-mplayerthumbs<br />
<br />
===I encounter problems with automounting (or) KDE behaves strangely for no apparent reason===<br />
Since the new X-Server 1.8 arrived in the stable repos some users got the impression that HAL (Hardware Abstraction Layer) might not be needed anymore at all. But for a fully functional KDE-Desktop it is neccessary to run hal:<br />
/etc/rc.d/hal start<br />
For ease of use you should add it to your daemons list in ''/etc/rc.conf'':<br />
DAEMONS=( .. @hal ..)<br />
It is no problem to start HAL in the background to shave some time of boot.<br />
If you are using udev to automatically mount your drives with an udev-rule without running hal you should take note of the fact that these mounted drives will '''not''' be recognized by KDE. So no entry of this device will show up in Dolphin and Device Notifier won't notify you either.<br />
<br />
=== Suspend to Disk/Ram not working ===<br />
If suspend to disk/ram does not work the be sure hal is running, also make sure you are in the power group (remember to logout)<br />
Also, if you are starting KDE with startx try adding ck-launch-session to the .xinitrc,<br />
as so:<br />
#!/bin/sh<br />
#<br />
# ~/.xinitrc<br />
#<br />
# Executed by startx (run your window manager from here)<br />
# exec gnome-session<br />
exec ck-launch-session startkde<br />
# exec startxfce4<br />
# ...or the Window Manager of your choice<br />
This is done automatically with kdm.<br />
<br />
=== Graphical related issues ===<br />
<br />
==== Low 2D desktop performance (or) Artifacts appear when on 2D ====<br />
Make sure you have the proper driver for your card installed, so that your desktop is at least 2D accelerated. Follow these articles for more information: [[ATI]], [[NVIDIA]], [[Intel]] for more information, in order to make sure that everything is all right.<br />
The open-source ATI and Intel drivers and the proprietary (binary) Nvidia driver should theoretically provide the best 2D and 3D acceleration.<br />
<br />
However, in my case, I have found the [[Nouveau]] open-source driver for Nvidia cards to be the most efficient when it comes to 2D drawing (the binary was ''so'' bad, changing a tab or minimizing a window would require 5-8 seconds, but I have only heard one or two other people with my problem). As with anything, your mileage may vary.<br />
<br />
If this doesn't solve your problems, maybe your driver doesn't provide a good XRender acceleration which the current Qt painter engine relies on by default. You can change the painter engine to software based only by invoking the application with the "-graphicssystem raster" command line. This rendering engine can be set as the default one by recompiling Qt with the same as configure option, "-graphicssystem raster". The raster paint engine enables the CPU to do the majority of the painting, as opposed to the GPU. You may get better performance, depending on your system. This is basically a work-around for the terrible Linux driver stack...since the CPU should obviously not be doing graphical computations since it is designed for fewer threads of greater complexity, as opposed to the GPU which is many threads but lesser computational strength.<br />
<br />
With Qt 4.7+, recompiling Qt is not needed. Simply export QT_GRAPHCSSYSTEM=raster, or "opengl", or "native" (for the default). Raster depends on the CPU, OpenGL depends on the GPU and high driver support (it's buggy and highly in development, so I wouldn't expect it to work), and Native is just using the X11 rendering (mixture, usually).<br />
<br />
For mroe information, consult this [http://apachelog.wordpress.com/2010/09/05/qt-graphics-system-kcm/ KDE Developer blog entry] and/or this [http://labs.trolltech.com/blogs/2009/12/18/qt-graphics-and-performance-the-raster-engine/ Qt Developer blog entry]. I recommend both.<br />
<br />
==== Konsole is slow in applications like vim ====<br />
This is a problem that is caused by slow glyph rendering. You can solve this by switching to a scalable font like Bitstream Vera Sans Mono.<br />
<br />
==== Low 3D desktop performance====<br />
KDE begins with desktop effects enabled. Older cards may be insufficient for 3D desktop acceleration. You can disable desktop effects in <br />
System Settings > Desktop <br />
or you can toggle desktop effects with <br />
{{Keypress|Alt}} + {{Keypress|Shift}} + {{Keypress|F12}}<br />
<br />
{{Note| You may encounter such problems with 3D desktop performance even when using a more powerful graphics card, but using catalyst proprietary driver (fglrx). This driver is known for having issues with 3D acceleration. Visit [[ATI|the ATi Wiki page]] for more troubleshooting.}}<br />
<br />
==== Flickering in fullscreen when compositing is enabled ====<br />
According to https://fedoraproject.org/wiki/KDE/How_to_reduce_fullscreen_flicker : <br />
<br />
Press Alt+F2 and run: <br />
<br />
kwriteconfig --file kwinrc --group Compositing --key UnredirectFullscreen --type bool false<br />
<br />
Apply the changes by pressing Alt+F2 and running: <br />
<br />
qdbus org.kde.kwin /KWin reconfigure<br />
<br />
This forces KWin not to use window unredirection but can affect performance of fullscreen OpenGL applications when desktop effects are enabled. Desktop effects can be suspended to prevent performance issues (press Alt+Shift+F12) before running such applications. <br />
<br />
See https://bugs.kde.org/show_bug.cgi?id=177495<br />
<br />
===== KDE 4.5 specific graphics' issues =====<br />
<br />
Many users who use the ATI and Intel open-source drivers have encountered several performance regressions with the latest KWin update in KDE 4.5. Please try one of the following workarounds (in order of merit) if you have such a problem (via System Settings > Desktop Effects > Advanced):<br />
<br />
* Add '''export LIBGL_ALWAYS_INDIRECT=1''' to ''/etc/profile''<br />
** Optionally (because the above already forces this), ''uncheck'' '''Enable direct rendering''' under ''OpenGL Options''<br />
** Reboot (and we ''do'' mean reboot - don't try to restart the X server)<br />
** This effectively disables Direct Rendering and may affect other OpenGL applications negatively<br />
* Use '''XRender''' as the ''Compositing type''<br />
* Disable Desktop Effects (compositing) altogether<br />
** the best way to achieve this appears to be to disable compositing in xorg.conf by adding<br />
Section "Extensions"<br />
Option "Composite" "Disable"<br />
EndSection<br />
<br />
<br />
See upstream bug report: https://bugs.kde.org/show_bug.cgi?id=241402<br />
<br />
===Sound problems under KDE===<br />
<br />
====ALSA related problems====<br />
{{Note| First make sure you have '''alsa-lib''' and '''alsa-utils''' installed.}}<br />
<br />
====="Falling back to default" messages when trying to listen to any sound in KDE=====<br />
When you encounter such messages:<br />
:The audio playback device ''<name-of-the-sound-device>'' does not work.<br />
:Falling back to default<br />
Go to<br />
System Settings > Multimedia<br />
and set the device named "'''default'''" above all the other devices in each box you see.<br />
<br />
=====I cannot play mp3 files when having Gstreamer backend in Qt Phonon=====<br />
That can be solved by installing gstreamer0.10-plugins<br />
pacman -S gstreamer0.10-plugins<br />
You can also change the backend used by Phonon, by installing the phonon-xine<br />
pacman -S phonon-xine<br />
if you encounter problems that are not solved after installing gstreamer plugins. Then choose Xine in<br />
System Settings > Multimedia > Backend (tab)<br />
(it may have been autoselected after installing phonon-xine)<br />
<br />
=====Amarok "waits" before playing any track=====<br />
If you have encountered this error, the problem is backend specific. In order to solve this problem, change Amarok's backend from '''gstreamer''' to '''xine'''.<br />
<br />
====OSS4 related problems====<br />
If you have OSS4 installed and encounter any problems you should be aware that developers of Kmix are still integrating OSSv4 support. There is an [http://aur.archlinux.org/packages.php?ID=29286 AUR package] that is still experimental.<br />
Arch uses phonon with the Gstreamer backend that should work for most applications. Alternately you could try [[KDE#I_can.27t_play_mp3_files_when_having_Gstreamer_backend_in_Qt_Phonon|phonon with Xine]].<br />
<br />
=== Arch linux specific packaging issues ===<br />
Due to some upgrades on the packages or a newer versioned pacman with bugs (pft, like there are any ;) there could be some problems during upgrading. Please read the sections below, if you have a problem.<br />
<br />
===I wanted a minimal installation of KDE. After I installed some packages and logged in KDE, there are no panels===<br />
If you wanted a minimal installation of KDE, logged in, heard the login sound but nothing else happened, you may not have installed the Plasma binaries. These are included in<br />
kdebase-workspace<br />
Install this package and restart Xorg.<br />
<br />
===I want a fresh installation of KDE for my system. What should I do ?===<br />
Just rename the settings directory of KDE (just in case you'll want to go back to your original settings):<br />
mv ~/.kde4 ~/.kde4-backup<br />
<br />
===Plasma desktop behaves strangely===<br />
Plasma issues are usually caused by unstable '''plasmoids''' or '''plasma themes'''. First, find which was the last plasmoid or plasma theme you had installed and disable it or uninstall it. <br />
<br />
So, if your desktop suddenly exhibits "locking up", this is likely caused by a faulty installed widget. If you cannot remember which widget you installed before the problem began(sometimes it can be an irregular problem), try to track it down by removing each widget until the problem ceases. Then you can uninstall the widget, and file a bug report (bugs.kde.org) '''only if it is an official widget'''. If it is not, I recommend you find the entry on kde-look.org and inform the developer of that widget about the issue (detailing steps to reproduce, etc).<br />
<br />
<br />
If you cannot find the problem, but you do not want ''all'' the KDE settings to be lost, do:<br />
<br />
rm -r ~/.kde4/share/config/plasma*<br />
<br />
This command will '''delete all plasma related configs''' of your user and when you will relogin into KDE, you will have the '''default''' settings back. You should know that this action '''cannot be undone'''. You ought to create a backup folder and copy all the plasma related configs in it.<br />
<br />
==Other KDE projects==<br />
===The Chakra Project===<br />
<br />
{{Warning| Chakra Project may soon '''split''' from Arch's main system. You should be informed on Chakra Project's news and devs' decisions on [http://chakra-project.org/ Chakra Project website].}}<br />
<br />
====Split KDE packages====<br />
[http://chakra-project.org/ The Chakra Project] is a community-based modular version of KDE 4 and Live CD project, which includes a number of UI enhancements for KDE 4.x. Visit [http://chakra-project.org/wiki/index.php/Main_Page the Chakra Project Wiki main page] for more information.<br />
<br />
====Chakra Project Arch Live CD====<br />
<br />
The Chakra Project also provides a full featured Live CD, which has the latest stable KDEmod4 packages included.<br />
You may visit [http://chakra-project.org/download-iso.html the Chakra Project Live CD webpage] in order to find more information.<br />
<br />
====Passing from KDEmod to [extra]'s KDE====<br />
<br />
{{Note|You do have instructions for passing from '''[extra]''''s KDE4 to KDEmod4 [http://chakra-project.org/download-kdemod.html here]. }}<br />
<br />
Both flavours of KDE provide the same Desktop Environment, so if you install the one or the other, in the same upstream version, there should not be any problem regarding plasmoids, themes, styles or any KDE related application.<br />
<br />
So, if you want, for any reason, to pass from KDEmod to '''[extra]''''s KDE, do:<br />
<br />
pacman -Rd kdemod<br />
<br />
OR<br />
<br />
pacman -Rd kdemod-uninstall<br />
<br />
and it should be removed, but with the '''-d''' argument, the KDE dependent packages '''are not''' uninstalled, but only the Desktop Environment. But, if you want to '''completelly''' remove any KDEmod specific application/plasmoid/style etc too, do<br />
<br />
pacman -Rcns kdemod<br />
<br />
and then make sure that everything has been uninstalled:<br />
<br />
pacman -Q | grep kde<br />
<br />
{{Note| If you want to use the same KDE specific settings from the previous KDEmod installation, move or rename ~/'''.kdemod4''' to ~/'''.kde4''' }}<br />
<br />
After this, you may have KDEmod uninstalled.<br />
<br />
Then, follow [[KDE#Installing_KDE_4.5|this]].<br />
<br />
===KDE unstable===<br />
====KDEmod testing/unstable====<br />
<br />
You may visit [http://chakra-project.org/repos.html this webpage] and see which repos can you add in''' pacman.conf''' in order to test the KDEmod unstable packages.<br />
<br />
====KDE unstable (snapshot)====<br />
<br />
===== Unofficial kde-unstable =====<br />
<br />
The member '''ProgDan''' has created a repo where he uploads the testing KDE packages when a new '''upstream snapshot''' is out. You may visit [http://bbs.archlinux.org/viewtopic.php?id=76245 this topic] for more information.<br />
<br />
===== Semi-official kde-unstable =====<br />
<br />
When KDE is reaching beta or RC milestone, KDE "unstable" packages are uploaded to the [kde-unstable] repo. <br />
<br />
You may add it by adding:<br />
<br />
[kde-unstable]<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
in '''{{Filename|/etc/pacman.conf}}'''<br />
<br />
They stay there until KDE is declared stable and passes to [extra].<br />
<br />
Make sure [http://wiki.archlinux.org/index.php/KDE#Distro_and_Upstream_bug_report you make bug reports] if you find any issues.<br />
<br />
Read [http://wiki.archlinux.org/index.php/DeveloperWiki:KDE#Users this section] in the wiki as well.<br />
<br />
===KDE Legacy===<br />
<br />
====Downgrading to KDEmod3 from KDE 4====<br />
For those people who decide that KDE 4 is still not yet "ready" for them, there is a website about how to downgrade to a version of KDE 3.5 called '''kdemod3''':<br />
* [http://chakra-project.org/download-kdemod3.html KDEmod3]<br />
<br />
'''Warning''': There have been issues reported regarding Libjpeg7, that caused KDEmod3 to behave strangely. In order to solve that, install [http://aur.archlinux.org/packages.php?ID=28427 libjpeg6] [http://aur.archlinux.org/packages.php?ID=33795 libpng12 from AUR]. The libs '''libjpeg6''' and '''libpng12''' can be safely installed along side the current libraries. You will also want to update [http://aur.archlinux.org/packages.php?ID=19338 poppler-qt3 from AUR]. The only conflict you will find is a conflict between poppler and poppler-qt3 during poppler updates. '''poppler-qt3''' is a dependency for the kdemod3-kdegraphics-kpdf package, but as a work-around you can simply remove poppler-qt3 with the --nodeps flag, complete the Arch update of poppler and then reinstall poppler-qt3. More info [http://chakra-project.org/bbs/viewtopic.php?id=1097 here]<br />
<br />
{{Warning| KDE 3 is no longer maintained and supported by the KDE developers. KDEmod3 is no longer maintained by the Chakra Projects developers. Use it on your own risk, regarding any bugs, performance issues or security risks.}}<br />
<br />
==== Unofficial community repository for KDEmod3 ====<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=97612 In this thread] you may find info on a rebuild of the unsupported KDEmod3.<br />
<br />
==Bugs==<br />
===Common bugs===<br />
If you think you found something that seems like bug, please see [[Common_Issues]] and regarding that: KDE 4 config files are usually located at <br />
<br />
~/.kde4/share/config/<br />
<br />
and for app-specific configs <br />
<br />
~/.kde4/share/apps/<br />
<br />
===Distro and Upstream bug report===<br />
It is preferrable that if you find a minor or serious bug, you should visit [http://bugs.archlinux.org the Arch Bug Tracker] or/and [http://bugs.kde.org KDE Bug Tracker] in order to report that. Make sure that you be clear on what you want to report.<br />
<br />
If you have any issue and you write about in on the Arch forums, first make sure that you have '''FULLY''' updated your system using a good sync mirror (check [https://www.archlinux.de/?page=MirrorStatus here]) or try '''reflector'''.<br />
<br />
==External Links==<br />
* [http://www.kde.org KDE Homepage]<br />
* [http://bugs.kde.org KDE Bug Tracker]<br />
* [http://bugs.archlinux.org Arch Linux Bug Tracker]<br />
* [http://websvn.kde.org KDE WebSVN]</div>Vamp898https://wiki.archlinux.org/index.php?title=KDE&diff=117782KDE2010-09-20T22:53:14Z<p>Vamp898: /* Minimal Install */</p>
<hr />
<div>[[Category:Desktop environments (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n|KDE}}<br />
[[de:KDE]]<br />
{{Article summary start}}<br />
{{Article summary text|KDE is a full featured desktop environment known for its well integrated applications, like Konqueror, Dolphin, Plasma, KWrite and Konsole.}}<br />
{{Article summary end}}<br />
==KDE 4.5 Arch Linux Notes==<br />
<br />
'''KDE 4.5''' Software Compilation is the current major release of KDE that includes a number of improvements and bug fixes. The new Arch package set for KDE makes it possible to only install those applications you like.''<br />
<br />
Important features of the Archlinux KDE SC in short:<br />
* '''Split packages'''; for more Information see [[KDE_Packages|KDE Packages]] and [[DeveloperWiki:Splitting_KDE|Splitting KDE]].<br />
* You can use different Phonon backends, like Gstreamer or Xine<br />
* Meta packages ensure a smooth upgrade and emulate the old monolith packages for those who prefer them.<br />
<br />
Important hints for upgraders:<br />
* Always check if your mirror is '''up to date'''.<br />
* pacman will ask you to replace '''all''' kde packages with kde-meta packages.<br />
* '''Do not force an update'''. If pacman complains about conflicts please '''file a bug report'''.<br />
* You can remove the meta packages and the sub packages you do not need after the update.<br />
* If you do not like split packages just keep using the kde-meta packages.<br />
<br />
:Information about upstream changes are be available [http://kde.org/announcements/4.5 here]<br />
<br />
=== KDE 4.5 Archlinux packaging specific info ===<br />
<br />
* KDEpim has seen no new release, please continue to use version 4.4.5 until KDEpim 4.5 is released.<br />
* Due to incompatibility with ruby 1.9, ruby kdebindings are not provided<br />
* Webkit support in konqueror is provided by kwebkitpart<br />
* KDM is now started as the kdm user<br />
* Upstream removed five translations: csb, mai, mk, si and tg<br />
<br />
==Installing KDE 4.5 Software Compilation==<br />
<br />
=== Installing full KDE SC ===<br />
<br />
To install the entire KDE set, first '''fully upgrade your system''':<br />
<br />
pacman -Syu<br />
<br />
and then:<br />
<br />
pacman -S kde<br />
<br />
If you need language files:<br />
<br />
pacman -S kde-l10n-yourlanguagehere<br />
<br />
e.g. kde-l10n-'''de''', for the German language.<br />
<br />
{{Note| KDE 4.x is '''modular'''; you can install your preferred KDE applications without having to install an entire set of packages. See [[KDE Packages]] for more information.}}<br />
<br />
=== Minimal Install ===<br />
<br />
If you want to have a minimal installation of the KDE SC, here is an example:<br />
<br />
pacman -S kdebase<br />
<br />
== Starting KDE ==<br />
<br />
Starting KDE depends on your preferences. Basically there are two ways of starting KDE. Using '''KDM''' or '''xinitrc'''.<br />
<br />
=== Using KDM (KDE Display Manager)===<br />
''It is highly recommended to get familiar with the [http://wiki.archlinux.org/index.php/Display_Manager full article] concerning display managers, before you make any changes. See also [[KDM]] Wiki page.''<br />
<br />
==== Starting KDM as a daemon ====<br />
Add "'''kdm'''" (without the quotes) to deamons array in '''{{Filename|/etc/rc.conf}}'''<br />
<br />
DAEMONS=(dbus hal syslog-ng network netfs crond ... '''kdm''')<br />
<br />
==== Starting KDM through /etc/inittab [''preferable''] ==== <br />
<br />
Edit '''{{Filename|/etc/inittab}}''' and comment out:<br />
#id:3:initdefault:<br />
<br />
[...]<br />
<br />
#x:5:respawn:/usr/bin/xdm -nodaemon<br />
<br />
Then uncomment:<br />
<br />
id:5:initdefault:<br />
<br />
[...]<br />
<br />
x:5:respawn:/usr/bin/kdm -nodaemon<br />
<br />
{{Note| In both methods KDM loads Xorg automatically.}}<br />
<br />
===Using xinitrc===<br />
''The meaning and usage of '''xinitrc''' is very well described [http://wiki.archlinux.org/index.php/Xinitrc here].<br />
<br />
Edit '''{{Filename|/home/}}'''{{Filename|''your-username''}}'''{{Filename|/.xinitrc}}'''. Then uncomment:<br />
exec ck-launch-session startkde <br />
After a reboot or/and login, each execution of Xorg ('''startx''' or '''xinit''') will start KDE automatically.<br />
<br />
{{Warning| By doing this you may have restart/shutdown functions enabled in your KDE menu.}}<br />
<br />
{{Note| If you want to start Xorg at boot, please read [[Start X at boot]] article.}}<br />
<br />
==Configuring==<br />
<br />
{{Note| Configuring KDE is primarily done in ''''System Settings''''. There are also a few other options available for the desktop with 'Desktop Settings' when you right click the desktop.}}<br />
<br />
For other personalization options not covered below such as activities, different wallpapers on one cube, etc please refer to the [[Plasma]] wiki page.<br />
<br />
===Personalization===<br />
<br />
How to set up the KDE desktop to your personal style; use different Plasma themes, window decorations and icon themes. <br />
<br />
====Plasma Desktop====<br />
<br />
[[Plasma]] is a desktop integration technology that provides many functions from displaying the wallpaper, adding widgets to the desktop, and handling the panels or "taskbar".<br />
<br />
=====Themes=====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=76&PHPSESSID=bba0ae5354c7818b519687ebf5badf0e Plasma themes] can be installed through the Desktop Settings control panel. Plasma themes define how your panels and plasmoids look like. If you like to have them installed system-wide, themes can be found in both the official repositories and [http://aur.archlinux.org/packages.php?O=0&K=plasmatheme&do_Search=Go AUR].<br />
<br />
=====Widgets=====<br />
Plasmoids are little scripted or coded KDE apps that enhance the functionality of your deskop in a yet very pleasing way, based on the Plasma technology of KDE. You are able to display system-critical information like ''left over disk space'' or ''monitor/modify your network connection''. It also allows all kinds of other widgets, like displaying the weather, a widget for easily pasting images to a pastebin website, or having collections of virtual folders "folderview". Just to name a few.<br />
<br />
The easiest way to install more widgets is by left-clicking onto a panel or the desktop:<br />
<br />
Add Widgets -> Get new Widgets -> Download Widgets<br />
<br />
You should be aware that these widgets are not created officially by KDE developers. Most of them are just people who wanted to script one (easily) to suit a need they had.<br />
<br />
It may be of interest to you that many different widget types are supported (not just our own "plasmoids" or widgets). Plasma can use all kinds of widgets, from MacOSX widgets, Microsoft Windows Vista/7 widgets, Google Widgets, and even the old system - SuperKaramba - widgets. You should however, prefer Plasma widgets to other ones, since they provide more thorough integration and are prepared to be on the KDE desktop.<br />
<br />
This will present a nice frontend for [http://www.kde-look.org/ kde-look.org] and allows you to (un)install or update third-party widgets with just one click.<br />
They are also available in the [http://aur.archlinux.org/packages.php?O=0&K=plasmoid&do_Search=Go&PP=25&SO=d&SB=v repositories].<br />
<br />
{{Note|The widgets provided via KHNS (KHotNewStuff, what you just used to download widgets) does not/cannot grant the ability to install third-party widgets written in C++ since nearly each one requires different setup techniques, etc. and is thus difficult/impossible to automate. In other words, there could theoretically be useful widgets out there that you cannot try.}}<br />
<br />
One thing to keep in mind, is that when a third-part developers creates a C++ widgets which has severe bugs in it, it could potentially bring down the Plasma process (crashing it). Scripted ones are sandboxed and this cannot happen. If it does crash - no worries, just remove the widget.<br />
<br />
====Window Decorations====<br />
<br />
[http://kde-look.org/index.php?xcontentmode=75 Window decorations] can be changed in<br />
System Settings -> Application Appearance -> Style<br />
There you can also directly download and install more themes with one click and some are available on [http://aur.archlinux.org/packages.php?O=0&K=kdestyle&do_Search=Go&PP=25&SO=d&SB=v AUR].<br />
<br />
====KDE 4 Theme Integration with GTK Applications====<br />
To better integrate GTK and KDE 4 themes, you can use '''QtCurve'''.<br />
<br />
pacman -S qtcurve-gtk2 qtcurve-kde4 gtk-kde4<br />
<br />
Or you can download a GTK theme that matches your version of KDE [http://kde-look.org/content/show.php?content=103741 here]. This theme comes closer to the original Oxygen and is updated frequently.<br />
<br />
=====Automatic procedure=====<br />
<br />
To change the GTK theme to QtCurve or something else a few applications are available:<br />
<br />
pacman -S lxappearance<br />
pacman -S gtk-theme-switch2<br />
pacman -S gtk-chtheme<br />
<br />
Then change the theme of your choice in the respective application:<br />
<br />
lxappearance<br />
gtk-theme-switch2<br />
gtk-chtheme<br />
<br />
=====Manual procedure=====<br />
To manually change the GTK theme to QtCurve, you need to create the file {{Filename|~/.gtkrc-2.0-kde4}} with the following content:<br />
include "/usr/share/themes/QtCurve/gtk-2.0/gtkrc"<br />
include "/etc/gtk-2.0/gtkrc"<br />
<br />
style "user-font"<br />
{<br />
font_name="Sans Serif"<br />
}<br />
widget_class "*" style "user-font" <br />
gtk-theme-name="QtCurve"<br />
Then you need to create the symbolic link {{Filename|~/.gtkrc-2.0}}:<br />
ln -s .gtkrc-2.0-kde4 .gtkrc-2.0<br />
If you want also specify a font, you can add (and adapt) the following line to the file:<br />
gtk-font-name="Sans Serif 9"<br />
<br />
=====Icons=====<br />
If you're using Oxygen icons and want a consistent look in GTK open/save dialogs, you can install an [http://aur.archlinux.org/packages.php?O=0&K=oxygenrefit2-icon-theme&do_Search=Go oxygenrefit2] icon theme from AUR and set it as your GTK icon theme. Add the theme to the {{Filename|~/.gtkrc-2.0}} file or you can use lxappearance and set it.<br />
gtk-icon-theme-name="OxygenRefit2"<br />
There are also a couple GTK themes built on the [http://aur.archlinux.org/packages.php?ID=24329 gtk-kde42-oxygen-theme Oxygen style] that can also do this.<br />
<br />
====Icon Themes====<br />
Not many full system icons themes are available for KDE 4. You can open up '''System Settings > Application Appearance > Icons''' and browse for new ones or install them manually. Many of them can be found on [http://www.kde-look.org/ kde-look.org].<br />
<br />
====Arch Linux Logo Icon in Kicker menu====<br />
Right-Click on the Kicker menu button, press "'''Application launcher settings'''" and then press the icon on the '''right'''. Then you may choose Arch Linux icon or any other icon that will replace the default one.<br />
<br />
Alternatively, install archlinux-themes-kde from ''extra'' and select the Arch icon theme in System Settings->Application Appearance->Icons.<br />
<br />
====Fonts====<br />
<br />
If by default, the fonts in KDE look poor, try installing the [http://www.archlinux.org/packages/extra/any/ttf-dejavu/ ttf-dejavu] and [http://www.archlinux.org/packages/community/any/ttf-liberation/ ttf-liberation] packages. After the installation, be sure to log out and back in. You should not have to modify any settings in the "Fonts" panel of the KDE System Settings application.<br />
<br />
If you have personally set up how your [[Fonts]] render, be aware that System Settings may alter their appearance. When you go '''System Settings > Appearance > Fonts''' System Settings will likely alter your font configuration file ({{Filename|fonts.conf}}). There is no way to prevent this but if you set the values to match your {{Filename|fonts.conf}} file the expected font rendering will return (it will require you to restart your application or in a few cases for you to have to restart your desktop). Note too that Gnomes' Font Preferences will also do this if you use both desktop environments.<br />
<br />
====Space efficiency====<br />
KDE is often '''critizised''' for being bloated. The user might get this perception from seeing''' many toolbars and pretty big scaled icons in the applications'''. One thing that improved the situation was the new Kwin-Theme that came with KDE SC 4.4.* with the more elegant buttons that one can also resize. '''KDE Apps allows to hide many toolbars, menubars and statusbars'''.<br />
<br />
=====All sorts of *bars=====<br />
Most toolbars of a program can be removed in the menubar-entry "'''Settings'''". There you often can hide the statusbar and often all toolbars. The last step should be to remove the menubar itself via '''Ctrl + M'''. If you do not want to remove any bars you can still make them smaller or remove the text via:<br />
System-Settings -> Appearance -> Style -> Tab "Finetuning" -> "Main toolbar text", "secondary toolbar text"<br />
<br />
Since most aspect ratios of modern flat screens are wider than 4:3 it could be reasonable to put the toolbar '''at the left or right of a window''' to artificially stretch windows more to the monitors aspect ratio.<br />
<br />
=====Plasma=====<br />
There are also some settings and modifications you can apply to your plasmoids to make KDE less space wasting. For example, the "Digital Clock" wastes more space than the "Analogue Clock". The little plasma icon ("Casheew") that one can see in the panel can be hidden by locking the widgets via rightklicking onto the panel.<br />
If you have got many tasks in your task-manager you should consider using ''Smooth-tasks''. This alternative task-manager allows you to just display the icons of a task thus using less space but still maintaining the ability of the user to distinguish the different tasks.<br />
<br />
Install [http://aur.archlinux.org/packages.php?ID=29410 smooth-tasks] from the [[AUR]].<br />
<br />
After installing and substituting it with the original task-manager you should have a deep look at the settings since they are much broader.<br />
one way of using the features of smooth-tasks could be to only display the icons of tasks and move the panel to the left or right of the screen. This is most usefull on widescreens.<br />
On very small screens it could be reasonable to set the bottom-panel to auto-hide completely.<br />
For netbooks there exists a special form factor to make a better use of the screen:<br />
<br />
System-Settings -> Desktop -> Workspace -> Form factor<br />
<br />
=====KWin=====<br />
The windows decorations can also be resized by making the buttons in the decoration smaller thus making the whole top border smaller:<br />
System Settings -> Appearance -> Windows -> Button size<br />
You could also remove the side-border of all windows via:<br />
System Settings -> Appearance -> Windows -> Border size<br />
<br />
=== Networking/Printing ===<br />
<br />
NetworkManager support has been added in KDE 4.5 SC. See [[Networkmanager#KDE4|NetworkManager]] for more information.<br />
<br />
===Samba/Windows support===<br />
<br />
If you want to have access to Windows services:<br />
<br />
pacman -S samba<br />
<br />
You may then configure your Samba shares through <br />
<br />
System Settings > Sharing > Samba<br />
<br />
=== KDE Desktop Activities ===<br />
<br />
KDE are Plasma based "virtual desktop"-like set of Plasma Widgets where you can independently configure widgets as if you had more than one screens/desktops. <br />
Since KDE 4.5, the feature of changing Desktop Activities has been simplified. <br />
<br />
On your desktop, click the Cashew Plasmoid and on the pop-up window press "Activities".<br />
<br />
A plasma bar will appear at the bottom of the screen which presents you the current Plasma Desktop Activities which exist. You can then navigate between them by pressing their correspondent icon.<br />
<br />
===Powersaving===<br />
<br />
KDE has integrated Powersaving service called "'''Powerdevil Power Management'''" that may adjust the powersaving profile of the system or/and the brightness of the screen (if supported).<br />
<br />
==== How to enable generic powersaving ====<br />
<br />
Navigate to Systemsettings > Power Management<br />
In Profile Management, in "When AC adaptor is plugged in" (or the battery<br />
option) choose "Powersave"<br />
In "Edit Profiles" > "Powersave", tick the "Enable System power saving", and<br />
then press apply.<br />
<br />
==== How to enable Cpufreq based powersaving ====<br />
<br />
Since KDE 4.5, [http://lists.kde.org/?l=kde-devel&m=126800277431817&w=2 Powerdevil doesn't handle CPU power schemes through Cpufreq]. CPU is being used by using the hardware or/and kernel "'''ondemand'''" governor power scheme and that's the official way to have the system's power management handled, according to the guidelines by the kernel power-management devs.<br />
<br />
{{Warning| Using Cpufreq in order to handle your CPU power schemes, that means, controlling it through software, IS NOT suggested for use since modern CPUs are capable of powersaving through their BIOSes.<br />
<br />
[http://www.codon.org.uk/~mjg59/power/good_practices.html Visit this link] for more info on good power management practices.}}<br />
<br />
If you do want, you still can use Cpufreq for your system which is accessible through the '''Solid Device Framework'''.<br />
<br />
So in order to do that, follow these steps:<br />
<br />
1. You need to create a script for every Cpufreq governor you want to be used. In this example, you will now create a script to enable the powersaving governor.<br />
<br />
Create a script in /usr/bin<br />
<br />
# touch /usr/bin/kde-cpufreq-powersave<br />
<br />
Add these in the script<br />
<br />
#!/bin/bash<br />
solid-powermanagement set cpufreq powersave<br />
<br />
Make it executable<br />
<br />
# chmod +x /usr/bin/kde-cpufreq-powersave<br />
<br />
2. Install cpufrequtils<br />
<br />
pacman -S cpufrequtils<br />
<br />
and make sure you have your CPU's cpufreq module loaded. For more information on this, visit [[Cpufreq|this article]].<br />
<br />
3. Then, in '''System Settings > Power Management''', go to "Edit Profiles" > "Powersave", and make sure that "Enable System power saving" is enabled.<br />
<br />
After that, press the file dialog button next to the phrase "When loading profile execute" and choose the script you have just created. Now, each time you choose the Powersaving profile through Powerdevil, Cpufreq will force the powersaving governor.<br />
<br />
You can do the same for other profiles and governors.<br />
<br />
==System Administration==<br />
<br />
===Set keyboard layout in order switch language inputs===<br />
In order to do that, navigate to <br />
System Settings > Input Devices > Keyboard<br />
There you may choose your keyboard model at first.<br />
{{Note| It is preferable that, if you use Evdev, that means Xorg automatic configuration for keyboards, you should choose "Evdev-managed keyboard".}}<br />
In the "'''Layouts'''" tab, you choose the languages you may want to use by pressing the "Add Layout" button and therefore the variant and the language.<br />
In the "'''Advanced'''" tab, you can choose the keyboard combination you want in order to change the layouts in the "Key(s) to change layout" sub-menu.<br />
<br />
===Terminate Xorg-server through KDE system settings===<br />
Navigate to <br />
System Settings > Input Devices > Keyboard > Advanced (tab) > "Key Sequence to terminate X server" submenu<br />
and tick the checkbox.<br />
<br />
==Desktop Search and Semantic Desktop==<br />
Most users who freshly install KDE are wondering what functionality the following four pieces of software are able to offer. Most features are still somehow hidden under the hood and yet not many applications featured in the KDE SC are using these interfaces. This capter intends to first explain the features and then convince the user of the power these tools offer once properly integrated into KDE. The following sections are more or less a roughly shortened version of [[http://thomasmcguire.wordpress.com/2009/10/03/akonadi-nepomuk-and-strigi-explained/ this blogpost].<br />
<br />
===Soprano===<br />
Soprano is a library for QT that is able to process RDF data. This is semantic data. Semantic data is a special kind of metadata which is much more flexible than metadata you might know from MP3-Tags or Meta-Tags in HTML since RDF data more resembles the structure of a spoken sentence, thus allowing a much wider field of ways dealing with them. Soprano stores semantic data in a backend and allows low level access to this data.<br />
<br />
===Nepomuk===<br />
Nepomuk is somehow the glue between Soprano and the KDE Desktop and thus the user. Nepomuk allows to tag the files with various entries and offers an API for the applications featured in KDE SC. It is enabled by default. Nepomuk can be turned on and off in<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
===Akonadi===<br />
Akonadi is one of the ways of getting data into Nepomuk. Its intention is to gather all kinds of PIM data from KMail, KAdressbook or Kopete. It collects chat contacts, email adresses, email attachments and email contents. First of all it feeds Nepomuk with this data but moreover does also provide a centralized accesspoint for all this data.<br />
<br />
===Strigi Search===<br />
Strigi is another way of feeding data into Nepomuk. It preverably indexes the users home-folder. Indexing means that it not only gathers filenames but also information about your music collection or tagged downloads you did with Kget. The Strigi search is also integrated into KDEs launcher which can be accessed via:<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
By default, Dolphin has a search bar on top-right where you may type what you want to be found from Strigi's index. <br />
<br />
{{Note | Strigi has implications for resource usage on your computer - CPU, memory, disk access, disk space, battery life. If Strigi is too resource-hungry for you, you can turn it off in "'''System Settings > Advanced > Desktop Search'''". }}<br />
<br />
Strigi folder indexing can be configured in:<br />
System Settings -> "Advanced" Tab -> Desktop Search<br />
<br />
==KDM (KDE Desktop Manager)==<br />
<br />
===KDM Xserver file===<br />
An example configuration for KDM can be found at '''/usr/share/config/kdm/kdmrc'''. See '''/usr/share/doc/HTML/en/kdm/kdmrc-ref.docbook''' for all options.<br />
<br />
===Configuring KDM===<br />
<br />
You can visit '''System Settings > Login Screen''' and make your changes. Whenever you press "Apply", a '''KDE Polkit authorisation''' window appears which will ask you to give your root password in order to finish the changes.<br />
<br />
==== Problems while Configuring KDM as a user ====<br />
<br />
If you seem not to be able to KDM settings when launching System Settings as user, press<br />
<br />
{{Keypress|Alt}} + {{Keypress|F2}}<br />
<br />
and type<br />
<br />
kdesu systemsettings<br />
<br />
In the pop-up kdesu window, enter your root password and wait for System Settings to be launched.<br />
<br />
{{Note| Since you have launched it as root, be careful when changing your settings. All settings configuration in root-launched System Settings are saved under /root/.kde4 and not under ~/.kde4 (your home location).}}<br />
<br />
In the System Settings window, go to Login Screen.<br />
<br />
==Phonon==<br />
<br />
===What is Phonon ?===<br />
<br />
''Phonon is the multimedia API for KDE 4. Phonon was created to allow KDE 4 to be independent of any single multimedia framework such as GStreamer or xine and to provide a stable API for KDE 4's lifetime. It was done for various reasons: to create a simple KDE/Qt style multimedia API, to better support native multimedia frameworks on Windows and Mac OS X, and to fix problems of frameworks becoming unmaintained or having API or ABI instability.<br />
''<br />
<br />
from Wikipedia.<br />
<br />
'''Phonon''' is being widely used within KDE, for both audio (e.g., the System notifications or KDE audio apps) and video (e.g., the Dolphin video thumbnails).<br />
<br />
===Which backend should I choose ?===<br />
<br />
You can choose between various backends, like Gstreamer, Xine ( [http://www.archlinux.org/packages/?q=phonon phonon-xine] ) or VLC ( [http://www.archlinux.org/packages/?q=phonon-vlc phonon-vlc] ).<br />
<br />
==Using WebKit in Konqueror==<br />
<br />
===What is WebKit ?===<br />
<br />
WebKit is an open source browser engine developped by Apple Inc. It is used by Safari and Google Chrome. WebKit is a derivative from the KHTML and KJS libraries and contain many improvements.<br />
<br />
===How to use in konqueror===<br />
<br />
It is possible to use WebKit in Konqueror instead of KHTML. First install the kwebkitpart package :<br />
<br />
pacman -S kwebkitpart<br />
<br />
Then execute the following command<br />
<br />
keditfiletype text/html<br />
<br />
<br />
In the window that opens go to the "Embedding" tab. Move the entry "WebKit" up to the top of the list and then hit the "OK" button and restart Konqueror.<br />
<br />
==Troubleshooting==<br />
<br />
===KHotkeys issue===<br />
Ιf '''khotkeys''' does not work, make sure you have a fully updated system first.<br />
You can also create ~/.kde4/Autostart/reloadkhotkeys.sh with contents <br />
#!/bin/bash<br />
(sleep 3 && qdbus org.kde.kded /modules/khotkeys reread_configuration) &<br />
and then do a<br />
chmod u+x ~/.kde4/Autostart/reloadkhotkeys.sh<br />
then logout & login.<br />
<br />
===Enabling thumbnails under Konqueror and Dolphin file managers===<br />
For thumbnails of videos in konqueror and dolphin:<br />
pacman -S kdemultimedia-mplayerthumbs<br />
<br />
===I encounter problems with automounting (or) KDE behaves strangely for no apparent reason===<br />
Since the new X-Server 1.8 arrived in the stable repos some users got the impression that HAL (Hardware Abstraction Layer) might not be needed anymore at all. But for a fully functional KDE-Desktop it is neccessary to run hal:<br />
/etc/rc.d/hal start<br />
For ease of use you should add it to your daemons list in ''/etc/rc.conf'':<br />
DAEMONS=( .. @hal ..)<br />
It is no problem to start HAL in the background to shave some time of boot.<br />
If you are using udev to automatically mount your drives with an udev-rule without running hal you should take note of the fact that these mounted drives will '''not''' be recognized by KDE. So no entry of this device will show up in Dolphin and Device Notifier won't notify you either.<br />
<br />
=== Suspend to Disk/Ram not working ===<br />
If suspend to disk/ram does not work the be sure hal is running, also make sure you are in the power group (remember to logout)<br />
Also, if you are starting KDE with startx try adding ck-launch-session to the .xinitrc,<br />
as so:<br />
#!/bin/sh<br />
#<br />
# ~/.xinitrc<br />
#<br />
# Executed by startx (run your window manager from here)<br />
# exec gnome-session<br />
exec ck-launch-session startkde<br />
# exec startxfce4<br />
# ...or the Window Manager of your choice<br />
This is done automatically with kdm.<br />
<br />
=== Graphical related issues ===<br />
<br />
==== Low 2D desktop performance (or) Artifacts appear when on 2D ====<br />
Make sure you have the proper driver for your card installed, so that your desktop is at least 2D accelerated. Follow these articles for more information: [[ATI]], [[NVIDIA]], [[Intel]] for more information, in order to make sure that everything is all right.<br />
The open-source ATI and Intel drivers and the proprietary (binary) Nvidia driver should theoretically provide the best 2D and 3D acceleration.<br />
<br />
However, in my case, I have found the [[Nouveau]] open-source driver for Nvidia cards to be the most efficient when it comes to 2D drawing (the binary was ''so'' bad, changing a tab or minimizing a window would require 5-8 seconds, but I have only heard one or two other people with my problem). As with anything, your mileage may vary.<br />
<br />
If this doesn't solve your problems, maybe your driver doesn't provide a good XRender acceleration which the current Qt painter engine relies on by default. You can change the painter engine to software based only by invoking the application with the "-graphicssystem raster" command line. This rendering engine can be set as the default one by recompiling Qt with the same as configure option, "-graphicssystem raster". The raster paint engine enables the CPU to do the majority of the painting, as opposed to the GPU. You may get better performance, depending on your system. This is basically a work-around for the terrible Linux driver stack...since the CPU should obviously not be doing graphical computations since it is designed for fewer threads of greater complexity, as opposed to the GPU which is many threads but lesser computational strength.<br />
<br />
With Qt 4.7+, recompiling Qt is not needed. Simply export QT_GRAPHCSSYSTEM=raster, or "opengl", or "native" (for the default). Raster depends on the CPU, OpenGL depends on the GPU and high driver support (it's buggy and highly in development, so I wouldn't expect it to work), and Native is just using the X11 rendering (mixture, usually).<br />
<br />
For mroe information, consult this [http://apachelog.wordpress.com/2010/09/05/qt-graphics-system-kcm/ KDE Developer blog entry] and/or this [http://labs.trolltech.com/blogs/2009/12/18/qt-graphics-and-performance-the-raster-engine/ Qt Developer blog entry]. I recommend both.<br />
<br />
==== Konsole is slow in applications like vim ====<br />
This is a problem that is caused by slow glyph rendering. You can solve this by switching to a scalable font like Bitstream Vera Sans Mono.<br />
<br />
==== Low 3D desktop performance====<br />
KDE begins with desktop effects enabled. Older cards may be insufficient for 3D desktop acceleration. You can disable desktop effects in <br />
System Settings > Desktop <br />
or you can toggle desktop effects with <br />
{{Keypress|Alt}} + {{Keypress|Shift}} + {{Keypress|F12}}<br />
<br />
{{Note| You may encounter such problems with 3D desktop performance even when using a more powerful graphics card, but using catalyst proprietary driver (fglrx). This driver is known for having issues with 3D acceleration. Visit [[ATI|the ATi Wiki page]] for more troubleshooting.}}<br />
<br />
==== Flickering in fullscreen when compositing is enabled ====<br />
According to https://fedoraproject.org/wiki/KDE/How_to_reduce_fullscreen_flicker : <br />
<br />
Press Alt+F2 and run: <br />
<br />
kwriteconfig --file kwinrc --group Compositing --key UnredirectFullscreen --type bool false<br />
<br />
Apply the changes by pressing Alt+F2 and running: <br />
<br />
qdbus org.kde.kwin /KWin reconfigure<br />
<br />
This forces KWin not to use window unredirection but can affect performance of fullscreen OpenGL applications when desktop effects are enabled. Desktop effects can be suspended to prevent performance issues (press Alt+Shift+F12) before running such applications. <br />
<br />
See https://bugs.kde.org/show_bug.cgi?id=177495<br />
<br />
===== KDE 4.5 specific graphics' issues =====<br />
<br />
Many users who use the ATI and Intel open-source drivers have encountered several performance regressions with the latest KWin update in KDE 4.5. Please try one of the following workarounds (in order of merit) if you have such a problem (via System Settings > Desktop Effects > Advanced):<br />
<br />
* Add '''export LIBGL_ALWAYS_INDIRECT=1''' to ''/etc/profile''<br />
** Optionally (because the above already forces this), ''uncheck'' '''Enable direct rendering''' under ''OpenGL Options''<br />
** Reboot (and we ''do'' mean reboot - don't try to restart the X server)<br />
** This effectively disables Direct Rendering and may affect other OpenGL applications negatively<br />
* Use '''XRender''' as the ''Compositing type''<br />
* Disable Desktop Effects (compositing) altogether<br />
** the best way to achieve this appears to be to disable compositing in xorg.conf by adding<br />
Section "Extensions"<br />
Option "Composite" "Disable"<br />
EndSection<br />
<br />
<br />
See upstream bug report: https://bugs.kde.org/show_bug.cgi?id=241402<br />
<br />
===Sound problems under KDE===<br />
<br />
====ALSA related problems====<br />
{{Note| First make sure you have '''alsa-lib''' and '''alsa-utils''' installed.}}<br />
<br />
====="Falling back to default" messages when trying to listen to any sound in KDE=====<br />
When you encounter such messages:<br />
:The audio playback device ''<name-of-the-sound-device>'' does not work.<br />
:Falling back to default<br />
Go to<br />
System Settings > Multimedia<br />
and set the device named "'''default'''" above all the other devices in each box you see.<br />
<br />
=====I cannot play mp3 files when having Gstreamer backend in Qt Phonon=====<br />
That can be solved by installing gstreamer0.10-plugins<br />
pacman -S gstreamer0.10-plugins<br />
You can also change the backend used by Phonon, by installing the phonon-xine<br />
pacman -S phonon-xine<br />
if you encounter problems that are not solved after installing gstreamer plugins. Then choose Xine in<br />
System Settings > Multimedia > Backend (tab)<br />
(it may have been autoselected after installing phonon-xine)<br />
<br />
=====Amarok "waits" before playing any track=====<br />
If you have encountered this error, the problem is backend specific. In order to solve this problem, change Amarok's backend from '''gstreamer''' to '''xine'''.<br />
<br />
====OSS4 related problems====<br />
If you have OSS4 installed and encounter any problems you should be aware that developers of Kmix are still integrating OSSv4 support. There is an [http://aur.archlinux.org/packages.php?ID=29286 AUR package] that is still experimental.<br />
Arch uses phonon with the Gstreamer backend that should work for most applications. Alternately you could try [[KDE#I_can.27t_play_mp3_files_when_having_Gstreamer_backend_in_Qt_Phonon|phonon with Xine]].<br />
<br />
=== Arch linux specific packaging issues ===<br />
Due to some upgrades on the packages or a newer versioned pacman with bugs (pft, like there are any ;) there could be some problems during upgrading. Please read the sections below, if you have a problem.<br />
<br />
===I wanted a minimal installation of KDE. After I installed some packages and logged in KDE, there are no panels===<br />
If you wanted a minimal installation of KDE, logged in, heard the login sound but nothing else happened, you may not have installed the Plasma binaries. These are included in<br />
kdebase-workspace<br />
Install this package and restart Xorg.<br />
<br />
===I want a fresh installation of KDE for my system. What should I do ?===<br />
Just rename the settings directory of KDE (just in case you'll want to go back to your original settings):<br />
mv ~/.kde4 ~/.kde4-backup<br />
<br />
===Plasma desktop behaves strangely===<br />
Plasma issues are usually caused by unstable '''plasmoids''' or '''plasma themes'''. First, find which was the last plasmoid or plasma theme you had installed and disable it or uninstall it. <br />
<br />
So, if your desktop suddenly exhibits "locking up", this is likely caused by a faulty installed widget. If you cannot remember which widget you installed before the problem began(sometimes it can be an irregular problem), try to track it down by removing each widget until the problem ceases. Then you can uninstall the widget, and file a bug report (bugs.kde.org) '''only if it is an official widget'''. If it is not, I recommend you find the entry on kde-look.org and inform the developer of that widget about the issue (detailing steps to reproduce, etc).<br />
<br />
<br />
If you cannot find the problem, but you do not want ''all'' the KDE settings to be lost, do:<br />
<br />
rm -r ~/.kde4/share/config/plasma*<br />
<br />
This command will '''delete all plasma related configs''' of your user and when you will relogin into KDE, you will have the '''default''' settings back. You should know that this action '''cannot be undone'''. You ought to create a backup folder and copy all the plasma related configs in it.<br />
<br />
==Other KDE projects==<br />
===The Chakra Project===<br />
<br />
{{Warning| Chakra Project may soon '''split''' from Arch's main system. You should be informed on Chakra Project's news and devs' decisions on [http://chakra-project.org/ Chakra Project website].}}<br />
<br />
====Split KDE packages====<br />
[http://chakra-project.org/ The Chakra Project] is a community-based modular version of KDE 4 and Live CD project, which includes a number of UI enhancements for KDE 4.x. Visit [http://chakra-project.org/wiki/index.php/Main_Page the Chakra Project Wiki main page] for more information.<br />
<br />
====Chakra Project Arch Live CD====<br />
<br />
The Chakra Project also provides a full featured Live CD, which has the latest stable KDEmod4 packages included.<br />
You may visit [http://chakra-project.org/download-iso.html the Chakra Project Live CD webpage] in order to find more information.<br />
<br />
====Passing from KDEmod to [extra]'s KDE====<br />
<br />
{{Note|You do have instructions for passing from '''[extra]''''s KDE4 to KDEmod4 [http://chakra-project.org/download-kdemod.html here]. }}<br />
<br />
Both flavours of KDE provide the same Desktop Environment, so if you install the one or the other, in the same upstream version, there should not be any problem regarding plasmoids, themes, styles or any KDE related application.<br />
<br />
So, if you want, for any reason, to pass from KDEmod to '''[extra]''''s KDE, do:<br />
<br />
pacman -Rd kdemod<br />
<br />
OR<br />
<br />
pacman -Rd kdemod-uninstall<br />
<br />
and it should be removed, but with the '''-d''' argument, the KDE dependent packages '''are not''' uninstalled, but only the Desktop Environment. But, if you want to '''completelly''' remove any KDEmod specific application/plasmoid/style etc too, do<br />
<br />
pacman -Rcns kdemod<br />
<br />
and then make sure that everything has been uninstalled:<br />
<br />
pacman -Q | grep kde<br />
<br />
{{Note| If you want to use the same KDE specific settings from the previous KDEmod installation, move or rename ~/'''.kdemod4''' to ~/'''.kde4''' }}<br />
<br />
After this, you may have KDEmod uninstalled.<br />
<br />
Then, follow [[KDE#Installing_KDE_4.5|this]].<br />
<br />
===KDE unstable===<br />
====KDEmod testing/unstable====<br />
<br />
You may visit [http://chakra-project.org/repos.html this webpage] and see which repos can you add in''' pacman.conf''' in order to test the KDEmod unstable packages.<br />
<br />
====KDE unstable (snapshot)====<br />
<br />
===== Unofficial kde-unstable =====<br />
<br />
The member '''ProgDan''' has created a repo where he uploads the testing KDE packages when a new '''upstream snapshot''' is out. You may visit [http://bbs.archlinux.org/viewtopic.php?id=76245 this topic] for more information.<br />
<br />
===== Semi-official kde-unstable =====<br />
<br />
When KDE is reaching beta or RC milestone, KDE "unstable" packages are uploaded to the [kde-unstable] repo. <br />
<br />
You may add it by adding:<br />
<br />
[kde-unstable]<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
in '''{{Filename|/etc/pacman.conf}}'''<br />
<br />
They stay there until KDE is declared stable and passes to [extra].<br />
<br />
Make sure [http://wiki.archlinux.org/index.php/KDE#Distro_and_Upstream_bug_report you make bug reports] if you find any issues.<br />
<br />
Read [http://wiki.archlinux.org/index.php/DeveloperWiki:KDE#Users this section] in the wiki as well.<br />
<br />
===KDE Legacy===<br />
<br />
====Downgrading to KDEmod3 from KDE 4====<br />
For those people who decide that KDE 4 is still not yet "ready" for them, there is a website about how to downgrade to a version of KDE 3.5 called '''kdemod3''':<br />
* [http://chakra-project.org/download-kdemod3.html KDEmod3]<br />
<br />
'''Warning''': There have been issues reported regarding Libjpeg7, that caused KDEmod3 to behave strangely. In order to solve that, install [http://aur.archlinux.org/packages.php?ID=28427 libjpeg6] [http://aur.archlinux.org/packages.php?ID=33795 libpng12 from AUR]. The libs '''libjpeg6''' and '''libpng12''' can be safely installed along side the current libraries. You will also want to update [http://aur.archlinux.org/packages.php?ID=19338 poppler-qt3 from AUR]. The only conflict you will find is a conflict between poppler and poppler-qt3 during poppler updates. '''poppler-qt3''' is a dependency for the kdemod3-kdegraphics-kpdf package, but as a work-around you can simply remove poppler-qt3 with the --nodeps flag, complete the Arch update of poppler and then reinstall poppler-qt3. More info [http://chakra-project.org/bbs/viewtopic.php?id=1097 here]<br />
<br />
{{Warning| KDE 3 is no longer maintained and supported by the KDE developers. KDEmod3 is no longer maintained by the Chakra Projects developers. Use it on your own risk, regarding any bugs, performance issues or security risks.}}<br />
<br />
==== Unofficial community repository for KDEmod3 ====<br />
<br />
[http://bbs.archlinux.org/viewtopic.php?id=97612 In this thread] you may find info on a rebuild of the unsupported KDEmod3.<br />
<br />
==Bugs==<br />
===Common bugs===<br />
If you think you found something that seems like bug, please see [[Common_Issues]] and regarding that: KDE 4 config files are usually located at <br />
<br />
~/.kde4/share/config/<br />
<br />
and for app-specific configs <br />
<br />
~/.kde4/share/apps/<br />
<br />
===Distro and Upstream bug report===<br />
It is preferrable that if you find a minor or serious bug, you should visit [http://bugs.archlinux.org the Arch Bug Tracker] or/and [http://bugs.kde.org KDE Bug Tracker] in order to report that. Make sure that you be clear on what you want to report.<br />
<br />
If you have any issue and you write about in on the Arch forums, first make sure that you have '''FULLY''' updated your system using a good sync mirror (check [https://www.archlinux.de/?page=MirrorStatus here]) or try '''reflector'''.<br />
<br />
==External Links==<br />
* [http://www.kde.org KDE Homepage]<br />
* [http://bugs.kde.org KDE Bug Tracker]<br />
* [http://bugs.archlinux.org Arch Linux Bug Tracker]<br />
* [http://websvn.kde.org KDE WebSVN]</div>Vamp898https://wiki.archlinux.org/index.php?title=Talk:Comparison_of_tiling_window_managers&diff=114245Talk:Comparison of tiling window managers2010-08-16T19:13:43Z<p>Vamp898: /* KWin */ new section</p>
<hr />
<div>Need a brief 'Advantages:, Disadvantages:' blurb for each WM. [[User:Misfit138|Misfit138]] 18:27, 3 January 2009 (EST)<br />
<br />
I'm working on Misfit138's point above, but could somebody add something on Ion3? I've never used it, and don't know much about it. --[[User:SamC|SamC]] 20:51, 3 January 2009 (EST)<br />
<br />
I'm going to add several other tiling WMs once I get all the information about them for the comparison table [[User:cdwillis|cdwillis]]:<br />
<br />
|-<br />
! [[evilwm]]<br />
| C++ || C++ || Dynamic || None || No || Built-in, reads from root window name || No<br />
<br />
|-<br />
! [[larswm]]<br />
| C || C || Dynamic || None || No || Built-in, reads from root window name || No<br />
<br />
|-<br />
! [[qtile]]<br />
| C || Python || Dynamic || None || No || Built-in, reads from root window name || No<br />
<br />
|-<br />
! [[subtle]]<br />
| C || Lua || Dynamic || None || No || Built-in, reads from root window name || No<br />
<br />
<br />
I would avoid adding EvilWM, as it's not tiling. --[[User:SamC|SamC]] 18:59, 19 March 2009 (EDT)<br />
<br />
It's not really correct to say that Ratpoison, Stumpwm and Musca does not support system tray. It's really easy to set them to use panels like lxpanel or something like this.<br />
Also, wmii is not strongly manual window manager. It's in some reasone closer to dynamic ones.<br />
<br />
Musca for now can use usual config file ~/.musca_start that is much like ratpoison's one.<br />
<br />
The words "dynamic" vs "manual" are confusing, since all tiling wms by definition are dynamic (change one window, and bordering windows change). a better word imho, would be "automatic" vs "manual", as in automatic window placement in contrast to manual window placement.<br />
<br />
I just changed subtle's "compositing" value to "Yes, with an external manager such as xcompmgr", like some of the others. I have just tested this and it works for me. However, I have not been able to get xcompmgr to run on with Awesome, despite the info. here to suggest that it works. (Running it in xterm, I could only get a stream of errors like "error 172: BadPicture request 152 minor 8 serial 95027".) [[User:Ideogon|Ideogon]]<br />
<br />
xcompmgr works with i3 too. --[[User:OK100|OK100]] 05:50, 7 July 2010 (EDT)<br />
<br />
== KWin ==<br />
<br />
Supports Tiling since 4.5</div>Vamp898https://wiki.archlinux.org/index.php?title=VirtualBox&diff=113456VirtualBox2010-08-07T12:24:08Z<p>Vamp898: /* Start VirtualBox */</p>
<hr />
<div>[[Category:Emulators (English)]]<br />
[[Category:HOWTOs (English)]]<br />
{{i18n|VirtualBox}}<br />
<br />
[http://www.virtualbox.org VirtualBox] is a virtual pc emulator like vmware. It has many of the features vmware has, as well as some of its own. It is in constant development and new features are implemented all the time. eg. version 2.2 introduced OpenGL 3D acceleration support for Linux and Solaris guests. It has a nice GUI interface (Qt and/or SDL) or command line tools for managing virtual machines. Headless operation is also supported. Running iTunes under VirtualBox is the only way (currently) to sync iPod Touch/iPhone firmware 3.0+.<br />
<br />
==Editions==<br />
VirtualBox is available in two editions: VirtualBox (OSE) and VirtualBox (Personal Use and Evaluation License (PUEL))<br />
<br />
===VirtualBox (OSE)===<br />
VirtualBox (OSE) is the open source version of VirtualBox, which can be found in the community repository. It lacks some features such as USB device support and the built-in RDP server. <br />
<br />
===VirtualBox (PUEL)===<br />
VirtualBox PUEL is a binary-only version (free for personal use). There are several available from the AUR, but the most popular PKGBUILD was written by thotypous and is currently maintained by cryptocrack. You can download it from the [http://aur.archlinux.org/packages.php?ID=9753 AUR at this link] or directly from the <br />
[http://www.virtualbox.org/wiki/Downloads VirtualBox] website. The PUEL edition offers the following advantages:<br />
<br />
*'''Remote Display Protocol (RDP) Server''' - a complete RDP server on top of the virtual hardware, allowing users to connect to a virtual machine remotely using any RDP compatible client<br />
<br />
*'''USB support''' - a virtual USB controller which allows USB 1.1 and USB 2.0 devices to be passed through to virtual machines<br />
<br />
*'''USB over RDP''' - a combination of the RDP server and USB support, allowing users to make USB devices available to virtual machines running remotely<br />
<br />
*'''iSCSI initiator''' - a builtin iSCSI initiator making it possible to use iSCSI targets as virtual disks without the guest requiring support for iSCSI<br />
<br />
==Installation==<br />
<br />
===Install VirtualBox (OSE)===<br />
VirtualBox (OSE) is available from the community repository:<br />
# pacman -S virtualbox-ose<br />
<br />
{{Note | 1=This package is not in x86_64 Repositories (see [http://bbs.archlinux.org/viewtopic.php?id=80991&p=1 this thread] why). See the link to the PKGBUILD by thotypous in the AUR above if you are running Arch x86_64 and want to use VirtualBox.}}<br />
<br />
{{Note | 1=This package can be installed for x86_64 systems by following the instructions below, however the previous note will remain for those of you who wish to install VirtualBox (OSE) from the AUR.}}<br />
<br />
Once installed, a desktop entry can be located in ''Applications &rarr; System Tools &rarr; VirtualBox OSE''<br />
<br />
Now, add the desired username to the '''vboxusers''' group:<br />
# gpasswd -a USERNAME vboxusers<br />
<br />
{{Note | You must logout/login in order for this change to take effect.}}<br />
<br />
To build '''vboxdrv''' module, run as root:<br />
# /etc/rc.d/vboxdrv setup<br />
<br />
Lastly, edit {{Filename|/etc/rc.conf}} as root and add '''vboxdrv''' to the MODULES array in order to load the VirtualBox drivers at startup. For example:<br />
MODULES=(loop '''vboxdrv''' fuse ...)<br />
<br />
To load the module manually, run the following in a terminal as root: <br />
# modprobe vboxdrv<br />
<br />
===Install VirtualBox on x86_64===<br />
VirtualBox can be installed on the x86_64 platform without downloading a version from the AUR. The current download of VirtualBox from the VirtualBox website for *all distributions* under VirtualBox for Linux hosts installs properly after installing the kernel26-headers.<br />
<br />
# pacman -S kernel26-headers<br />
<br />
Once the kernel headers are downloaded and installed, you may run the VirtualBox install downloaded from the VirtualBox website.<br />
The current version as of 2010/28/06 is 3.2.6 and can be downloaded from this URL: [http://download.virtualbox.org/virtualbox/3.2.6/VirtualBox-3.2.6-63112-Linux_amd64.run] If you choose to download this file from the website yourself, make sure you are downloading the amd64 version for all distributions as mentioned above. After the file is successfully downloaded to your preferred location, run the installer as root (or with sudo) with the following command:<br />
<br />
# sh VirtualBox-3.2.6-63112-Linux_amd64.run<br />
{{Note | 1=Edit the file name to match the version (if applicable) of which you downloaded. }}<br />
<br />
After a successful installation, you may run the program from your Applications menu, usually under system tools. If you have a problem getting the application to launch you may need the sdl package.<br />
<br />
# pacman -S sdl<br />
<br />
{{Note | 1=If you encounter any problems mounting USB devices after installing guest additions (you can see them but not enable them) you need to add your account to the vboxusers group, you can do this by doing the following. '''After issuing the command below you will need to logout/login for it to take effect'''. }}<br />
<br />
# gpasswd -a ''yourusername'' vboxusers<br />
<br />
{{Note | 1=You may encounter an error similar to this if you attempt to start a virtual machine: "'''Kernel driver not installed (rc=-1908)" The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please reinstall the kernel module by executing '/etc/init.d/vboxdrv setup'"'''. If you encounter this error, issue the recommended command, but due note that it is actually '/etc/rc.d/vboxdrv setup'.<br />
AFTER COMPLETING THIS COMMAND IT IS ESSENTIAL TO LOAD THE MODULES REQUIRED BY VIRTUAL BOX! To load the required modules issue the below in a terminal as root. }}<br />
<br />
# modprobe vboxdrv; modprobe vboxnetadp; modprobe vboxnetflt<br />
<br />
===Install VirtualBox PUEL (virtualbox_bin)===<br />
VirtualBox PUEL is available from the [http://aur.archlinux.org/packages.php?ID=9753 AUR: virtualbox_bin].<br />
<br />
Download the tarball from the above page. As a normal user, unpack, change directory, and {{Codeline|makepkg}}:<br />
$ tar -xzf virtualbox_bin.tar.gz<br />
$ cd virtualbox_bin<br />
$ makepkg<br />
This will create a .pkg.tar.gz file in the virtualbox_bin directory.<br />
Then, as root:<br />
# pacman -U PACKAGE-NAME.pkg.tar.gz<br />
This will compile the vboxdrv kernel modules and install VirtualBox in {{Filename|/opt/VirtualBox}}, and add the vboxusers group.<br />
<br />
Now, add the desired username to the '''vboxusers''' group:<br />
# gpasswd -a USERNAME vboxusers<br />
<br />
{{Note | You must logout/login in order for this change to take effect.}}<br />
<br />
Lastly, edit {{Filename|/etc/rc.conf}} as root and add '''vboxdrv''' to the MODULES array in order to load the VirtualBox drivers at startup. For example:<br />
MODULES=(loop '''vboxdrv''' fuse ...)<br />
<br />
To load the module manually, run the following in a terminal as root: <br />
# modprobe vboxdrv<br />
<br />
====Install required QT libraries====<br />
Currently, VirtualBox relies on QT4 for its graphical interface. If you require a GUI, ensure you have QT4 installed:<br />
# pacman -S qt<br />
<br />
==Configuration==<br />
After having installed VirtualBox on your system and added yourself to the vboxusers group, you can start configuring your system in order to make all the features of VirtualBox available. Create a new virtual machine using the wizard provided by the GUI and then click settings in order to edit the virtual machine settings.<br />
<br />
===Keyboard and mouse between the host and the guest===<br />
*To capture the keyboard and mouse, click the mouse inside the Virtual Machine display.<br />
*To uncapture, press the right Ctrl key, alone.<br />
<br />
To get seamless mouse integration between host and guest, you need to install the Virtualbox additions into the guest.<br />
<br />
Also, mouse pointer integration does not work out of the box. To fix it, make sure you have the following sections in your guest's {{Filename|xorg.conf}}:<br />
Section "InputDevice"<br />
Identifier "Mouse0"<br />
Driver "vboxmouse"<br />
Option "Protocol" "auto"<br />
Option "Device" "/dev/input/mice"<br />
Option "ZAxisMapping" "4 5 6 7"<br />
EndSection<br />
<br />
Section "ServerLayout"<br />
Identifier "X.org Configured"<br />
Screen 0 "Screen0" 0 0<br />
InputDevice "Mouse0" "CorePointer"<br />
InputDevice "Keyboard0" "CoreKeyboard"<br />
EndSection<br />
<br />
When generating your {{Filename|xorg.conf}} with {{Codeline|"X -configure"}}, you will end up with an InputDevice section that uses the {{Codeline|mouse}} driver. After installing the Guest Additions, you should replace {{Codeline|mouse}} with {{Codeline|vboxmouse}} and then restart X or reboot your VM.<br />
<br />
===Getting network in the guest machine to work===<br />
First, get network working in the guest machine. Click the network tab. The not attached option means you will have "Network cable unplugged" or similar error in the guest computer.<br />
<br />
====Using NAT network====<br />
This is the simplest way to get network. Select NAT network and it should be ready to use. Then, the guest operating system can be automatically configured by using DHCP.<br />
<br />
The NAT IP address on the first card is 10.0.2.0, 10.0.3.0 on the second and so on.<br />
<br />
Also in VirtualBox 2.2.0+ NAT network DHCP clients will not configure your nameserver (DNS server for windows guests) you will have to manually configure the nameserver(DNS server)<br />
<br />
====Using host interface networking (the VirtualBox way)====<br />
Since VirtuaBox 2.1.0 it has a native support for host interface networking. Just add '''vboxnetflt''' to your MODULES section in {{Filename|[[rc.conf]]}} and choose ''Host Interface Networking'' (or ''Bridged adapter'' in [http://forums.virtualbox.org/viewtopic.php?f=1&t=16447 2.2]) in the virtual machine configuration.<br />
<br />
'''Note''': DHCP broadcasting does not seem to work properly under this way. Set up your guest networking with static IP assignment.<br />
<br />
====Using host interface networking (the Arch way)====<br />
You are going to just edit these files and reboot:<br />
<br />
* {{Filename|/etc/conf.d/bridges}}<br />
* {{Filename|/etc/rc.conf}}<br />
* {{Filename|/etc/vbox/interfaces}}<br />
<br />
Edit:<br />
'''{{Filename|/etc/conf.d/bridges}}'''<br />
bridge_br0="eth0 vbox0" # Put any interfaces you need.<br />
BRIDGE_INTERFACES=(br0)<br />
<br />
'''{{Filename|/etc/rc.conf}}'''<br />
<br />
First add the bridge module to your MODULES line<br />
MODULES=( <your other modules> '''bridge''')<br />
<br />
Then, in your NETWORKING section, make the following changes:<br />
eth0="eth0 up"<br />
br0="dhcp" # Maybe you have some static configuration; change to fit<br />
INTERFACES=(eth0 br0)<br />
<br />
'''Note''' by gpan:<br />
<br />
'''{{Filename|/etc/rc.conf}}'''<br />
<br />
First add the vboxdrv (and vboxnetflt in case of 2.1.0 version) module to your MODULES line:<br />
MODULES=( <your other modules> vboxdrv vboxnetflt )<br />
<br />
'''Note''' by vit:<br />
<br />
'''{{Filename|/etc/rc.conf}}'''<br />
<br />
In my case it did not work untill adding vboxnetadp to modules.<br />
<br />
Next, you should edit your {{Filename|/etc/udev/rules.d/60-vboxdrv.rules}} and type:<br />
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660"<br />
<br />
Save it and exit.<br />
<br />
Then open terminal and type:<br />
# pacman -S bridge-utils uml_utilities<br />
<br />
Create a new bridge with this command:<br />
# brctl addbr br0<br />
<br />
'''{{Filename|/etc/vbox/interfaces}}'''<br />
<br />
(You can set up more interfaces if you want. Sky is the limit!):<br />
vbox0 your_user br0 # Be sure that your user is in the vboxusers group.<br />
<br />
Reboot.<br />
<br />
{{Note | Remember to set up your virtual machine with proper network configuration. (Attach a "Bridged Adapter" and choose "br0") }}<br />
{{Note | If you have any issue, make sure that you have the bridge-utils package installed and vboxnet daemon loaded.}}<br />
<br />
====Using host interface networking (generic)====<br />
This way is a bit harder, but it allows you to see the VirtualMachine as a "real" computer on your local network. You need to get bridge-utils <br />
<br />
# pacman -S bridge-utils uml_utilities<br />
<br />
'''Note''' by Sp1d3rmxn:<br />
:You also need to have the TUN module loaded... in {{Filename|[[rc.conf]]}} add {{Codeline|"tun"}} (without the quotes) to your MODULES section. For testing this out right now without rebooting you can load the module from the command line by {{Codeline|"modprobe tun"}}.<br />
:<br />
:Then you MUST set these permissions otherwise you will never get VBox to init the interface. The command is {{Codeline|"chmod 666 /dev/net/tun"}} (without the quotes).<br />
<br />
:Now proceed with the rest as it is written below.<br />
<br />
'''Note'''<br />
:As said by Sp1d3rmxn, set these permissions, but, instead of using the command, set them in {{Filename|/etc/udev/rules.d/60-vboxdrv.rules}}, which will apply them on boot:<br />
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660"<br />
KERNEL=="tun", OWNER="root", GROUP="vboxusers", MODE="0660"<br />
<br />
<br />
'''1.''' Create a new bridge with this command:<br />
# brctl addbr br0<br />
<br />
'''2.''' If you are not using DHCP, run ifconfig and note down the network configuration of your existing network interface (e.g. eth0), which will need to be copied to the bridge.<br />
<br />
{{Note|You will need this settings so make sure you do not lose them.}}<br />
<br />
'''3.''' Switch your physical network adapter to "promiscuous" mode so that it will accept Ethernet frames for MAC addresses other than its own (replace {{Codeline|eth0}} with your network interface):<br />
# ifconfig eth0 0.0.0.0 promisc <br />
<br />
{{Note | You will lose network connectivity on eth0 at this point.}}<br />
<br />
'''4.''' Add your network adapter to the bridge:<br />
# brctl addif br0 eth0<br />
<br />
'''5.''' Transfer the network configuration previously used with your physical ethernet adapter to the new bridge. If you are using DHCP, this should work:<br />
# dhclient br0<br />
<br />
'''Note''' by Sp1d3rmxn:<br />
:Use {{Codeline|"dhcpcd -t 30 -h yourhostname br0 &"}} instead of the above<br />
<br />
Otherwise, run {{Codeline|"ifconfig br0 x.x.x.x netmask x.x.x.x"}} and use the values that you noted down previously.<br />
<br />
'''6.''' To create a permanent host interface called vbox0 (all host interfaces created in this way must be called vbox followed by a number) and add it to the network bridge created above, use the following command:<br />
VBoxAddIF vbox0 vboxuser br0<br />
<br />
Replace {{Codeline|vboxuser}} with the name of the user who is supposed to be able to use the new interface.<br />
<br />
{{Note | VboxAddIF is located in /opt/VirtualBox-VERSION OF VIRTUALBOX/VBoxAddIF}}<br />
<br />
Alternatively, you can [http://mychael.gotdns.com/blog/2007/05/31/virtualbox-bridging/ setup VirtualBox networking] through your {{Filename|/etc/rc.conf}} to enable a bridged connection.<br />
<br />
====Using host interface networking with a wireless device====<br />
Bridging as described above will not work with a wireless device. Using [http://aur.archlinux.org/packages.php?ID=16356 parprouted] however it can be accomplished.<br />
<br />
# Install parprouted and iproute<br />
# {{Codeline|# ln -s /usr/sbin/ip /sbin/ip}}<br />
# Make sure IP fowarding is enabled: {{Codeline|# sysctl net.ipv4.ip_forward&#61;1}}, and/or edit {{Filename|/etc/sysctl.conf}}.<br />
# {{Codeline|# VBoxTunctl -b -u <user>}}, to create the tap device<br />
# {{Codeline|# ip link set tap0 up; ip addr add 192.168.0.X/24 dev tap0}}, needs to be a manually set IP on the same network your wireless device is.<br />
# {{Codeline|# parprouted wlan0 tap0}}<br />
<br />
===Getting USB to work in the guest machine===<br />
(Only available in the PUEL edition)<br />
<br />
{{Note|As of VirtualBox>2.2.4 this is no longer necessary to mount a usb filesystem.}}<br />
<br />
First in order to make USB available for use to the virtual machine you must add this line to your {{Filename|/etc/fstab}}:<br />
none /proc/bus/usb usbfs auto,busgid=108,busmode=0775,devgid=108,devmode=0664 0 0<br />
<br />
Then tell mount to reread {{Filename|/etc/fstab}}:<br />
# mount -a<br />
<br />
{{Codeline|108}} is is the id of the group which should be allowed to access USB-devices. Change it to the id of your vboxusers group. You can get the id by running:<br />
$ grep vboxusers /etc/group<br />
<br />
Restart Virtualbox and click the USB tab in the settings of the virtual machine and select which devices are available to your pc on boot. If you wish your virtual machine to use device that you have just plugged in (assuming the virtual machine has booted already), go to the VirtualMachine screen go to ''Devices &rarr; USB Devices'' and select the device you wish to plug in the virtual PC.<br />
<br />
'''Note''' by bjimba:<br />
<br />
Recent versions of VirtualBox, as noted above, do not require usbfs, however you will need the HAL daemon running if you do not use usbfs. See the [[HAL]] wiki page for details.<br />
<br />
===Installing Guest Additions===<br />
The Guest Additions make the shared folders feature available, as well as better video (3D available in version 2.1+) and mouse drivers. You will have mouse integration, thus no need to release the mouse after using it in the guest and one can also enable a bidirectional clipboard.<br />
<br />
{{Note | The instructions immediately below are for an Archlinux guest on an Archlinux host.}}<br />
<br />
After you booted the virtual machine, go to menu ''Devices &rarr; Install Guest Additions...'' Once you have clicked it, VirtualBox loads an ISO into the current CD-ROM, so you will not see anything happen yet.<br />
<br />
You will require gcc and make if you do not already have them so install them typing the following as root:<br />
# pacman -S gcc make <br />
<br />
If you are running arch in VirtualBox install the kernel headers<br />
# pacman -S kernel26-headers<br />
<br />
Then do the following as root:<br />
# mount /media/cdrom<br />
for i686 systems (32 bit):<br />
# sh /media/cdrom/VBoxLinuxAdditions-x86.run<br />
for x86-64 systems (64 bit):<br />
# sh /media/cdrom/VBoxLinuxAdditions-amd64.run<br />
<br />
It will build and install the kernel modules, install the Xorg drivers and create init scripts. It will most probably print out errors about init scripts and run levels and what not. Ignore them. You will find {{Filename|rc.vboxadd}} in /etc/rc.d which will load them on demand. To have the Guest Additions loaded at boot time, just add those to the DAEMONS array in {{Filename|/etc/rc.conf}} eg.:<br />
DAEMONS=(syslog-ng network netfs crond alsa '''rc.vboxadd''')<br />
<br />
Another option is to install one of these packages:<br />
# pacman -S virtualbox-additions<br />
or<br />
# pacman -S virtualbox-ose-additions<br />
<br />
You will then have an ISO to mount as a loop device. Remember to load the loop kernel module before:<br />
# modprobe loop<br />
# mount /usr/lib/virtualbox/additions/VBoxGuestAdditions.iso /media/cdrom -o loop<br />
<br />
Then execute {{Filename|VBoxLinuxAdditions.run}} as before. Before adding {{Filename|rc.vboxadd}} to DAEMONS check {{Filename|/etc/rc.local}} for commands to load the vboxadd daemons put by the installation script.<br />
<br />
'''Using full resolution of the host system in the guest'''<br />
<br />
Set the resolution of your guest in the grub boot script {{Filename|/boot/grub/menu.lst}}, i.e. add the correct vga code to the kernel command line.<br />
For a resolution of 1280x1024, this would e.g. look like<br />
# kernel /vmlinuz26 root=/dev/disk/by-uuid/7bdc5dee-8fb0-4260-bc43-60ac6e4e4a54 ro vga=795<br />
Add the resolution to {{Filename|/etc/X11/xorg.conf}}, e.g.<br />
<br />
# Section "Screen"<br />
# ...<br />
# SubSection "Display"<br />
# Viewport 0 0<br />
# Depth 24<br />
# Modes "1280x1024" "1024x768"<br />
# EndSubSection<br />
# ...<br />
# EndSection<br />
<br />
<br />
'''Windows Guests'''<br />
<br />
After installing Windows (XP etc.) on your virtual machine, simply select ''Devices &rarr; Install Guest Additions...''<br />
<br />
This will mount the iso image and windows should then automatically launch the guest additions installer. Follow the instructions to the end.<br />
<br />
===Sharing folders between the host and the guest===<br />
In the settings of the virtual machine go to shared folders tab and add the folders you want to share.<br />
<br />
*NOTE: You need to install Guest Additions in order to use this feature.<br />
In a Linux host, ''Devices &rarr; Install Guest Additions''<br />
Yes (when asked to download the CD image)<br />
Mount (when asked to register and mount)<br />
<br />
In a Linux host, create one or more folders for sharing files, then set the shared folders via the virtualbox menu (guest window).<br />
<br />
In a Windows guest, starting with VirtualBox 1.5.0, shared folders are browseable and are therefore visible in Windows Explorer. Open Windows Explorer and look for it under ''My Networking Places &rarr; Entire Network &rarr; VirtualBox Shared Folders''.<br />
<br />
Launch the windows explorer (run explorer command) to browse the network places -> expand with the (+) sign : entire network &rarr; VirtualBox shared folders &rarr; '''\\Vboxsvr''' &rarr; then you can now expand all your configured shared folders here, and set up shortcuts for linux folders in the guest filesystem. You can alternatively use the "Add network place wizard", and browse to "VBoxsvr".<br />
<br />
Alternatively, on the Windows command line, you can also use the following:<br />
net use x: \\VBOXSVR\sharename<br />
<br />
While {{Codeline|VBOXSVR}} is a fixed name, replace {{Codeline|x:}} with the drive letter that you want to use for the share, and sharename with the share name specified with VBoxManage.<br />
<br />
In a Windows guest, to improve loading and saving files (e.g. MS Office) by VirtualBox Shared Folders edit ''c:\windows\system32\drivers\etc\hosts'' as below:<br />
127.0.0.1 localhost vboxsvr<br />
<br />
In a Linux guest, use the following command:<br />
# mount -t vboxsf [-o OPTIONS] sharename mountpoint<br />
(Notes: sharename is optional or same as selected in the VirtualBox-Dialog , mountpoint of the shared directory in the hosts filesystem)<br />
<br />
Replace {{Codeline|sharename}} with the share name specified with VBoxManage, and mountpoint with the path where you want the share to be mounted (e.g. /mnt/share). The usual mount rules apply, that is, create this directory first if it does not exist yet.<br />
<br />
Beyond the standard options supplied by the mount command, the following are available:<br />
iocharset=CHARSET<br />
to set the character set used for I/O operations (utf8 by default) and<br />
convertcp=CHARSET<br />
to specify the character set used for the shared folder name (utf8 by default).<br />
<br />
===Getting audio to work in the guest machine===<br />
<br />
In the machine settings, go to the audio tab and select the correct driver according to your sound system (ALSA, OSS or PulseAudio).<br />
<br />
===Setting up the RAM and Video Memory for the virtual PC===<br />
<br />
You can change the default values by going to ''Settings &rarr; General''.<br />
<br />
===Setting up CD-ROM for the Virtual PC===<br />
<br />
You can change the default values by going to ''Settings &rarr; CD/DVD-ROM''.<br />
<br />
Check mount CD/DVD drive and select one of the following options.<br />
<br />
'''Note:''' If no CD-ROM drive is detected, make sure the HAL daemon is running. To start it, run the following command as root:<br />
# /etc/rc.d/hal start<br />
<br />
===Enabling OpenGL acceleration in Arch Linux guests===<br />
Due to a bug in the VirtualBox guest addition setup scripts (as of VBox 3.1.2), simply ticking the "3D acceleration" checkbox in the virtual machine settings and installing the guest additions won't enable 3D acceleration for OpenGL applications under X for Arch Linux guests (and possibly others). In order to still get OpenGL acceleration, a bit of manual intervention is necessary after installing the guest additions. <br />
As root, run:<br />
ln -s /usr/lib/VBoxOGL.so /usr/lib/xorg/modules/dri/vboxvideo_dri.so<br />
ln -s /usr/lib/xorg/modules/dri /usr/lib/dri<br />
Also make sure the user starting X in the guest is in the '''video''' group.<br />
<br />
{{Note | Don't compare before-after performance using glxgears! You may get a lot less FPS due to now-working vsync support. Compare performance using a real, heavy 3D application (like a game).}}<br />
<br />
===Enabling D3D acceleration in Windows guests===<br />
Recent versions of Virtualbox have support for accelerating OpenGL inside guests. This can be enabled with a simple checkbox in the machine's settings, right below where video ram is set, and installing the Virtualbox guest additions. However, most Windows games use Direct3D (part of DirectX), not OpenGL, and are thus not helped by this method. However, it is possible to gain accelerated Direct3D in your Windows guests by borrowing the d3d libraries from Wine, which translate d3d calls into OpenGL, which is then accelerated. <br />
<br />
After enabling OpenGL acceleration as described above, go to http://www.nongnu.org/wined3d/ in your Windows guest and grab the "Latest version (Installer):". Reboot the guest into safe mode (press F8 before the Windows screen appears but after the Virtualbox screen disappears), and install wined3d, accepting the defaults during the install. (You may check the box for DirectX 10 support if you like, dont touch anything else.) Reboot back to normal mode and you should have accelerated Direct3D. <br />
<br />
{{Note | This hack may or may not work for some games depending on what hardware checks they make and what parts of D3D they use.}}<br />
{{Note | This has only been tried on Windows XP and Windows 7 RC guests AFAIK, and does not work on the Windows 7 guest. If you have experience with this on a different windows version, please add that data here.}}<br />
<br />
==Start VirtualBox==<br />
To start Virtualbox, run the following command in a terminal:<br />
$ VirtualBox<br />
<br />
Or in KDE/GNOME menu, select: Applications --> System --> Virtual Machine (Oracle VM VirtualBox)<br />
<br />
==Virtualized OS Setup==<br />
Virtualbox needs to be setup to virtualize another operating system.<br />
<br />
===Test a LiveCD/DVD===<br />
Click the 'New' button to create a new virtual environment. Name it appropriately and select Operating System type and version. Select base memory size (note: most operating systems will need at least 512MB to function properly). Create a new hard disk image (a hard disk image is a file that will contain the operating system's filesystem and files).<br />
<br />
When the new image has been created, click 'Settings', then CD/DVD-ROM, check 'Mount CD/DVD Drive' then select an ISO image.<br />
<br />
==Maintenance==<br />
<br />
===Rebuild the vboxdrv Module===<br />
Note that any time your kernel version changes (due to an upgrade, recompile, etc.) you must also rebuild the VirtualBox kernel modules.<br />
<br />
Ensure that ''kernel26-headers'' is still installed, and run the following command:<br />
# /etc/rc.d/vboxdrv setup<br />
This will build the VirtualBox kernel modules for the ''currently running kernel''; if you have just upgraded your kernel package, reboot before trying to rebuild your kernel modules.<br />
<br />
After rebuilding the module, do not forget to load it with<br />
# modprobe vboxdrv<br />
<br />
''vboxdrv'' and ''vboxnetflt'' should be in the MODULES=() section of your /etc/rc.conf<br />
<br />
If you are using an old virtualbox_bin package built from AUR, run:<br />
# vbox_build_module<br />
<br />
If you need to rebuild the Virtual Box Additions in a guest installation of Arch Linux, use this command:<br />
# /etc/rc.d/rc.vboxadd setup<br />
<br />
===Compact a Disk Image===<br />
See [http://my.opera.com/locksley90/blog/2008/06/01/how-to-compact-a-virtualbox-virtual-disk-image-vdi How to compact a VirtualBox virtual disk image (VDI)]<br />
<br />
===Increase the size of a virtual hard drive for a Windows guest===<br />
WARNING: ONLY TESTED WITH XP GUEST!<br />
<br />
If you find that you are running out of space due to the small hard drive size you selected when created your VM, you can take the following steps:<br />
<br />
Create a new vdi in ~/.VirtualBox/HardDisks by running:<br />
# cd ~/.VirtualBox/HardDisks<br />
# VBoxManage createhd -filename new.vdi --size 10000 --remember<br />
<br />
where size is in mb, in this example 10000MB ~= 10GB, and new.vdi is name of new hard drive to be created.<br />
<br />
Next the old vdi needs to be cloned to the new vdi, this may take some time so wait while it occurs:<br />
# VBoxManage clonehd old.vdi new.vdi --existing<br />
<br />
Detach old harddrive and attach new hard drive, replace VMName with whatever you called your VM:<br />
# VBoxManage modifyvm VMName --hda none<br />
# VBoxManage modifyvm VMName --hda new.vdi<br />
<br />
Boot the VM, run Partition Wizard 5 to resize the partition on the fly, and reboot.<br />
<br />
Remove old vdi from VirtualBox and delete<br />
# VBoxManage closemedium disk old.vdi<br />
# rm old.vdi<br />
<br />
===Windows Xp and Nokia phones===<br />
To get working Windows XP and Nokia phones with Pc Suite mode, Virtualbox needs two simple steps:<br />
<br />
'''1.''' Add a rule to udev with {{Filename|/etc/udev/rules.d/40-permissions.rules}}:<br />
LABEL="usb_serial_start"<br />
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", \<br />
GROUP="usbfs", MODE="0660", GROUP="dialout"<br />
LABEL="usb_serial_end"<br />
<br />
'''2.''' Create the group usbfs and add its user to it<br />
$ sudo groupadd usbfs<br />
$ sudo usermod -a -G usbfs $USER<br />
<br />
After a logout, connect a Nokia phone with PC Suite mode and start Windows XP to test new rule.<br />
<br />
==Migrating From Another VM==<br />
The <code>qemu-img</code> program can be used to convert images from one format to another, or add compression or encryption to an image. <br />
# pacman -S qemu<br />
<br />
===Converting from QEMU images===<br />
To convert a QEMU image for use with VirtualBox, first convert it to ''raw'' format, then use VirtualBox's conversion utility to convert and compact it in its native format.<br />
$ qemu-img convert -O raw test.qcow2 test.raw<br />
$ VBoxManage modifyvdi /full/path/to/test.vdi compact<br />
or <br />
$ qemu-img convert -O raw test.qcow2 test.raw<br />
(of course you must have installed qemu package for that)<br />
$ VBoxManage convertfromraw /full/path/to/test.raw /full/path/to/test.vdi<br />
$ VBoxManage modifyvdi /full/path/to/test.vdi compact<br />
<br />
===Converting from VMware images ===<br />
Do <br />
$ VBoxManage clonehd source.vmdk target.vdi --format VDI<br />
<br />
This may not be needed anymore with recent virtualbox versions (to be confirmed)<br />
<br />
==Tips and Tricks==<br />
<br />
===Getting Web-cams and other USB devices to detect===<br />
Make sure you filter any devices that are not a keyboard or a mouse so they don't start up at boot and this insures that Windows will detect the device at start-up.<br />
<br />
===Sending a CTRL+ALT+F1 to the Guest===<br />
If your guest O/S is a Linux distro, and you want to open a new tty text shell or exit X via typing {{Keypress|Ctrl}}+{{Keypress|Alt}}+{{Keypress|F1}}, you can easily send this command to the guest O/S simply by hitting your 'Host Key' (usually the {{Keypress|Ctrl}} in the Right side of your keyboard) + {{Keypress|F1}} or {{Keypress|F2}}, etc.<br />
<br />
===Speeding up HDD Access for the Guest===<br />
Enabling the SATA(AHCI) controller within Virtualbox can speed up Host disk operations. This is available though Settings>Hard Disks in current versions of Virtual Box.<br />
<br />
===Starting VMs at System Boot on Headless Servers===<br />
Add this line to /etc/rc.local<br />
exec /bin/su PREFERRED_USER -l -c "/bin/bash --login -c \"VBoxHeadless -startvm {UUID}\" >/dev/null 2>&1" &<br />
Where PREFERRED_USER is the user profile that contains the VM definitions and .vdi files. This will start the VM with a RDP server running on port 3389.<br />
To determine the available VMs for a user:<br />
su PREFERRED_USER -c "VBoxManage list vms"<br />
To suspend the VM:<br />
su PREFERRED_USER -c "VBoxManage controlvm {UUID} savestate"<br />
<br />
===Accessing Server on VM from Host===<br />
To access apache on a VM from the Host machine ONLY, simply execute the following lines on the Host:<br />
$ VBoxManage setextradata GuestName "VBoxInternal/Devices/pcnet/0/LUN#0/Config/Apache/HostPort" 8888<br />
$ VBoxManage setextradata GuestName "VBoxInternal/Devices/pcnet/0/LUN#0/Config/Apache/GuestPort" 80<br />
$ VBoxManage setextradata GuestName "VBoxInternal/Devices/pcnet/0/LUN#0/Config/Apache/Protocol" TCP<br />
Where 8888 is the port the host should listen on and 80 is the port the VM will send Apache's signal on. <br />
To use a port lower than 1024 on the host machine changes need to be made to the firewall on the host machine. This can also be set up to work with SSH, etc.. by changing "Apache" to whatever service and using different ports. <br />
<br />
Note: "pcnet" refers to the network card of the VM. If you use an Intel card in your VM settings change "pcnet" to "e1000"<br />
<br />
*from [http://mydebian.blogdns.org/?p=111 ]<br />
<br />
It might also be necessary to allow connections from the outside to the server in your VM. E.g. if the guest OS is Arch, you may want to add the line <br />
httpd: ALL<br />
to your /etc/hosts.allow file.<br />
<br />
===Daemon Tools===<br />
While VirtualBox can mount ISO images without a problem, there are some image formats which cannot reliably be converted to ISO. For instance, ccd2iso ignores .ccd and .sub files, which can give disk images with broken files. cdemu, fuseiso, and MagicISO will do the same. In this case there is no choice but to use Daemon Tools inside VirtualBox.<br />
<br />
Recent Daemon Tools versions won't install, so use this old one: [http://www.disc-tools.com/download/daemon347+hashcalc]<br />
<br />
==Running Arch Linux as a guest==<br />
To install guest additions with support for Xorg follow these steps:<br />
{{Note|Run the following steps as root}}<br />
* install entire xorg group: (is everything actually required?) <br />
* install dependencies needed to build the guest additions: <pre># pacman -S kernel26-headers gcc make</pre><br />
* mount and install VirtualBox guest additions<br />
{{Note|If X didn't work after you finished '''following steps''' , you may install virtualbox-ose-additions-modules from community repo instead of guest additions from it's ISO. <br />
<pre># pacman -S virtualbox-ose-additions</pre><br />
<pre># pacman -S virtualbox-ose-additions-modules</pre><br />
then go ahead.<br />
}}<br />
* create <tt>/etc/X11/xorg.conf</tt> with the following contents:<br />
Section "InputDevice"<br />
Identifier "Mouse0"<br />
Driver "vboxmouse"<br />
Option "Device" "/dev/vboxguest"<br />
Option "CorePointer" "yes"<br />
EndSection<br />
<br />
Section "Device"<br />
Identifier "Card0"<br />
Driver "vboxvideo"<br />
EndSection<br />
* add <tt>hal</tt> to <tt>DAEMONS</tt> in <tt>rc.conf</tt> (not needed if you use X.org Server >= 1.8)<br />
{{Note|It is not required to add rc.vboxadd to DAEMONS because it is added to /etc/rc.local automatically}}<br />
{{Note|Run the following steps while logged into your user account}}<br />
* add <tt>/usr/bin/VBoxClient-all &</tt> to the top of <tt>~/.xinitrc</tt> (even if <tt>~/.xinitrc</tt> does not exist)<br />
<br />
==Copy and paste is not working in Arch guests!==<br />
You forgot to start VBoxclient-all. See above.<br />
<br />
==External Links==<br />
* [http://www.virtualbox.org/manual/UserManual.html VirtualBox User Manual]</div>Vamp898https://wiki.archlinux.org/index.php?title=DocBook&diff=113302DocBook2010-08-04T08:30:36Z<p>Vamp898: /* Converting into XHTML */</p>
<hr />
<div>[[Category:Office (English)]]<br />
{{Stub}}<br />
<br />
We will assume that our docbook document is in <code>File.xml</code><br />
<br />
==Setting up Docbook in Arch==<br />
To set up docbook running on arch:<br />
$ pacman -S docbook-xml docbook-xsl libxslt libxml2<br />
<br />
==Validating XML file==<br />
To validate the XML file use:<br />
$ xmllint --valid --noout File.xml<br />
<br />
This will generate no output if the file is proper XML. <br />
<br />
==Converting into XHTML==<br />
===Single file===<br />
To convert into a XHTML file (single file) use:<br />
xsltproc /usr/share/xml/docbook/`pacman -Q docbook-xsl | cut -d ' ' -f 2 | cut -d '-' -f 1`/xhtml/docbook.xsl File.xml > Output.html<br />
===Segmented===<br />
To convert into a a segmented XHTML file (each section in its own file) use:<br />
xsltproc /usr/share/xml/docbook/`pacman -Q docbook-xsl | cut -d ' ' -f 2 | cut -d '-' -f 1`/xhtml/chunk.xsl File.xml<br />
<br />
==Automating==<br />
You can add these to <code>~/.bashrc</code>(or similar shell startup file):<br />
<pre><br />
alias doc2html1="xsltproc /usr/share/xml/docbook/xhtml/docbook.xsl"<br />
alias doc2multihtml="xsltproc /usr/share/xml/docbook/xhtml/chunk.xsl"<br />
alias docvalidate="xmllint --valid --noout"<br />
</pre></div>Vamp898https://wiki.archlinux.org/index.php?title=DocBook&diff=113301DocBook2010-08-04T08:28:13Z<p>Vamp898: /* Converting into XHTML */</p>
<hr />
<div>[[Category:Office (English)]]<br />
{{Stub}}<br />
<br />
We will assume that our docbook document is in <code>File.xml</code><br />
<br />
==Setting up Docbook in Arch==<br />
To set up docbook running on arch:<br />
$ pacman -S docbook-xml docbook-xsl libxslt libxml2<br />
<br />
==Validating XML file==<br />
To validate the XML file use:<br />
$ xmllint --valid --noout File.xml<br />
<br />
This will generate no output if the file is proper XML. <br />
<br />
==Converting into XHTML==<br />
===Single file===<br />
To convert into a XHTML file (single file) use:<br />
xsltproc /usr/share/xml/docbook/xsl-stylesheets-1.75.2/xhtml/docbook.xsl File.xml > Output.html<br />
===Segmented===<br />
To convert into a a segmented XHTML file (each section in its own file) use:<br />
xsltproc /usr/share/xml/docbook/xsl-stylesheets-1.75.2/xhtml/chunk.xsl File.xml<br />
<br />
==Automating==<br />
You can add these to <code>~/.bashrc</code>(or similar shell startup file):<br />
<pre><br />
alias doc2html1="xsltproc /usr/share/xml/docbook/xhtml/docbook.xsl"<br />
alias doc2multihtml="xsltproc /usr/share/xml/docbook/xhtml/chunk.xsl"<br />
alias docvalidate="xmllint --valid --noout"<br />
</pre></div>Vamp898