https://wiki.archlinux.org/api.php?action=feedcontributions&user=Nous&feedformat=atomArchWiki - User contributions [en]2024-03-29T09:56:43ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Unofficial_user_repositories&diff=439519Unofficial user repositories2016-07-01T20:09:35Z<p>Nous: /* openrc-eudev */ added SigLevel directive</p>
<hr />
<div>[[Category:Package management]]<br />
[[ja:非公式ユーザーリポジトリ]]<br />
[[zh-CN:Unofficial user repositories]]<br />
{{Expansion|Please fill in the missing information about repository maintainers.}}<br />
<br />
{{Related articles start}}<br />
{{Related|pacman-key}}<br />
{{Related|Official repositories}}<br />
{{Related articles end}}<br />
<br />
This article lists binary repositories freely created and shared by the community, often providing pre-built versions of PKGBUILDS found in the [[AUR]].<br />
<br />
{{Warning|Neither the official Arch Linux Developers nor the Trusted Users perform tests of any sort to verify the contents of these repositories; it is up to each user to decide whether to trust their maintainers, and take full responsibility for whatever their decision brings.}}<br />
<br />
In order to use these repositories, you will have to add them to {{ic|/etc/pacman.conf}}, as explained in [[pacman#Repositories and mirrors]]. If a repository is signed, you will have to obtain and locally sign the associated key, as explained in [[Pacman-key#Adding unofficial keys]].<br />
<br />
If you want to create your own custom repository, follow [[pacman tips#Custom local repository]].<br />
<br />
{{Tip|To get a list of all servers listed in this page: {{bc|<nowiki>curl 'https://wiki.archlinux.org/index.php/Unofficial_user_repositories' | grep 'Server = ' | sed "s/\$arch/$(uname -m)/g" | cut -f 3 -d' '</nowiki>}}<br />
<br />
For your convenience you can, for example, open them all in a web browser to inspect the contents of their repositories.<br />
}}<br />
<br />
== Adding your repository to this page ==<br />
<br />
If you have your own repository, please add it to this page, so that all the other users will know where to find your packages. Please keep the following rules when adding new repositories:<br />
<br />
* Keep the lists in alphabetical order.<br />
* Include some information about the maintainer: include at least a (nick)name and some form of contact information (web site, email address, user page on ArchWiki or the forums, etc.).<br />
* If the repository is of the ''signed'' variety, please include a key-id, possibly using it as the anchor for a link to its keyserver; if the key is not on a keyserver, include a link to the key file.<br />
* Include some short description (e.g. the category of packages provided in the repository).<br />
* If there is a page (either on ArchWiki or external) containing more information about the repository, include a link to it.<br />
* If possible, avoid using comments in code blocks. The formatted description is much more readable. Users who want some comments in their {{ic|pacman.conf}} can easily create it on their own.<br />
<br />
== Any ==<br />
<br />
"Any" repositories are architecture-independent. In other words, they can be used on both i686 and x86_64 systems.<br />
<br />
=== Signed ===<br />
<br />
==== infinality-bundle-fonts ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle-fonts repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-fonts]<br />
Server = http://bohoomil.com/repo/fonts<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/any<br />
# Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== pkgbuilder ====<br />
<br />
* '''Maintainer:''' [https://chriswarrick.com/ Chris Warrick]<br />
* '''Description:''' A repository for PKGBUILDer, a Python AUR helper.<br />
* '''Upstream page:''' https://github.com/Kwpolska/pkgbuilder<br />
* '''Key-ID:''' 5EAAEA16<br />
<br />
{{bc|<nowiki><br />
[pkgbuilder]<br />
Server = https://pkgbuilder-repo.chriswarrick.com/<br />
</nowiki>}}<br />
<br />
==== xyne-any ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for "any" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{Note|Use this repository only if there is no matching {{ic|[xyne-*]}} repository for your architecture.}}<br />
<br />
{{bc|<nowiki><br />
[xyne-any]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
==== youtube-dl ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=94876 Case_Of]<br />
* '''Description:''' A repository for latest release of youtube-dl package.<br />
* '''Key-ID:''' 9F213FB2<br />
<br />
{{bc|<nowiki><br />
[youtube-dl]<br />
Server = http://yt-dl.tk<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== archlinuxgr-any ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' The Hellenic (Greek) unofficial Arch Linux repository with many interesting packages.<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-any]<br />
Server = http://archlinuxgr.tiven.org/archlinux/any<br />
</nowiki>}}<br />
<br />
== Both i686 and x86_64 ==<br />
<br />
Repositories with both i686 and x86_64 versions. The {{ic|$arch}} variable will be set automatically by pacman.<br />
<br />
=== Signed ===<br />
<br />
==== arcanisrepo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#arcanis arcanis]<br />
* '''Description:''' A repository with some AUR packages including packages from VCS<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[arcanisrepo]<br />
Server = ftp://repo.arcanis.me/repo/$arch<br />
</nowiki>}}<br />
<br />
(It is also available via HTTP with the same url.)<br />
<br />
==== arch-openrc ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=84785 Chris Cromer]<br />
* '''Description:''' Packages to install and maintain OpenRC with sysvinit for Arch Linux.<br />
* '''Upstream sources page:''' https://github.com/cromerc/packages-openrc<br />
* '''Upstream packages/ISO page:''' https://sourceforge.net/projects/archopenrc/files/arch-openrc/<br />
* '''Key-ID:''' 97BEEEC2<br />
<br />
{{bc|<nowiki><br />
[arch-openrc]<br />
Server = http://downloads.sourceforge.net/project/archopenrc/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxcn ====<br />
<br />
* '''Maintainers:''' [https://plus.google.com/+PhoenixNemo/ Phoenix Nemo (phoenixlzx)], Felix Yan (felixonmars, TU), [https://twitter.com/lilydjwg lilydjwg], and others<br />
* '''Description:''' Packages by the Chinese Arch Linux community (mostly signed)<br />
* '''Git Repo:''' https://github.com/archlinuxcn/repo<br />
* '''Mirrors:''' https://github.com/archlinuxcn/mirrorlist-repo (Mostly for users in mainland China)<br />
* '''Key-ID:''' Once the repo is added, ''archlinuxcn-keyring'' package must be installed before any other so you do not get errors about PGP signatures.<br />
<br />
{{bc|<nowiki><br />
[archlinuxcn]<br />
SigLevel = Optional TrustedOnly<br />
Server = http://repo.archlinuxcn.org/$arch<br />
## or use a CDN (beta)<br />
#Server = https://cdn.repo.archlinuxcn.org/$arch<br />
</nowiki>}}<br />
<br />
==== blackeagle-pre-community ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#idevolder Ike Devolder]<br />
* '''Description:''' testing of the by me maintaned packages before moving to ''community'' repository<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[blackeagle-pre-community]<br />
Server = http://repo.herecura.be/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst]<br />
Server = http://catalyst.wirephire.com/repo/catalyst/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst-hd234k ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst-hd234k]<br />
Server = http://catalyst.wirephire.com/repo/catalyst-hd234k/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst-hd234k/$arch<br />
</nowiki>}}<br />
<br />
==== city ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bgyorgy Balló György]<br />
* '''Description:''' Experimental/unpopular packages.<br />
* '''Upstream page:''' http://pkgbuild.com/~bgyorgy/city.html<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[city]<br />
Server = http://pkgbuild.com/~bgyorgy/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== haskell-core ====<br />
<br />
See [[ArchHaskell#haskell-core]].<br />
<br />
==== haskell-happstack ====<br />
<br />
See [[ArchHaskell#haskell-happstack]].<br />
<br />
==== haskell-web ====<br />
<br />
See [[ArchHaskell#haskell-web]].<br />
<br />
==== herecura ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#idevolder Ike Devolder]<br />
* '''Description:''' additional packages not found in the ''community'' repository<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[herecura]<br />
Server = http://repo.herecura.be/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== infinality-bundle ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle main repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle]<br />
Server = http://bohoomil.com/repo/$arch<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== llvm-svn ====<br />
<br />
* '''Maintainer:''' [[User:Kerberizer|Luchesar V. ILIEV (kerberizer)]]<br />
* '''Description:''' [https://aur.archlinux.org/pkgbase/llvm-svn llvm-svn] and [https://aur.archlinux.org/pkgbase/lib32-llvm-svn lib32-llvm-svn] from AUR: the LLVM compiler infrastructure, the Clang frontend, and the tools associated with it<br />
* '''Key-ID:''' [https://sks-keyservers.net/pks/lookup?op=vindex&search=0x76563F75679E4525&fingerprint=on&exact=on 0x76563F75679E4525], fingerprint {{ic|D16C F22D 27D1 091A 841C 4BE9 7656 3F75 679E 4525}}<br />
<br />
{{bc|<nowiki><br />
[llvm-svn]<br />
Server = http://repos.uni-plovdiv.net/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== nuvolaplayer ====<br />
<br />
* '''Maintainer:''' [https://www.celti.name/ Patrick Burroughs (Celti) <celti@celti.name>]<br />
* '''Description:''' Packages for the [https://tiliado.eu/nuvolaplayer Nuvola Player] cloud music player and its various integrations. Includes both stable and git versions. The [https://repo.celti.name/nuvolaplayer/ build scripts] used to manage the repository (using makepkg-template, makechrootpkg, and repose) are available. Both the packages and the database are signed.<br />
* '''Key-ID:''' {{ic|1=[https://sks-keyservers.net/pks/lookup?op=vindex&search=0x123C3F8B058A707F86643316FA682BD8910CF4EA 123C 3F8B 058A 707F 8664 3316 FA68 2BD8 910C F4EA]}}<br />
<br />
{{bc|<nowiki><br />
[nuvolaplayer]<br />
Server = https://repo.celti.name/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== metalgamer ====<br />
<br />
* '''Maintainer:''' [http://metalgamer.eu/ metalgamer]<br />
* '''Description:''' Packages I use and/or maintain on the AUR.<br />
* '''Key ID:''' F55313FB<br />
<br />
{{bc|<nowiki><br />
[metalgamer]<br />
Server = http://repo.metalgamer.eu/$arch<br />
</nowiki>}}<br />
<br />
==== miffe ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=4059 miffe]<br />
* '''Description:''' AUR packages maintained by miffe, e.g. linux-mainline<br />
* '''Key ID:''' 313F5ABD<br />
<br />
{{bc|<nowiki><br />
[miffe]<br />
Server = http://arch.miffe.org/$arch/<br />
</nowiki>}}<br />
<br />
==== pipelight ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Pipelight and wine-compholio<br />
* '''Upstream page:''' [http://fds-team.de/ fds-team.de]<br />
* '''Key-ID:''' E49CC0415DC2D5CA<br />
* '''Keyfile:''' http://repos.fds-team.de/Release.key<br />
<br />
{{bc|<nowiki><br />
[pipelight]<br />
Server = http://repos.fds-team.de/stable/arch/$arch<br />
</nowiki>}}<br />
<br />
==== repo-ck ====<br />
<br />
* '''Maintainer:''' [[User:Graysky|graysky]]<br />
* '''Description:''' Kernel and modules with Brain Fuck Scheduler and all the goodies in the ck1 patch set.<br />
* '''Upstream page:''' [http://repo-ck.com repo-ck.com]<br />
* '''Wiki:''' [[repo-ck]]<br />
* '''Key-ID:''' 5EE46C4C<br />
<br />
{{bc|<nowiki><br />
[repo-ck]<br />
Server = http://repo-ck.com/$arch<br />
</nowiki>}}<br />
<br />
==== seblu ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#seblu Sébastien Luttringer]<br />
* '''Description:''' All seblu useful pre-built packages, some homemade (virtualbox-ext-oracle, linux-seblu-meta, bedup).<br />
* '''Key-ID:''' Not required, as maintainer is a Developer<br />
<br />
{{bc|<nowiki><br />
[seblu]<br />
Server = http://seblu.net/a/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== seiichiro ====<br />
<br />
* '''Maintainer:''' [https://www.seiichiro0185.org Stefan Brand (seiichiro0185)]<br />
* '''Description:''' AUR-packages I use frequently<br />
* '''Key-ID:''' 805517CC<br />
<br />
{{bc|<nowiki><br />
[seiichiro]<br />
Server = http://www.seiichiro0185.org/repo/$arch<br />
</nowiki>}}<br />
<br />
==== sergej-repo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#spupykin Sergej Pupykin]<br />
* '''Description:''' psi-plus, owncloud-git, ziproxy, android, MySQL, and other stuff. Some packages also available for armv7h.<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[sergej-repo]<br />
Server = http://repo.p5n.pp.ru/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== tredaelli-systemd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#tredaelli Timothy Redaelli]<br />
* '''Description:''' systemd rebuilt with unofficial OpenVZ patch (kernel < 2.6.32-042stab111.1)<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|{{ic|[tredaelli-systemd]}} must be put before {{ic|[core]}} in {{ic|/etc/pacman.conf}}}}<br />
<br />
{{bc|<nowiki><br />
[tredaelli-systemd]<br />
Server = http://pkgbuild.com/~tredaelli/repo/systemd/$arch<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== arch-deepin ====<br />
<br />
* '''Maintainer:''' [https://build.opensuse.org/project/show/home:metakcahura metak], [https://github.com/fasheng fasheng]<br />
* '''Description:''' Porting software from Linux Deepin to Archlinux.<br />
* '''Upstream page:''' https://github.com/fasheng/arch-deepin<br />
<br />
{{bc|<nowiki><br />
[home_metakcahura_arch-deepin_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
#Server = http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== archaudio ====<br />
<br />
* '''Maintainer:''' [[User:Schivmeister|Ray Rashif]], [https://aur.archlinux.org/account/jhernberg Joakim Hernberg]<br />
* '''Description:''' Pro-audio packages<br />
<br />
{{bc|<nowiki><br />
[archaudio-production]<br />
Server = http://repos.archaudio.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxfr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
* '''Upstream page:''' http://afur.archlinux.fr<br />
<br />
{{bc|<nowiki><br />
[archlinuxfr]<br />
Server = http://repo.archlinux.fr/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgis ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Maintainers needed - low bandwidth<br />
<br />
{{bc|<nowiki><br />
[archlinuxgis]<br />
Server = http://archlinuxgis.no-ip.org/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr]<br />
Server = http://archlinuxgr.tiven.org/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr-kde4 ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' KDE4 packages (plasmoids, themes etc) provided by the Hellenic (Greek) Arch Linux community<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-kde4]<br />
Server = http://archlinuxgr.tiven.org/archlinux-kde4/$arch<br />
</nowiki>}}<br />
<br />
==== arsch ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' From users of orgizm.net<br />
<br />
{{bc|<nowiki><br />
[arsch]<br />
Server = http://arsch.orgizm.net/$arch<br />
</nowiki>}}<br />
<br />
==== cinnamon ====<br />
<br />
* '''Maintainer:''' [https://github.com/jnbek jnbek]<br />
* '''Description:''' Stable and actively developed Cinnamon packages (Applets, Themes, Extensions), plus others (Hotot, qBitTorrent, GTK themes, Perl modules, and more).<br />
<br />
{{bc|<nowiki><br />
[cinnamon]<br />
Server = http://archlinux.zoelife4u.org/cinnamon/$arch<br />
</nowiki>}}<br />
<br />
==== ede ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Equinox Desktop Environment repository<br />
<br />
{{bc|<nowiki><br />
[ede]<br />
Server = http://ede.elderlinux.org/repos/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== heftig ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#heftig Jan Steffens]<br />
* '''Description:''' Includes linux-zen and firefox-developer-edition<br />
* '''Upstream page:''' https://bbs.archlinux.org/viewtopic.php?id=117157<br />
<br />
{{bc|<nowiki><br />
[heftig]<br />
Server = http://pkgbuild.com/~heftig/repo/$arch<br />
</nowiki>}}<br />
<br />
==== home_Minerva_W_Science_Arch_Extra ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' [[OpenFOAM]] packages.<br />
<br />
{{bc|<nowiki><br />
[home_Minerva_W_Science_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/Minerva_W:/Science/Arch_Extra/$arch <br />
</nowiki>}}<br />
<br />
==== mesa-git ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#lcarlier Laurent Carlier]<br />
* '''Description:''' Mesa git builds for the ''testing'' and ''multilib-testing'' repositories<br />
<br />
{{bc|<nowiki><br />
[mesa-git]<br />
Server = http://pkgbuild.com/~lcarlier/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== noware ====<br />
<br />
* '''Maintainer:''' Alexandru Thirtheu (alex_giusi_tiri2@yahoo.com) ([https://bbs.archlinux.org/profile.php?id=65036 Forums]) ([[User:AGT|Wiki]]) ([http://direct.noware.systems.:2 Web Site])<br />
* '''Description:''' Software which I prefer being present in a repository, than being compiled each time. It eases software maintenance, I find. Almost anything goes.<br />
<br />
{{bc|<nowiki><br />
[noware]<br />
Server = http://direct.$repo.systems.:2/repository/arch/$arch<br />
</nowiki>}}<br />
<br />
==== openrc-eudev ====<br />
* '''Maintainer:''' [[User:Nous|nous]]<br />
* '''Description:''' OpenRC init system, initscripts, eudev and nosystemd packages from the AUR.<br />
* '''Upstream page:''' https://sourceforge.net/projects/archopenrc<br />
* '''Upstream sources:''' https://github.com/cromerc/arch-openrc, https://github.com/cromerc/arch-nosystemd and the AUR<br />
<br />
{{bc|<nowiki><br />
[openrc-eudev]<br />
SigLevel = PackageOptional<br />
Server=http://downloads.sourceforge.net/project/archopenrc/$repo/$arch<br />
Server=ftp://ftp.heanet.ie/mirrors/sourceforge/a/ar/archopenrc/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== oracle ====<br />
<br />
* '''Maintainer:''' [[User:Malvineous|Malvineous]]<br />
* '''Description:''' Oracle database client<br />
<br />
{{Warning|By adding this you are agreeing to the Oracle license at http://www.oracle.com/technetwork/licenses/instant-client-lic-152016.html}}<br />
<br />
{{bc|<nowiki><br />
[oracle]<br />
Server = http://linux.shikadi.net/arch/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== pantheon ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Repository containing Pantheon-related packages<br />
<br />
{{bc|<nowiki><br />
[pantheon]<br />
Server = http://pkgbuild.com/~alucryd/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== paulburton-fitbitd ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains fitbitd for synchronizing FitBit trackers<br />
<br />
{{bc|<nowiki><br />
[paulburton-fitbitd]<br />
Server = http://www.paulburton.eu/arch/fitbitd/$arch<br />
</nowiki>}}<br />
<br />
==== pietma ====<br />
<br />
* '''Maintainer:''' MartiMcFly <martimcfly@autorisation.de><br />
* '''Description:''' Arch User Repository packages [https://aur.archlinux.org/packages/?K=martimcfly&SeB=m I create or maintain.].<br />
* '''Upstream page:''' http://pietma.com/tag/aur/<br />
<br />
{{bc|<nowiki><br />
[pietma]<br />
SigLevel = Optional TrustAll<br />
Server = http://repository.pietma.com/nexus/content/repositories/archlinux/$arch/$repo<br />
</nowiki>}}<br />
<br />
==== pfkernel ====<br />
<br />
* '''Maintainer:''' [[User:Nous|nous]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf[-cpu] and linux-pf-lts[-cpu]. Also, openrc and initscripts-openrc.<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/11734958/x86_64/index.html or start at http://bit.do/linux-pf<br />
<br />
{{bc|<nowiki><br />
[pfkernel]<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
</nowiki>}}<br />
<br />
==== suckless ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' suckless.org packages<br />
<br />
{{bc|<nowiki><br />
[suckless]<br />
Server = http://dl.suckless.org/arch/$arch<br />
</nowiki>}}<br />
<br />
==== trinity ====<br />
<br />
* '''Maintainer:''' [[User:Mmanley|Michael Manley]]<br />
* '''Description:''' [[Trinity]] Desktop Environment<br />
<br />
{{bc|<nowiki><br />
[trinity]<br />
Server = http://repo.nasutek.com/arch/contrib/trinity/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch-Extra ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] extra packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch-Extra]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== home_tarakbumba_archlinux_Arch_Extra_standard ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains a few pre-built AUR packages (zemberek, etc.)<br />
<br />
{{bc|<nowiki><br />
[home_tarakbumba_archlinux_Arch_Extra_standard]<br />
Server = http://download.opensuse.org/repositories/home:/tarakbumba:/archlinux/Arch_Extra_standard/$arch<br />
</nowiki>}}<br />
<br />
==== QOwnNotes ====<br />
<br />
* '''Maintainer:''' http://www.qownnotes.org<br />
* '''Description:''' QOwnNotes is a open source notepad and todo list manager with markdown support and [[ownCloud]] integration.<br />
<br />
{{bc|<nowiki><br />
[home_pbek_QOwnNotes_Arch_Extra]<br />
SigLevel = Optional TrustAll<br />
Server = http://download.opensuse.org/repositories/home:/pbek:/QOwnNotes/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
== i686 only ==<br />
<br />
=== Signed ===<br />
<br />
==== eee-ck ====<br />
<br />
* '''Maintainer:''' Gruppenpest<br />
* '''Description:''' Kernel and modules optimized for Asus Eee PC 701, with -ck patchset.<br />
* '''Key-ID:''' 27D4A19A<br />
* '''Keyfile''' http://zembla.duckdns.org/repo/gruppenpest.gpg<br />
<br />
{{bc|<nowiki><br />
[eee-ck]<br />
Server = http://zembla.duckdns.org/repo<br />
</nowiki>}}<br />
<br />
==== xyne-i686 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "i686" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-i686]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' each program I'm using on x86_64 is compiled for i686 too<br />
* '''Upstream page:''' http://andrwe.org/linux/repository<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/i686<br />
</nowiki>}}<br />
<br />
==== kpiche ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Stable OpenSync packages.<br />
<br />
{{bc|<nowiki><br />
[kpiche]<br />
Server = http://kpiche.archlinux.ca/repo<br />
</nowiki>}}<br />
<br />
==== kernel26-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 2.6.39<br />
<br />
{{bc|<nowiki><br />
[kernel26-pae]<br />
Server = http://kernel26-pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== linux-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 3.0<br />
<br />
{{bc|<nowiki><br />
[linux-pae]<br />
Server = http://pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== rfad ====<br />
<br />
* '''Maintainer:''' requiem [at] archlinux.us<br />
* '''Description:''' Repository made by haxit<br />
<br />
{{bc|<nowiki><br />
[rfad]<br />
Server = http://web.ncf.ca/ey723/archlinux/repo/<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/i686<br />
</nowiki>}}<br />
<br />
== x86_64 only ==<br />
<br />
=== Signed ===<br />
<br />
==== apathism ====<br />
<br />
* '''Maintainer:''' Ivan Koryabkin ([https://aur.archlinux.org/account/apathism/ apathism])<br />
* '''Upstream page:''' https://apathism.net/<br />
* '''Description:''' Some AUR packages like {{AUR|psi-plus-git}} (with qt5 enabled).<br />
* '''Key-ID:''' 3E37398D<br />
* '''Keyfile:''' http://apathism.net/archlinux/apathism.key<br />
<br />
{{bc|<nowiki><br />
[apathism]<br />
Server = https://apathism.net/archlinux/<br />
</nowiki>}}<br />
<br />
==== archzfs ====<br />
<br />
* '''Maintainer:''' [http://archzfs.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for ZFS on Arch Linux.<br />
* '''Upstream page:''' https://github.com/archzfs/archzfs<br />
* '''Key-ID:''' 5E1ABF240EE7A126<br />
<br />
{{bc|<nowiki><br />
[archzfs]<br />
Server = http://archzfs.com/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== ashleyis ====<br />
<br />
* '''Maintainer:''' Ashley Towns ([https://aur.archlinux.org/account/ashleyis/ ashleyis])<br />
* '''Description:''' Debug versions of SDL, chipmunk, libtmx and other misc game libraries. also swift-lang and some other AUR packages <br />
* '''Key-ID:''' B1A4D311<br />
<br />
{{bc|<nowiki><br />
[ashleyis]<br />
Server = http://arch.ashleytowns.id.au/repo/$arch<br />
</nowiki>}}<br />
<br />
==== atom ====<br />
<br />
* '''Maintainer:''' Nicola Squartini ([https://github.com/tensor5 tensor5])<br />
* '''Upstream page:''' https://github.com/tensor5/arch-atom<br />
* '''Description:''' Atom text editor and Electron<br />
* '''Key-ID:''' B0544167<br />
<br />
{{bc|<nowiki><br />
[atom]<br />
Server = http://noaxiom.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== bioinformatics ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some software tools for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics]<br />
Server = http://decryptedepsilon.bl.ee/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== boyska64 ====<br />
<br />
* '''Maintainer:''' boyska<br />
* '''Description:''' Personal repository: cryptography, sdr, mail handling and misc<br />
* '''Key-ID:''' 0x7395DCAE58289CA9<br />
<br />
{{bc|<nowiki><br />
[boyska64]<br />
Server = http://boyska.degenerazione.xyz/archrepo<br />
</nowiki>}}<br />
<br />
==== coderkun-aur ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with random software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://www.coderkun.de/arch<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [https://www.coderkun.de/coderkun.asc https://www.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-audio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with audio-related (realtime kernels, lv2-plugins, …) software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://www.coderkun.de/arch<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [https://www.coderkun.de/coderkun.asc https://www.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-audio]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== eatabrick ====<br />
<br />
* '''Maintainer:''' bentglasstube<br />
* '''Description:''' Packages for software written by (and a few just compiled by) bentglasstube.<br />
<br />
{{bc|<nowiki><br />
[eatabrick]<br />
SigLevel = Required<br />
Server = http://repo.eatabrick.org/$arch<br />
</nowiki>}}<br />
<br />
==== freifunk-rheinland ====<br />
<br />
* '''Maintainer:''' nomaster<br />
* '''Description:''' Packages for the Freifunk project: batman-adv, batctl, fastd and dependencies.<br />
<br />
{{bc|<nowiki><br />
[freifunk-rheinland]<br />
Server = http://mirror.fluxent.de/archlinux-custom/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== holo ====<br />
<br />
* '''Maintainer:''' Stefan Majewsky <holo-pacman@posteo.de> (please prefer to report issues at [https://github.com/majewsky/holo-pacman-repo/issues Github])<br />
* '''Description:''' Packages for [https://holocm.org Holo configuration management], including compatible plugins and tools.<br />
* '''Upstream page:''' https://github.com/majewsky/holo-pacman-repo<br />
* '''Package list:''' https://repo.holocm.org/archlinux/x86_64<br />
* '''Key-ID:''' 0xF7A9C9DC4631BD1A<br />
<br />
{{bc|<nowiki><br />
[holo]<br />
Server = https://repo.holocm.org/archlinux/x86_64<br />
</nowiki>}}<br />
<br />
==== Linux-pf ====<br />
<br />
{{Accuracy|Signed repositories should not use {{ic|1=SigLevel = Optional}} (by definition).}}<br />
<br />
* '''Maintainer:''' [[User:Thaodan|Thaodan]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf, just like {{AUR|linux-pf}} from the [[AUR]] but additionally optimized for intel CPUs Sandy Bridge, Ivy Bridge, Haswell and generic of course, and some extra packages<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox).<br />
<br />
{{bc|<nowiki><br />
[Linux-pf]<br />
Server = https://dl.dropboxusercontent.com/u/172590784/Linux-pf/x86_64/<br />
SigLevel = Optional<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-multilib ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle multilib repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-multilib]<br />
Server = http://bohoomil.com/repo/multilib/$arch<br />
</nowiki>}}<br />
<br />
==== kc9ydn ====<br />
<br />
* '''Maintainer:''' [http://kc9ydn.us KC9YDN]<br />
* '''Description:''' Consists mostly of amateur radio related apps<br />
* '''Key-ID:''' 7DA25A0F<br />
<br />
{{bc|<nowiki><br />
[kc9ydn]<br />
Server = http://kc9ydn.us/repo/<br />
</nowiki>}}<br />
<br />
==== linux-lts-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current ArchLinux LTS kernel with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/x86_64/index.html or start at http://tiny.cc/linux-lts-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch)<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x/x86_64/index.html or start at http://tiny.cc/linux-lts31x<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch) with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/x86_64/index.html or start at http://tiny.cc/linux-lts31x-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-ck-pax ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current Arch Kernel with the CK and PaX security patchsets<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/x86_64/index.html or start at http://tiny.cc/linux-ck-pax<br />
<br />
{{bc|<nowiki><br />
[linux-ck-pax]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/$arch<br />
</nowiki>}}<br />
<br />
==== linux-kalterfx ====<br />
<br />
* '''Maintainer''': Anna Ivanova ([https://aur.archlinux.org/account/kalterfive kalterfive])<br />
* '''Upstream page''': https://kalterfive.github.io/linux-kalterfx/about.html<br />
* '''Description''': A stable kernel with [[#Linux-pf|pf-kernel]], [[reiser4]] and smack<br />
* '''Key-ID''': A0C04F15<br />
* '''Keyfile''': https://keybase.io/kalterfive/key.asc<br />
<br />
{{bc|<nowiki><br />
[linux-kalterfx]<br />
Server = http://deadsoftware.ru/files/linux-kalterfx/repo/$arch<br />
</nowiki>}}<br />
<br />
==== linux-tresor ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Arch Current and LTS kernels with TRESOR<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-tresor/x86_64/index.html or start at http://tiny.cc/linux-tresor<br />
<br />
{{bc|<nowiki><br />
[linux-tresor]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-tresor/$arch<br />
</nowiki>}}<br />
<br />
==== nullptr_t ====<br />
<br />
* '''Maintainers:''' nullptr_t, <br />
* '''Description:''' Cherry-picked non-properitary packages and admin tools from AUR (e.g. [[plymouth]], nemo-extensions and a few more)<br />
* '''Key-ID:''' B4767A17CEC5B4E9<br />
<br />
{{bc|<nowiki><br />
[nullptr_t]<br />
Server = https://archlinux.0ptr.de/mirrors/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== markzz ====<br />
<br />
* '''Maintainer:''' [[User:Markzz|Mark Weiman (markzz)]]<br />
* '''Description:''' Packages that markzz maintains or uses on the AUR; this includes Linux with the vfio patchset ({{AUR|linux-vfio}} and {{AUR|linux-vfio-lts}}), and packages to maintain a Debian package repository.<br />
* '''Sources:''' http://git.markzz.net/markzz/repositories/markzz.git/tree<br />
* '''Key ID:''' 3CADDFDD<br />
<br />
{{Note|If you want to add the key by installing the ''markzz-keyring'' package, temporarily add {{ic|1=SigLevel = Never}} into the repository section.}}<br />
<br />
{{bc|<nowiki><br />
[markzz]<br />
Server = http://repo.markzz.com/arch/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== qt-debug ====<br />
<br />
* '''Maintainer:''' [http://blog.the-compiler.org/?page_id=36 The Compiler]<br />
* '''Description:''' Qt/PyQt builds with debug symbols<br />
* '''Upstream page:''' https://github.com/The-Compiler/qt-debug-pkgbuild<br />
* '''Key-ID:''' D6A1C70FE80A0C82<br />
<br />
{{bc|<nowiki><br />
[qt-debug]<br />
Server = http://qutebrowser.org/qt-debug/$arch<br />
</nowiki>}}<br />
<br />
==== quarry ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#anatolik anatolik]<br />
* '''Description:''' Arch binary repository for [http://rubygems.org/ Rubygems] packages. See [https://bbs.archlinux.org/viewtopic.php?id=182729 forum announcement] for more information.<br />
* '''Sources:''' https://github.com/anatol/quarry<br />
* '''Key-ID:''' Not needed, as maintainer is a developer<br />
<br />
{{bc|<nowiki><br />
[quarry]<br />
Server = http://pkgbuild.com/~anatolik/quarry/x86_64/<br />
</nowiki>}}<br />
<br />
==== rstudio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/unikum/ Artem Klevtsov]<br />
* '''Description:''' Rstudio IDE package (git version) and depends.<br />
* '''Key-ID:''' 1CB48DD4<br />
<br />
{{bc|<nowiki><br />
[rstudio]<br />
Server = http://repo.psylab.info/archlinux/x86_64/<br />
</nowiki>}}<br />
<br />
==== siosm-aur ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages also available in the Arch User Repository, sometimes with minor fixes<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-aur]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== subtitlecomposer ====<br />
<br />
* '''Maintainer:''' Mladen Milinkovic (maxrd2)<br />
* '''Description:''' Subtitle Composer stable and nightly builds<br />
* '''Upstream page:''' https://github.com/maxrd2/subtitlecomposer<br />
* '''Key-ID:''' EF9D9B26<br />
<br />
{{bc|<nowiki><br />
[subtitlecomposer]<br />
Server = http://smoothware.net/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== xyne-x86_64 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "x86_64" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-x86_64]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== alucryd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages Maxime Gauduin maintains (or not) in the AUR.<br />
<br />
{{bc|<nowiki><br />
[alucryd]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== alucryd-multilib ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages needed to run Steam without its runtime environment.<br />
<br />
{{bc|<nowiki><br />
[alucryd-multilib]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' contains programs I'm using on many systems<br />
* '''Upstream page:''' http://andrwe.dyndns.org/doku.php/blog/repository {{Dead link|2013|11|30}}<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/x86_64<br />
</nowiki>}}<br />
<br />
==== archstudio ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Audio and Music Packages optimized for Intel Core i3, i5, and i7.<br />
* '''Upstream page:''' http://www.xsounds.org/~archstudio<br />
<br />
{{bc|<nowiki><br />
[archstudio]<br />
Server = http://www.xsounds.org/~archstudio/x86_64<br />
</nowiki>}}<br />
<br />
==== brtln ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bpiotrowski Bartłomiej Piotrowski]<br />
* '''Description:''' Some VCS packages.<br />
<br />
{{bc|<nowiki><br />
[brtln]<br />
Server = http://pkgbuild.com/~barthalion/brtln/$arch/<br />
</nowiki>}}<br />
<br />
==== jkanetwork ====<br />
<br />
* '''Maintainer:''' kprkpr <kevin01010 at gmail dot com><br />
* '''Maintainer:''' Joselucross <jlgarrido97 at gmail dot com><br />
* '''Description:''' Packages of AUR like pimagizer,stepmania,yaourt,linux-mainline,wps-office,grub-customizer,some IDE.. Open for all that wants to contribute<br />
* '''Upstream page:''' http://repo.jkanetwork.com/<br />
<br />
{{bc|<nowiki><br />
[jkanetwork]<br />
Server = http://repo.jkanetwork.com/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== mazdlc ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Various packages maintained by maz-1 (mainly Qt5-based packages and multimedia-related packages )<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mazdlc-deadbeef-plugins ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Plugins for the feature-rich music player DeaDBeeF.<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_deadbeef-plugins_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc:/deadbeef-plugins/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mazdlc-kde-frameworks-5 ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Unstable packages based on kde frameworks 5.<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_kde-frameworks-5_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc:/kde-frameworks-5/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mikroskeem ====<br />
<br />
* '''Maintainer:''' mikroskeem <mikroskeem@mikroskeem.eu><br />
* '''Description:''' Openarena, i3 wm, and neovim-related packages<br />
<br />
{{bc|<nowiki><br />
[mikroskeem]<br />
Server = https://nightsnack.cf/~mark/arch-pkgs<br />
</nowiki>}}<br />
<br />
==== mingw-w64 ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/ant32 Philip] and [https://aur.archlinux.org/account/nic96 Jeromy] Reimer<br />
* '''Description:''' Almost all mingw-w64 packages in the AUR.<br />
<br />
{{bc|<nowiki><br />
[mingw-w64]<br />
Server = http://downloads.sourceforge.net/project/mingw-w64-archlinux/$arch<br />
#Server = http://amr.linuxd.org/archlinux/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== pnsft-pur ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Japanese input method packages Mozc (vanilla) and libkkc<br />
<br />
{{bc|<nowiki><br />
[pnsft-pur]<br />
Server = http://downloads.sourceforge.net/project/pnsft-aur/pur/x86_64<br />
</nowiki>}}<br />
<br />
==== rakudo ====<br />
<br />
* '''Maintainer:''' spider-mario <spidermario@free.fr><br />
* '''Description:''' Rakudo Perl6<br />
<br />
{{bc|<nowiki><br />
[rakudo]<br />
Server = https://spider-mario.quantic-telecom.net/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== rightlink ====<br />
<br />
* '''Maintainer:''' Chris Fordham <chris@fordham-nagy.id.au><br />
* '''Description:''' RightLink version 10 (RL10) is a new version of RightScale's server agent that connects servers managed through RightScale to the RightScale cloud management platform.<br />
<br />
{{bc|<nowiki><br />
[rightlink]<br />
Server = https://s3-ap-southeast-2.amazonaws.com/archlinux.rightscale.me/repo<br />
</nowiki>}}<br />
<br />
==== zrootfs ====<br />
<br />
* '''Maintainer:''' Isabell Cowan <isabellcowan@gmail.com><br />
* '''Description:''' For Haswell and Broadwell architecture processors with size in mind (out of date 2016-03-14).<br />
<br />
{{bc|<nowiki><br />
[zrootfs]<br />
Server = http://www.izzette.com/izzi/zrootfs-old<br />
</nowiki>}}<br />
<br />
== armv6h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== arch-fook-armv6h ====<br />
<br />
* '''Maintainer:''' Jaska Kivelä <jaska@kivela.net><br />
* '''Description:''' Stuff that I have compiled for my Raspberry PI. Including Enlightenment and home automation stuff.<br />
<br />
{{bc|<nowiki><br />
[arch-fook-armv6h]<br />
Server = http://kivela.net/jaska/arch-fook-armv6h<br />
</nowiki>}}<br />
<br />
== armv7h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== pietma ====<br />
<br />
* '''Maintainer:''' MartiMcFly <martimcfly@autorisation.de><br />
* '''Description:''' Arch User Repository packages [https://aur.archlinux.org/packages/?K=martimcfly&SeB=m I create or maintain.].<br />
* '''Upstream page:''' [http://pietma.com/tag/aur/ http://pietma.com/tag/aur/]<br />
{{bc|<nowiki><br />
[pietma]<br />
SigLevel = Optional TrustAll<br />
Server = http://repository.pietma.com/nexus/content/repositories/archlinux/$arch/$repo<br />
</nowiki>}}</div>Noushttps://wiki.archlinux.org/index.php?title=Unofficial_user_repositories&diff=439460Unofficial user repositories2016-06-30T22:44:07Z<p>Nous: /* Unsigned */ openrc-eudev repos</p>
<hr />
<div>[[Category:Package management]]<br />
[[ja:非公式ユーザーリポジトリ]]<br />
[[zh-CN:Unofficial user repositories]]<br />
{{Expansion|Please fill in the missing information about repository maintainers.}}<br />
<br />
{{Related articles start}}<br />
{{Related|pacman-key}}<br />
{{Related|Official repositories}}<br />
{{Related articles end}}<br />
<br />
This article lists binary repositories freely created and shared by the community, often providing pre-built versions of PKGBUILDS found in the [[AUR]].<br />
<br />
{{Warning|Neither the official Arch Linux Developers nor the Trusted Users perform tests of any sort to verify the contents of these repositories; it is up to each user to decide whether to trust their maintainers, and take full responsibility for whatever their decision brings.}}<br />
<br />
In order to use these repositories, you will have to add them to {{ic|/etc/pacman.conf}}, as explained in [[pacman#Repositories and mirrors]]. If a repository is signed, you will have to obtain and locally sign the associated key, as explained in [[Pacman-key#Adding unofficial keys]].<br />
<br />
If you want to create your own custom repository, follow [[pacman tips#Custom local repository]].<br />
<br />
{{Tip|To get a list of all servers listed in this page: {{bc|<nowiki>curl 'https://wiki.archlinux.org/index.php/Unofficial_user_repositories' | grep 'Server = ' | sed "s/\$arch/$(uname -m)/g" | cut -f 3 -d' '</nowiki>}}<br />
<br />
For your convenience you can, for example, open them all in a web browser to inspect the contents of their repositories.<br />
}}<br />
<br />
== Adding your repository to this page ==<br />
<br />
If you have your own repository, please add it to this page, so that all the other users will know where to find your packages. Please keep the following rules when adding new repositories:<br />
<br />
* Keep the lists in alphabetical order.<br />
* Include some information about the maintainer: include at least a (nick)name and some form of contact information (web site, email address, user page on ArchWiki or the forums, etc.).<br />
* If the repository is of the ''signed'' variety, please include a key-id, possibly using it as the anchor for a link to its keyserver; if the key is not on a keyserver, include a link to the key file.<br />
* Include some short description (e.g. the category of packages provided in the repository).<br />
* If there is a page (either on ArchWiki or external) containing more information about the repository, include a link to it.<br />
* If possible, avoid using comments in code blocks. The formatted description is much more readable. Users who want some comments in their {{ic|pacman.conf}} can easily create it on their own.<br />
<br />
== Any ==<br />
<br />
"Any" repositories are architecture-independent. In other words, they can be used on both i686 and x86_64 systems.<br />
<br />
=== Signed ===<br />
<br />
==== infinality-bundle-fonts ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle-fonts repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-fonts]<br />
Server = http://bohoomil.com/repo/fonts<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/any<br />
# Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== pkgbuilder ====<br />
<br />
* '''Maintainer:''' [https://chriswarrick.com/ Chris Warrick]<br />
* '''Description:''' A repository for PKGBUILDer, a Python AUR helper.<br />
* '''Upstream page:''' https://github.com/Kwpolska/pkgbuilder<br />
* '''Key-ID:''' 5EAAEA16<br />
<br />
{{bc|<nowiki><br />
[pkgbuilder]<br />
Server = https://pkgbuilder-repo.chriswarrick.com/<br />
</nowiki>}}<br />
<br />
==== xyne-any ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for "any" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{Note|Use this repository only if there is no matching {{ic|[xyne-*]}} repository for your architecture.}}<br />
<br />
{{bc|<nowiki><br />
[xyne-any]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
==== youtube-dl ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=94876 Case_Of]<br />
* '''Description:''' A repository for latest release of youtube-dl package.<br />
* '''Key-ID:''' 9F213FB2<br />
<br />
{{bc|<nowiki><br />
[youtube-dl]<br />
Server = http://yt-dl.tk<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== archlinuxgr-any ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' The Hellenic (Greek) unofficial Arch Linux repository with many interesting packages.<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-any]<br />
Server = http://archlinuxgr.tiven.org/archlinux/any<br />
</nowiki>}}<br />
<br />
== Both i686 and x86_64 ==<br />
<br />
Repositories with both i686 and x86_64 versions. The {{ic|$arch}} variable will be set automatically by pacman.<br />
<br />
=== Signed ===<br />
<br />
==== arcanisrepo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#arcanis arcanis]<br />
* '''Description:''' A repository with some AUR packages including packages from VCS<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[arcanisrepo]<br />
Server = ftp://repo.arcanis.me/repo/$arch<br />
</nowiki>}}<br />
<br />
(It is also available via HTTP with the same url.)<br />
<br />
==== arch-openrc ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=84785 Chris Cromer]<br />
* '''Description:''' Packages to install and maintain OpenRC with sysvinit for Arch Linux.<br />
* '''Upstream sources page:''' https://github.com/cromerc/packages-openrc<br />
* '''Upstream packages/ISO page:''' https://sourceforge.net/projects/archopenrc/files/arch-openrc/<br />
* '''Key-ID:''' 97BEEEC2<br />
<br />
{{bc|<nowiki><br />
[arch-openrc]<br />
Server = http://downloads.sourceforge.net/project/archopenrc/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxcn ====<br />
<br />
* '''Maintainers:''' [https://plus.google.com/+PhoenixNemo/ Phoenix Nemo (phoenixlzx)], Felix Yan (felixonmars, TU), [https://twitter.com/lilydjwg lilydjwg], and others<br />
* '''Description:''' Packages by the Chinese Arch Linux community (mostly signed)<br />
* '''Git Repo:''' https://github.com/archlinuxcn/repo<br />
* '''Mirrors:''' https://github.com/archlinuxcn/mirrorlist-repo (Mostly for users in mainland China)<br />
* '''Key-ID:''' Once the repo is added, ''archlinuxcn-keyring'' package must be installed before any other so you do not get errors about PGP signatures.<br />
<br />
{{bc|<nowiki><br />
[archlinuxcn]<br />
SigLevel = Optional TrustedOnly<br />
Server = http://repo.archlinuxcn.org/$arch<br />
## or use a CDN (beta)<br />
#Server = https://cdn.repo.archlinuxcn.org/$arch<br />
</nowiki>}}<br />
<br />
==== blackeagle-pre-community ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#idevolder Ike Devolder]<br />
* '''Description:''' testing of the by me maintaned packages before moving to ''community'' repository<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[blackeagle-pre-community]<br />
Server = http://repo.herecura.be/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst]<br />
Server = http://catalyst.wirephire.com/repo/catalyst/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst-hd234k ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst-hd234k]<br />
Server = http://catalyst.wirephire.com/repo/catalyst-hd234k/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst-hd234k/$arch<br />
</nowiki>}}<br />
<br />
==== city ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bgyorgy Balló György]<br />
* '''Description:''' Experimental/unpopular packages.<br />
* '''Upstream page:''' http://pkgbuild.com/~bgyorgy/city.html<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[city]<br />
Server = http://pkgbuild.com/~bgyorgy/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== haskell-core ====<br />
<br />
See [[ArchHaskell#haskell-core]].<br />
<br />
==== haskell-happstack ====<br />
<br />
See [[ArchHaskell#haskell-happstack]].<br />
<br />
==== haskell-web ====<br />
<br />
See [[ArchHaskell#haskell-web]].<br />
<br />
==== herecura ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#idevolder Ike Devolder]<br />
* '''Description:''' additional packages not found in the ''community'' repository<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[herecura]<br />
Server = http://repo.herecura.be/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== infinality-bundle ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle main repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle]<br />
Server = http://bohoomil.com/repo/$arch<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== llvm-svn ====<br />
<br />
* '''Maintainer:''' [[User:Kerberizer|Luchesar V. ILIEV (kerberizer)]]<br />
* '''Description:''' [https://aur.archlinux.org/pkgbase/llvm-svn llvm-svn] and [https://aur.archlinux.org/pkgbase/lib32-llvm-svn lib32-llvm-svn] from AUR: the LLVM compiler infrastructure, the Clang frontend, and the tools associated with it<br />
* '''Key-ID:''' [https://sks-keyservers.net/pks/lookup?op=vindex&search=0x76563F75679E4525&fingerprint=on&exact=on 0x76563F75679E4525], fingerprint {{ic|D16C F22D 27D1 091A 841C 4BE9 7656 3F75 679E 4525}}<br />
<br />
{{bc|<nowiki><br />
[llvm-svn]<br />
Server = http://repos.uni-plovdiv.net/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== nuvolaplayer ====<br />
<br />
* '''Maintainer:''' [https://www.celti.name/ Patrick Burroughs (Celti) <celti@celti.name>]<br />
* '''Description:''' Packages for the [https://tiliado.eu/nuvolaplayer Nuvola Player] cloud music player and its various integrations. Includes both stable and git versions. The [https://repo.celti.name/nuvolaplayer/ build scripts] used to manage the repository (using makepkg-template, makechrootpkg, and repose) are available. Both the packages and the database are signed.<br />
* '''Key-ID:''' {{ic|1=[https://sks-keyservers.net/pks/lookup?op=vindex&search=0x123C3F8B058A707F86643316FA682BD8910CF4EA 123C 3F8B 058A 707F 8664 3316 FA68 2BD8 910C F4EA]}}<br />
<br />
{{bc|<nowiki><br />
[nuvolaplayer]<br />
Server = https://repo.celti.name/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== metalgamer ====<br />
<br />
* '''Maintainer:''' [http://metalgamer.eu/ metalgamer]<br />
* '''Description:''' Packages I use and/or maintain on the AUR.<br />
* '''Key ID:''' F55313FB<br />
<br />
{{bc|<nowiki><br />
[metalgamer]<br />
Server = http://repo.metalgamer.eu/$arch<br />
</nowiki>}}<br />
<br />
==== miffe ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=4059 miffe]<br />
* '''Description:''' AUR packages maintained by miffe, e.g. linux-mainline<br />
* '''Key ID:''' 313F5ABD<br />
<br />
{{bc|<nowiki><br />
[miffe]<br />
Server = http://arch.miffe.org/$arch/<br />
</nowiki>}}<br />
<br />
==== pipelight ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Pipelight and wine-compholio<br />
* '''Upstream page:''' [http://fds-team.de/ fds-team.de]<br />
* '''Key-ID:''' E49CC0415DC2D5CA<br />
* '''Keyfile:''' http://repos.fds-team.de/Release.key<br />
<br />
{{bc|<nowiki><br />
[pipelight]<br />
Server = http://repos.fds-team.de/stable/arch/$arch<br />
</nowiki>}}<br />
<br />
==== repo-ck ====<br />
<br />
* '''Maintainer:''' [[User:Graysky|graysky]]<br />
* '''Description:''' Kernel and modules with Brain Fuck Scheduler and all the goodies in the ck1 patch set.<br />
* '''Upstream page:''' [http://repo-ck.com repo-ck.com]<br />
* '''Wiki:''' [[repo-ck]]<br />
* '''Key-ID:''' 5EE46C4C<br />
<br />
{{bc|<nowiki><br />
[repo-ck]<br />
Server = http://repo-ck.com/$arch<br />
</nowiki>}}<br />
<br />
==== seblu ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#seblu Sébastien Luttringer]<br />
* '''Description:''' All seblu useful pre-built packages, some homemade (virtualbox-ext-oracle, linux-seblu-meta, bedup).<br />
* '''Key-ID:''' Not required, as maintainer is a Developer<br />
<br />
{{bc|<nowiki><br />
[seblu]<br />
Server = http://seblu.net/a/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== seiichiro ====<br />
<br />
* '''Maintainer:''' [https://www.seiichiro0185.org Stefan Brand (seiichiro0185)]<br />
* '''Description:''' AUR-packages I use frequently<br />
* '''Key-ID:''' 805517CC<br />
<br />
{{bc|<nowiki><br />
[seiichiro]<br />
Server = http://www.seiichiro0185.org/repo/$arch<br />
</nowiki>}}<br />
<br />
==== sergej-repo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#spupykin Sergej Pupykin]<br />
* '''Description:''' psi-plus, owncloud-git, ziproxy, android, MySQL, and other stuff. Some packages also available for armv7h.<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[sergej-repo]<br />
Server = http://repo.p5n.pp.ru/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== tredaelli-systemd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#tredaelli Timothy Redaelli]<br />
* '''Description:''' systemd rebuilt with unofficial OpenVZ patch (kernel < 2.6.32-042stab111.1)<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|{{ic|[tredaelli-systemd]}} must be put before {{ic|[core]}} in {{ic|/etc/pacman.conf}}}}<br />
<br />
{{bc|<nowiki><br />
[tredaelli-systemd]<br />
Server = http://pkgbuild.com/~tredaelli/repo/systemd/$arch<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== arch-deepin ====<br />
<br />
* '''Maintainer:''' [https://build.opensuse.org/project/show/home:metakcahura metak], [https://github.com/fasheng fasheng]<br />
* '''Description:''' Porting software from Linux Deepin to Archlinux.<br />
* '''Upstream page:''' https://github.com/fasheng/arch-deepin<br />
<br />
{{bc|<nowiki><br />
[home_metakcahura_arch-deepin_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
#Server = http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== archaudio ====<br />
<br />
* '''Maintainer:''' [[User:Schivmeister|Ray Rashif]], [https://aur.archlinux.org/account/jhernberg Joakim Hernberg]<br />
* '''Description:''' Pro-audio packages<br />
<br />
{{bc|<nowiki><br />
[archaudio-production]<br />
Server = http://repos.archaudio.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxfr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
* '''Upstream page:''' http://afur.archlinux.fr<br />
<br />
{{bc|<nowiki><br />
[archlinuxfr]<br />
Server = http://repo.archlinux.fr/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgis ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Maintainers needed - low bandwidth<br />
<br />
{{bc|<nowiki><br />
[archlinuxgis]<br />
Server = http://archlinuxgis.no-ip.org/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr]<br />
Server = http://archlinuxgr.tiven.org/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr-kde4 ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' KDE4 packages (plasmoids, themes etc) provided by the Hellenic (Greek) Arch Linux community<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-kde4]<br />
Server = http://archlinuxgr.tiven.org/archlinux-kde4/$arch<br />
</nowiki>}}<br />
<br />
==== arsch ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' From users of orgizm.net<br />
<br />
{{bc|<nowiki><br />
[arsch]<br />
Server = http://arsch.orgizm.net/$arch<br />
</nowiki>}}<br />
<br />
==== cinnamon ====<br />
<br />
* '''Maintainer:''' [https://github.com/jnbek jnbek]<br />
* '''Description:''' Stable and actively developed Cinnamon packages (Applets, Themes, Extensions), plus others (Hotot, qBitTorrent, GTK themes, Perl modules, and more).<br />
<br />
{{bc|<nowiki><br />
[cinnamon]<br />
Server = http://archlinux.zoelife4u.org/cinnamon/$arch<br />
</nowiki>}}<br />
<br />
==== ede ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Equinox Desktop Environment repository<br />
<br />
{{bc|<nowiki><br />
[ede]<br />
Server = http://ede.elderlinux.org/repos/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== heftig ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#heftig Jan Steffens]<br />
* '''Description:''' Includes linux-zen and firefox-developer-edition<br />
* '''Upstream page:''' https://bbs.archlinux.org/viewtopic.php?id=117157<br />
<br />
{{bc|<nowiki><br />
[heftig]<br />
Server = http://pkgbuild.com/~heftig/repo/$arch<br />
</nowiki>}}<br />
<br />
==== home_Minerva_W_Science_Arch_Extra ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' [[OpenFOAM]] packages.<br />
<br />
{{bc|<nowiki><br />
[home_Minerva_W_Science_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/Minerva_W:/Science/Arch_Extra/$arch <br />
</nowiki>}}<br />
<br />
==== mesa-git ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#lcarlier Laurent Carlier]<br />
* '''Description:''' Mesa git builds for the ''testing'' and ''multilib-testing'' repositories<br />
<br />
{{bc|<nowiki><br />
[mesa-git]<br />
Server = http://pkgbuild.com/~lcarlier/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== noware ====<br />
<br />
* '''Maintainer:''' Alexandru Thirtheu (alex_giusi_tiri2@yahoo.com) ([https://bbs.archlinux.org/profile.php?id=65036 Forums]) ([[User:AGT|Wiki]]) ([http://direct.noware.systems.:2 Web Site])<br />
* '''Description:''' Software which I prefer being present in a repository, than being compiled each time. It eases software maintenance, I find. Almost anything goes.<br />
<br />
{{bc|<nowiki><br />
[noware]<br />
Server = http://direct.$repo.systems.:2/repository/arch/$arch<br />
</nowiki>}}<br />
<br />
==== openrc-eudev ====<br />
* '''Maintainer:''' [[User:Nous|nous]]<br />
* '''Description:''' OpenRC init system, initscripts, eudev and nosystemd packages from the AUR.<br />
* '''Upstream page:''' https://sourceforge.net/projects/archopenrc<br />
* '''Upstream sources:''' https://github.com/cromerc/arch-openrc, https://github.com/cromerc/arch-nosystemd and the AUR<br />
<br />
{{bc|<nowiki><br />
[openrc-eudev]<br />
SigLevel=PackageOptional<br />
Server=http://downloads.sourceforge.net/project/archopenrc/$repo/$arch<br />
Server=ftp://ftp.heanet.ie/mirrors/sourceforge/a/ar/archopenrc/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== oracle ====<br />
<br />
* '''Maintainer:''' [[User:Malvineous|Malvineous]]<br />
* '''Description:''' Oracle database client<br />
<br />
{{Warning|By adding this you are agreeing to the Oracle license at http://www.oracle.com/technetwork/licenses/instant-client-lic-152016.html}}<br />
<br />
{{bc|<nowiki><br />
[oracle]<br />
Server = http://linux.shikadi.net/arch/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== pantheon ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Repository containing Pantheon-related packages<br />
<br />
{{bc|<nowiki><br />
[pantheon]<br />
Server = http://pkgbuild.com/~alucryd/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== paulburton-fitbitd ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains fitbitd for synchronizing FitBit trackers<br />
<br />
{{bc|<nowiki><br />
[paulburton-fitbitd]<br />
Server = http://www.paulburton.eu/arch/fitbitd/$arch<br />
</nowiki>}}<br />
<br />
==== pietma ====<br />
<br />
* '''Maintainer:''' MartiMcFly <martimcfly@autorisation.de><br />
* '''Description:''' Arch User Repository packages [https://aur.archlinux.org/packages/?K=martimcfly&SeB=m I create or maintain.].<br />
* '''Upstream page:''' http://pietma.com/tag/aur/<br />
<br />
{{bc|<nowiki><br />
[pietma]<br />
SigLevel = Optional TrustAll<br />
Server = http://repository.pietma.com/nexus/content/repositories/archlinux/$arch/$repo<br />
</nowiki>}}<br />
<br />
==== pfkernel ====<br />
<br />
* '''Maintainer:''' [[User:Nous|nous]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf[-cpu] and linux-pf-lts[-cpu]. Also, openrc and initscripts-openrc.<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/11734958/x86_64/index.html or start at http://bit.do/linux-pf<br />
<br />
{{bc|<nowiki><br />
[pfkernel]<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
</nowiki>}}<br />
<br />
==== suckless ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' suckless.org packages<br />
<br />
{{bc|<nowiki><br />
[suckless]<br />
Server = http://dl.suckless.org/arch/$arch<br />
</nowiki>}}<br />
<br />
==== trinity ====<br />
<br />
* '''Maintainer:''' [[User:Mmanley|Michael Manley]]<br />
* '''Description:''' [[Trinity]] Desktop Environment<br />
<br />
{{bc|<nowiki><br />
[trinity]<br />
Server = http://repo.nasutek.com/arch/contrib/trinity/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch-Extra ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] extra packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch-Extra]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== home_tarakbumba_archlinux_Arch_Extra_standard ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains a few pre-built AUR packages (zemberek, etc.)<br />
<br />
{{bc|<nowiki><br />
[home_tarakbumba_archlinux_Arch_Extra_standard]<br />
Server = http://download.opensuse.org/repositories/home:/tarakbumba:/archlinux/Arch_Extra_standard/$arch<br />
</nowiki>}}<br />
<br />
==== QOwnNotes ====<br />
<br />
* '''Maintainer:''' http://www.qownnotes.org<br />
* '''Description:''' QOwnNotes is a open source notepad and todo list manager with markdown support and [[ownCloud]] integration.<br />
<br />
{{bc|<nowiki><br />
[home_pbek_QOwnNotes_Arch_Extra]<br />
SigLevel = Optional TrustAll<br />
Server = http://download.opensuse.org/repositories/home:/pbek:/QOwnNotes/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
== i686 only ==<br />
<br />
=== Signed ===<br />
<br />
==== eee-ck ====<br />
<br />
* '''Maintainer:''' Gruppenpest<br />
* '''Description:''' Kernel and modules optimized for Asus Eee PC 701, with -ck patchset.<br />
* '''Key-ID:''' 27D4A19A<br />
* '''Keyfile''' http://zembla.duckdns.org/repo/gruppenpest.gpg<br />
<br />
{{bc|<nowiki><br />
[eee-ck]<br />
Server = http://zembla.duckdns.org/repo<br />
</nowiki>}}<br />
<br />
==== xyne-i686 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "i686" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-i686]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' each program I'm using on x86_64 is compiled for i686 too<br />
* '''Upstream page:''' http://andrwe.org/linux/repository<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/i686<br />
</nowiki>}}<br />
<br />
==== kpiche ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Stable OpenSync packages.<br />
<br />
{{bc|<nowiki><br />
[kpiche]<br />
Server = http://kpiche.archlinux.ca/repo<br />
</nowiki>}}<br />
<br />
==== kernel26-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 2.6.39<br />
<br />
{{bc|<nowiki><br />
[kernel26-pae]<br />
Server = http://kernel26-pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== linux-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 3.0<br />
<br />
{{bc|<nowiki><br />
[linux-pae]<br />
Server = http://pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== rfad ====<br />
<br />
* '''Maintainer:''' requiem [at] archlinux.us<br />
* '''Description:''' Repository made by haxit<br />
<br />
{{bc|<nowiki><br />
[rfad]<br />
Server = http://web.ncf.ca/ey723/archlinux/repo/<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/i686<br />
</nowiki>}}<br />
<br />
== x86_64 only ==<br />
<br />
=== Signed ===<br />
<br />
==== apathism ====<br />
<br />
* '''Maintainer:''' Ivan Koryabkin ([https://aur.archlinux.org/account/apathism/ apathism])<br />
* '''Upstream page:''' https://apathism.net/<br />
* '''Description:''' Some AUR packages like {{AUR|psi-plus-git}} (with qt5 enabled).<br />
* '''Key-ID:''' 3E37398D<br />
* '''Keyfile:''' http://apathism.net/archlinux/apathism.key<br />
<br />
{{bc|<nowiki><br />
[apathism]<br />
Server = https://apathism.net/archlinux/<br />
</nowiki>}}<br />
<br />
==== archzfs ====<br />
<br />
* '''Maintainer:''' [http://archzfs.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for ZFS on Arch Linux.<br />
* '''Upstream page:''' https://github.com/archzfs/archzfs<br />
* '''Key-ID:''' 5E1ABF240EE7A126<br />
<br />
{{bc|<nowiki><br />
[archzfs]<br />
Server = http://archzfs.com/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== ashleyis ====<br />
<br />
* '''Maintainer:''' Ashley Towns ([https://aur.archlinux.org/account/ashleyis/ ashleyis])<br />
* '''Description:''' Debug versions of SDL, chipmunk, libtmx and other misc game libraries. also swift-lang and some other AUR packages <br />
* '''Key-ID:''' B1A4D311<br />
<br />
{{bc|<nowiki><br />
[ashleyis]<br />
Server = http://arch.ashleytowns.id.au/repo/$arch<br />
</nowiki>}}<br />
<br />
==== atom ====<br />
<br />
* '''Maintainer:''' Nicola Squartini ([https://github.com/tensor5 tensor5])<br />
* '''Upstream page:''' https://github.com/tensor5/arch-atom<br />
* '''Description:''' Atom text editor and Electron<br />
* '''Key-ID:''' B0544167<br />
<br />
{{bc|<nowiki><br />
[atom]<br />
Server = http://noaxiom.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== bioinformatics ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some software tools for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics]<br />
Server = http://decryptedepsilon.bl.ee/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== boyska64 ====<br />
<br />
* '''Maintainer:''' boyska<br />
* '''Description:''' Personal repository: cryptography, sdr, mail handling and misc<br />
* '''Key-ID:''' 0x7395DCAE58289CA9<br />
<br />
{{bc|<nowiki><br />
[boyska64]<br />
Server = http://boyska.degenerazione.xyz/archrepo<br />
</nowiki>}}<br />
<br />
==== coderkun-aur ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with random software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://www.coderkun.de/arch<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [https://www.coderkun.de/coderkun.asc https://www.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-audio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with audio-related (realtime kernels, lv2-plugins, …) software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://www.coderkun.de/arch<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [https://www.coderkun.de/coderkun.asc https://www.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-audio]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== eatabrick ====<br />
<br />
* '''Maintainer:''' bentglasstube<br />
* '''Description:''' Packages for software written by (and a few just compiled by) bentglasstube.<br />
<br />
{{bc|<nowiki><br />
[eatabrick]<br />
SigLevel = Required<br />
Server = http://repo.eatabrick.org/$arch<br />
</nowiki>}}<br />
<br />
==== freifunk-rheinland ====<br />
<br />
* '''Maintainer:''' nomaster<br />
* '''Description:''' Packages for the Freifunk project: batman-adv, batctl, fastd and dependencies.<br />
<br />
{{bc|<nowiki><br />
[freifunk-rheinland]<br />
Server = http://mirror.fluxent.de/archlinux-custom/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== holo ====<br />
<br />
* '''Maintainer:''' Stefan Majewsky <holo-pacman@posteo.de> (please prefer to report issues at [https://github.com/majewsky/holo-pacman-repo/issues Github])<br />
* '''Description:''' Packages for [https://holocm.org Holo configuration management], including compatible plugins and tools.<br />
* '''Upstream page:''' https://github.com/majewsky/holo-pacman-repo<br />
* '''Package list:''' https://repo.holocm.org/archlinux/x86_64<br />
* '''Key-ID:''' 0xF7A9C9DC4631BD1A<br />
<br />
{{bc|<nowiki><br />
[holo]<br />
Server = https://repo.holocm.org/archlinux/x86_64<br />
</nowiki>}}<br />
<br />
==== Linux-pf ====<br />
<br />
{{Accuracy|Signed repositories should not use {{ic|1=SigLevel = Optional}} (by definition).}}<br />
<br />
* '''Maintainer:''' [[User:Thaodan|Thaodan]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf, just like {{AUR|linux-pf}} from the [[AUR]] but additionally optimized for intel CPUs Sandy Bridge, Ivy Bridge, Haswell and generic of course, and some extra packages<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox).<br />
<br />
{{bc|<nowiki><br />
[Linux-pf]<br />
Server = https://dl.dropboxusercontent.com/u/172590784/Linux-pf/x86_64/<br />
SigLevel = Optional<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-multilib ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle multilib repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-multilib]<br />
Server = http://bohoomil.com/repo/multilib/$arch<br />
</nowiki>}}<br />
<br />
==== kc9ydn ====<br />
<br />
* '''Maintainer:''' [http://kc9ydn.us KC9YDN]<br />
* '''Description:''' Consists mostly of amateur radio related apps<br />
* '''Key-ID:''' 7DA25A0F<br />
<br />
{{bc|<nowiki><br />
[kc9ydn]<br />
Server = http://kc9ydn.us/repo/<br />
</nowiki>}}<br />
<br />
==== linux-lts-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current ArchLinux LTS kernel with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/x86_64/index.html or start at http://tiny.cc/linux-lts-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch)<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x/x86_64/index.html or start at http://tiny.cc/linux-lts31x<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch) with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/x86_64/index.html or start at http://tiny.cc/linux-lts31x-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-ck-pax ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current Arch Kernel with the CK and PaX security patchsets<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/x86_64/index.html or start at http://tiny.cc/linux-ck-pax<br />
<br />
{{bc|<nowiki><br />
[linux-ck-pax]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/$arch<br />
</nowiki>}}<br />
<br />
==== linux-kalterfx ====<br />
<br />
* '''Maintainer''': Anna Ivanova ([https://aur.archlinux.org/account/kalterfive kalterfive])<br />
* '''Upstream page''': https://kalterfive.github.io/linux-kalterfx/about.html<br />
* '''Description''': A stable kernel with [[#Linux-pf|pf-kernel]], [[reiser4]] and smack<br />
* '''Key-ID''': A0C04F15<br />
* '''Keyfile''': https://keybase.io/kalterfive/key.asc<br />
<br />
{{bc|<nowiki><br />
[linux-kalterfx]<br />
Server = http://deadsoftware.ru/files/linux-kalterfx/repo/$arch<br />
</nowiki>}}<br />
<br />
==== linux-tresor ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Arch Current and LTS kernels with TRESOR<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-tresor/x86_64/index.html or start at http://tiny.cc/linux-tresor<br />
<br />
{{bc|<nowiki><br />
[linux-tresor]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-tresor/$arch<br />
</nowiki>}}<br />
<br />
==== nullptr_t ====<br />
<br />
* '''Maintainers:''' nullptr_t, <br />
* '''Description:''' Cherry-picked non-properitary packages and admin tools from AUR (e.g. [[plymouth]], nemo-extensions and a few more)<br />
* '''Key-ID:''' B4767A17CEC5B4E9<br />
<br />
{{bc|<nowiki><br />
[nullptr_t]<br />
Server = https://archlinux.0ptr.de/mirrors/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== markzz ====<br />
<br />
* '''Maintainer:''' [[User:Markzz|Mark Weiman (markzz)]]<br />
* '''Description:''' Packages that markzz maintains or uses on the AUR; this includes Linux with the vfio patchset ({{AUR|linux-vfio}} and {{AUR|linux-vfio-lts}}), and packages to maintain a Debian package repository.<br />
* '''Sources:''' http://git.markzz.net/markzz/repositories/markzz.git/tree<br />
* '''Key ID:''' 3CADDFDD<br />
<br />
{{Note|If you want to add the key by installing the ''markzz-keyring'' package, temporarily add {{ic|1=SigLevel = Never}} into the repository section.}}<br />
<br />
{{bc|<nowiki><br />
[markzz]<br />
Server = http://repo.markzz.com/arch/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== qt-debug ====<br />
<br />
* '''Maintainer:''' [http://blog.the-compiler.org/?page_id=36 The Compiler]<br />
* '''Description:''' Qt/PyQt builds with debug symbols<br />
* '''Upstream page:''' https://github.com/The-Compiler/qt-debug-pkgbuild<br />
* '''Key-ID:''' D6A1C70FE80A0C82<br />
<br />
{{bc|<nowiki><br />
[qt-debug]<br />
Server = http://qutebrowser.org/qt-debug/$arch<br />
</nowiki>}}<br />
<br />
==== quarry ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#anatolik anatolik]<br />
* '''Description:''' Arch binary repository for [http://rubygems.org/ Rubygems] packages. See [https://bbs.archlinux.org/viewtopic.php?id=182729 forum announcement] for more information.<br />
* '''Sources:''' https://github.com/anatol/quarry<br />
* '''Key-ID:''' Not needed, as maintainer is a developer<br />
<br />
{{bc|<nowiki><br />
[quarry]<br />
Server = http://pkgbuild.com/~anatolik/quarry/x86_64/<br />
</nowiki>}}<br />
<br />
==== rstudio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/unikum/ Artem Klevtsov]<br />
* '''Description:''' Rstudio IDE package (git version) and depends.<br />
* '''Key-ID:''' 1CB48DD4<br />
<br />
{{bc|<nowiki><br />
[rstudio]<br />
Server = http://repo.psylab.info/archlinux/x86_64/<br />
</nowiki>}}<br />
<br />
==== siosm-aur ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages also available in the Arch User Repository, sometimes with minor fixes<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-aur]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== subtitlecomposer ====<br />
<br />
* '''Maintainer:''' Mladen Milinkovic (maxrd2)<br />
* '''Description:''' Subtitle Composer stable and nightly builds<br />
* '''Upstream page:''' https://github.com/maxrd2/subtitlecomposer<br />
* '''Key-ID:''' EF9D9B26<br />
<br />
{{bc|<nowiki><br />
[subtitlecomposer]<br />
Server = http://smoothware.net/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== xyne-x86_64 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "x86_64" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-x86_64]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== alucryd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages Maxime Gauduin maintains (or not) in the AUR.<br />
<br />
{{bc|<nowiki><br />
[alucryd]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== alucryd-multilib ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages needed to run Steam without its runtime environment.<br />
<br />
{{bc|<nowiki><br />
[alucryd-multilib]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' contains programs I'm using on many systems<br />
* '''Upstream page:''' http://andrwe.dyndns.org/doku.php/blog/repository {{Dead link|2013|11|30}}<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/x86_64<br />
</nowiki>}}<br />
<br />
==== archstudio ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Audio and Music Packages optimized for Intel Core i3, i5, and i7.<br />
* '''Upstream page:''' http://www.xsounds.org/~archstudio<br />
<br />
{{bc|<nowiki><br />
[archstudio]<br />
Server = http://www.xsounds.org/~archstudio/x86_64<br />
</nowiki>}}<br />
<br />
==== brtln ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bpiotrowski Bartłomiej Piotrowski]<br />
* '''Description:''' Some VCS packages.<br />
<br />
{{bc|<nowiki><br />
[brtln]<br />
Server = http://pkgbuild.com/~barthalion/brtln/$arch/<br />
</nowiki>}}<br />
<br />
==== jkanetwork ====<br />
<br />
* '''Maintainer:''' kprkpr <kevin01010 at gmail dot com><br />
* '''Maintainer:''' Joselucross <jlgarrido97 at gmail dot com><br />
* '''Description:''' Packages of AUR like pimagizer,stepmania,yaourt,linux-mainline,wps-office,grub-customizer,some IDE.. Open for all that wants to contribute<br />
* '''Upstream page:''' http://repo.jkanetwork.com/<br />
<br />
{{bc|<nowiki><br />
[jkanetwork]<br />
Server = http://repo.jkanetwork.com/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== mazdlc ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Various packages maintained by maz-1 (mainly Qt5-based packages and multimedia-related packages )<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mazdlc-deadbeef-plugins ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Plugins for the feature-rich music player DeaDBeeF.<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_deadbeef-plugins_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc:/deadbeef-plugins/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mazdlc-kde-frameworks-5 ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Unstable packages based on kde frameworks 5.<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_kde-frameworks-5_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc:/kde-frameworks-5/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mikroskeem ====<br />
<br />
* '''Maintainer:''' mikroskeem <mikroskeem@mikroskeem.eu><br />
* '''Description:''' Openarena, i3 wm, and neovim-related packages<br />
<br />
{{bc|<nowiki><br />
[mikroskeem]<br />
Server = https://nightsnack.cf/~mark/arch-pkgs<br />
</nowiki>}}<br />
<br />
==== mingw-w64 ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/ant32 Philip] and [https://aur.archlinux.org/account/nic96 Jeromy] Reimer<br />
* '''Description:''' Almost all mingw-w64 packages in the AUR.<br />
<br />
{{bc|<nowiki><br />
[mingw-w64]<br />
Server = http://downloads.sourceforge.net/project/mingw-w64-archlinux/$arch<br />
#Server = http://amr.linuxd.org/archlinux/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== pnsft-pur ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Japanese input method packages Mozc (vanilla) and libkkc<br />
<br />
{{bc|<nowiki><br />
[pnsft-pur]<br />
Server = http://downloads.sourceforge.net/project/pnsft-aur/pur/x86_64<br />
</nowiki>}}<br />
<br />
==== rakudo ====<br />
<br />
* '''Maintainer:''' spider-mario <spidermario@free.fr><br />
* '''Description:''' Rakudo Perl6<br />
<br />
{{bc|<nowiki><br />
[rakudo]<br />
Server = https://spider-mario.quantic-telecom.net/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== rightlink ====<br />
<br />
* '''Maintainer:''' Chris Fordham <chris@fordham-nagy.id.au><br />
* '''Description:''' RightLink version 10 (RL10) is a new version of RightScale's server agent that connects servers managed through RightScale to the RightScale cloud management platform.<br />
<br />
{{bc|<nowiki><br />
[rightlink]<br />
Server = https://s3-ap-southeast-2.amazonaws.com/archlinux.rightscale.me/repo<br />
</nowiki>}}<br />
<br />
==== zrootfs ====<br />
<br />
* '''Maintainer:''' Isabell Cowan <isabellcowan@gmail.com><br />
* '''Description:''' For Haswell and Broadwell architecture processors with size in mind (out of date 2016-03-14).<br />
<br />
{{bc|<nowiki><br />
[zrootfs]<br />
Server = http://www.izzette.com/izzi/zrootfs-old<br />
</nowiki>}}<br />
<br />
== armv6h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== arch-fook-armv6h ====<br />
<br />
* '''Maintainer:''' Jaska Kivelä <jaska@kivela.net><br />
* '''Description:''' Stuff that I have compiled for my Raspberry PI. Including Enlightenment and home automation stuff.<br />
<br />
{{bc|<nowiki><br />
[arch-fook-armv6h]<br />
Server = http://kivela.net/jaska/arch-fook-armv6h<br />
</nowiki>}}<br />
<br />
== armv7h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== pietma ====<br />
<br />
* '''Maintainer:''' MartiMcFly <martimcfly@autorisation.de><br />
* '''Description:''' Arch User Repository packages [https://aur.archlinux.org/packages/?K=martimcfly&SeB=m I create or maintain.].<br />
* '''Upstream page:''' [http://pietma.com/tag/aur/ http://pietma.com/tag/aur/]<br />
{{bc|<nowiki><br />
[pietma]<br />
SigLevel = Optional TrustAll<br />
Server = http://repository.pietma.com/nexus/content/repositories/archlinux/$arch/$repo<br />
</nowiki>}}</div>Noushttps://wiki.archlinux.org/index.php?title=PulseAudio/Examples&diff=426914PulseAudio/Examples2016-03-21T00:40:00Z<p>Nous: /* Swap left/right channels */</p>
<hr />
<div>[[Category:Sound]]<br />
[[it:PulseAudio/Examples]]<br />
[[ja:PulseAudio/サンプル]]<br />
[[ru:PulseAudio/Examples]]<br />
== Set default input sources ==<br />
<br />
List available input sources<br />
{{hc|<nowiki>$ pacmd list-sources | grep -e device.string -e 'name:'</nowiki>|2=<br />
name: <input><br />
device.string = "hw:2"<br />
name: <oss_input.dsp><br />
device.string = "/dev/dsp"<br />
name: <alsa_output.pci-0000_04_01.0.analog-stereo.monitor><br />
name: <combined.monitor><br />
}}<br />
<br />
For permanent store in the ''default.pa'' file.<br />
<br />
Make OSS default<br />
set-default-source alsa_output.pci-0000_04_01.0.analog-stereo.monitor<br />
<br />
Or<br />
<br />
Make ALSA default<br />
set-default-source set-default-source alsa_output.pci-0000_04_01.0.analog-stereo.monitor<br />
<br />
For temporary use<br />
$ pacmd "set-default-source set-default-source alsa_output.pci-0000_04_01.0.analog-stereo.monitor"<br />
<br />
== Set the default output source ==<br />
<br />
Determine the name of the new source, which has a * in front of index:<br />
{{hc|<nowiki>$ pacmd list-sinks | grep -e 'name:' -e 'index'</nowiki>|<br />
* index: 0<br />
name: <alsa_output.pci-0000_04_01.0.analog-stereo><br />
index: 1<br />
name: <combined><br />
}}<br />
<br />
For setting it as default in the ''default.pa'' you can use<br />
set-default-sink alsa_output.pci-0000_04_01.0.analog-stereo<br />
<br />
When done then you can logout/login or restart PulseAudio manually for these changes to take effect.<br />
<br />
{{Note|1=<nowiki></nowiki><br />
* The sinks that are set as default are marked with {{ic|*}} in front of the index.<br />
* The numbering of sinks is not guaranteed to be persistent, so all sinks in the {{ic|default.pa}} file should be identified by the name.<br />
* For quick identification at runtime (e.g. to manage sound volume), you can use the sink index instead of the sink name: {{bc|<nowiki><br />
$ pactl set-sink-volume 0 +3%<br />
$ pactl set-sink-volume 0 -- -3%<br />
$ pactl set-sink-mute 0 toggle<br />
</nowiki>}}<br />
* To avoid unnecessary overriding of 100% normal volume it is better to use alternative utilities for managing of sound. See the [https://bbs.archlinux.org/viewtopic.php?id=124513 forum thread] for more information.}}<br />
<br />
== Simultaneous HDMI and analog output ==<br />
PulseAudio allows for simultaneous output to multiple sources. In this example, some applications are configured to use HDMI while others are configured to use analog. Multiple applications are able to receive audio at the same time.<br />
{{bc|$ aplay -l<br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: ALC889A Analog [ALC889A Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: ALC889A Digital [ALC889A Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 3: HDMI 0 [HDMI 0]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0}}<br />
<br />
Or by using the the {{ic|pacmd}} command: <br />
<br />
{{hc|<nowiki>$ pacmd list-sinks | grep -e 'name:' -e 'alsa.device ' -e 'alsa.subdevice '</nowiki>|<nowiki><br />
name: <alsa_output.pci-0000_00_1b.0.analog-stereo><br />
alsa.subdevice = "0"<br />
alsa.device = "0"</nowiki>}}<br />
<br />
The key to a configuration like this is to understand that whatever is selected in pavucontrol under ''Configuration > Internal Audio'' is the default device. Load ''pavucontrol > Configuration'' and select HDMI as the profile. <br />
<br />
To setup the analog device as a secondary source, add the following to the {{ic|/etc/pulse/default.pa}} configuration at the beginning, before any other modules are loaded: <br />
<br />
### Load analog device<br />
load-module module-alsa-sink device=hw:0,0<br />
load-module module-combine-sink sink_name=combined<br />
set-default-sink combined<br />
<br />
Restart PulseAudio, run ''pavucontrol'' and select the "Output Devices" tab. Three settings should be displayed:<br />
# Internal Audio Digital Stereo (HDMI)<br />
# Internal Audio<br />
# Simultaneous output to Internal Audio Digital Stereo (HDMI), Internal Audio<br />
<br />
Now start a program that will use PulseAudio such as MPlayer, VLC, mpd, etc. and switch to the "Playback" tab. A drop-down list should be available for the running program to select one of the three sources.<br />
<br />
Also see [https://bbs.archlinux.org/viewtopic.php?id=118026 this thread] for a variation on this theme and [http://www.freedesktop.org/wiki/Software/PulseAudio/FAQ#Can_I_use_PulseAudio_to_playback_music_on_two_sound_cards_simultaneously.3F PulseAudio FAQ].<br />
<br />
==HDMI output configuration==<br />
As outlined in ftp://download.nvidia.com/XFree86/gpu-hdmi-audio-document/gpu-hdmi-audio.html#_issues_in_pulseaudio unless the HDMI port is the first<br />
output, PulseAudio will not be able to have any audio when using certain graphics cards with HDMI audio support. This is because of a bug in PulseAudio where it will only select the first HDMI output on a device. A work around posted further down is to first find which HDMI output is working by using the aplay utility from ALSA.<br />
<br />
The original title for this section indicated the problem is specific to nVidia cards. As seen in [https://bbs.archlinux.org/viewtopic.php?id=133222 this forum thread] other cards are affected as well. The rest of the section will use an nVidia card as a case-study but the solution should carry over for people using other affected cards.<br />
<br />
===Finding HDMI output===<br />
Then find the working output by listing the available cards<br />
# aplay -l<br />
<br />
sample output:<br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: NVidia [HDA NVidia], device 0: ALC1200 Analog [ALC1200 Analog]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 0: NVidia [HDA NVidia], device 3: ALC1200 Digital [ALC1200 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 3: HDMI 0 [HDMI 0]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 7: HDMI 0 [HDMI 0]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 8: HDMI 0 [HDMI 0]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 9: HDMI 0 [HDMI 0]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
<br />
===Testing for the correct card===<br />
Now a list of the detected cards is known, users will need to test for which one is outputting to the TV/monitor<br />
# aplay -D plughw:1,3 /usr/share/sounds/alsa/Front_Right.wav<br />
<br />
where 1 is the card and 3 is the device substitute in the values listed from the previous section. If there is no audio, then try substituting a different device (on my card I had to use card 1 device 7)<br />
<br />
===Manually configuring PulseAudio to detect the Nvidia HDMI===<br />
Having identified which HDMI device is working, PulseAudio can be forced to use it via an edit to {{ic|/etc/pulse/default.pa}}:<br />
# load-module module-alsa-sink device=hw:1,7<br />
<br />
where the 1 is the card and the 7 is the device found to work in the previous section<br />
<br />
restart pulse audio<br />
$ pulseaudio -k<br />
$ pulseaudio --start<br />
<br />
open the sound settings manager, make sure that under the hardware tab the graphics cards HDMI audio is set to "Digital Stereo (HDMI) Output" (My graphics card audio is called "GF100 High Definition Audio Controller").<br />
<br />
Then, open the output tab. There should now be two HDMI outputs for the graphics card. Test which one works by selecting one of them, and then using a program to play audio. For example, use VLC to play a movie, and if it does not work, then select the other.<br />
<br />
=== Automatically switch audio to HDMI ===<br />
<br />
{{Style|Dodgy code, e.g. hardcodes DISPLAY}}<br />
Create a script to switch to the desired audio profile if an HDMI cable is plugged in:<br />
<br />
{{hc|/usr/local/bin/hdmi_sound_toggle.sh|2=<nowiki><br />
#!/bin/bash<br />
USER_NAME=$(w -hs | awk -v vt=tty$(fgconsole) '$0 ~ vt {print $1}')<br />
USER_ID=$(id -u "$USER_NAME")<br />
HDMI_STATUS=$(</sys/class/drm/card0/*HDMI*/status)<br />
<br />
export PULSE_SERVER="unix:/run/user/"$USER_ID"/pulse/native"<br />
<br />
if [[ $HDMI_STATUS == connected ]]<br />
then<br />
sudo -u "$USER_NAME" pactl --server "$PULSE_SERVER" set-card-profile 0 output:hdmi-stereo+input:analog-stereo<br />
else<br />
sudo -u "$USER_NAME" pactl --server "$PULSE_SERVER" set-card-profile 0 output:analog-stereo+input:analog-stereo<br />
fi<br />
</nowiki>}}<br />
<br />
Make the script executable:<br />
<br />
chmod +x /usr/local/bin/hdmi_sound_toggle.sh<br />
<br />
Create a udev rule to run this script when the status of the HDMI change:<br />
{{Note|udev rule can't directly run a script, a workaround is to use a .service to run this script}}<br />
<br />
{{hc|/etc/udev/rules.d/99-hdmi_sound.rules|2=<br />
KERNEL=="card0", SUBSYSTEM=="drm", ACTION=="change", RUN+="/usr/bin/systemctl start hdmi_sound_toggle.service"<br />
}}<br />
<br />
Finally, create the .service file required by the udev rule above:<br />
{{hc|/etc/systemd/system/hdmi_sound_toggle.service|2=<br />
[Unit]<br />
Description=hdmi sound hotplug<br />
<br />
[Service]<br />
Type=simple<br />
RemainAfterExit=no<br />
ExecStart=/usr/local/bin/hdmi_sound_toggle.sh<br />
<br />
[Install]<br />
WantedBy=multi-user.target<br />
}}<br />
<br />
To make the change effective don't forget to reload the udev rules:<br />
udevadm control --reload-rules<br />
A reboot can be required.<br />
<br />
==Surround sound systems==<br />
Many people have a surround sound card, but have speakers for just two channels, so PulseAudio cannot really default to a surround sound setup. To enable all of the channels, edit {{ic|/etc/pulse/daemon.conf}}: uncomment the default-sample-channels line (i.e. remove the semicolon from the beginning of the line) and set the value to '''6'''. For a ''5.1'' setup, or '''8''' for a ''7.1'' setup etc.<br />
# Default<br />
default-sample-channels=2<br />
# For 5.1<br />
default-sample-channels=6<br />
# For 7.1<br />
default-sample-channels=8<br />
<br />
If your channels are not correclty mapped or the volume controls for the individual channels do not work as expected in pavucontrol, and you have a HDMI and an anlog soundcard, then try to add the following line to {{ic|/etc/pulse/default.pa}}<br />
<br />
load-module module-combine channels=6 channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe<br />
<br />
Note that this example is for a 5.1 setup.<br />
<br />
After doing the edit, restart PulseAudio.<br />
<br />
=== Splitting front/rear ===<br />
<br />
Connect speakers to front analog output and headphones to rear output. It would be useful to split front/rear to separate sinks. Add to {{ic|/etc/pulse/default.pa}}:<br />
<br />
load-module module-remap-sink sink_name=speakers remix=no master=alsa_output.pci-0000_05_00.0.analog-surround-40 channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right<br />
load-module module-remap-sink sink_name=headphones remix=no master=alsa_output.pci-0000_05_00.0.analog-surround-40 channels=2 master_channel_map=rear-left,rear-right channel_map=front-left,front-right<br />
Make sure to replace alsa_output.pci-0000_05_00.0.analog-surround-40 with the sound card name shown in 'pacmd list-sinks'.<br />
Now you have 2 additional sinks which can be used separately. You can choose 'sink_name' freely, as long as there is no sink with that name already. The 'remix' parameter controls whether the audio should be down-/upmixed to match the channels in the sink.<br />
<br />
{{Tip|If pulseaudio fails with {{ic|master sink not found}}, comment out the remapping lines, start PulseAudio and verify your card output is set to the one you specified (e.g. analog surround 4.0). Alternatively, try using a [[#Set the defaulting output source|sink index]] instead of a sink name.}}<br />
<br />
===Splitting 7.1 into 5.1+2.0===<br />
<br />
Similar to the example above, you can also split a 7.1 configuration into 5.1 surround and stereo output devices.<br />
Set your card to 7.1 mode, then add the following lines to {{ic|/etc/pulse/default.pa}}:<br />
load-module module-remap-sink sink_name=Surround remix=no master=alsa_output.pci-0000_00_14.2.analog-surround-71 channels=6 master_channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe<br />
load-module module-remap-sink sink_name=Stereo remix=yes master=alsa_output.pci-0000_00_14.2.analog-surround-71 channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right<br />
<br />
Make sure to replace alsa_output.pci-0000_00_14.2 with your sound card name, get it by running 'pacmd list-sinks'.<br />
This configuration will use the front/rear/center+lfe (green/black/orange) jacks for the 5.1 sink and the side (grey) jack for the stereo sink.<br />
It will also downmix any audio to stereo for the stereo sink, but will not touch the 5.1 output.<br />
<br />
{{Tip|If pulseaudio fails with {{ic|master sink not found}}, comment out the remapping lines, start PulseAudio and verify your card output is set to analog surround 7.1. Alternatively, try using a [[#Set the defaulting output source|sink index]] instead of a sink name.}}<br />
{{Note|The {{ic|1=remix=yes}} parameter will only work if you also have {{ic|1=enable-remixing = yes}} in your {{ic|/etc/pulse/daemon.conf}} (default).}}<br />
<br />
===Disabling LFE remixing===<br />
By default, PulseAudio remixes the number of channels to the default-sample-channels and since version 7 it also remixes the LFE channel. If you wish to disable LFE remixing, uncomment the line:<br />
<br />
; enable-lfe-remixing = yes<br />
<br />
and replace yes with no:<br />
<br />
enable-lfe-remixing = no<br />
<br />
then restart Pulseaudio.<br />
<br />
==PulseAudio over network==<br />
One of PulseAudio's unique features is its ability to stream audio from clients over TCP to a server running the PulseAudio daemon reliably within a LAN.<br />
<br />
To accomplish this, one needs to enable module-native-protocol-tcp. <br />
<br />
===TCP support (networked sound)===<br />
To enable the TCP module, add this to (or uncomment, if already there) {{ic|/etc/pulse/default.pa}} on both the client and server:<br />
load-module module-native-protocol-tcp<br />
<br />
For this to work, it is a requirement that both the client and server share the same cookie. Ensure that the clients and server share the same cookie file found under {{ic|~/.config/pulse/cookie}}. It does not matter whose cookie file you use (the server or a client's), just that the server and client(s) share the same one.<br />
<br />
Note: If experiencing trouble connecting, use (on server)<br />
pacmd list-modules<br />
<br />
===TCP support with anonymous clients===<br />
If it is undesirable to copy the cookie file from clients, anonymous clients can access the server by giving these parameters to module-native-protocol-tcp on the server (again in {{ic|/etc/pulse/default.pa}}):<br />
<br />
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/24 auth-anonymous=1<br />
<br />
Change the LAN IP subnet to match that of the those clients you wish to have access to the server.<br />
<br />
===Zeroconf (Avahi) publishing===<br />
For the remote PulseAudio server to appear in the PulseAudio Device Chooser ({{ic|pasystray}}), load the appropriate zeroconf modules, and enable the [[Avahi]] [[daemon]].<br />
<br />
On both machines, run:<br />
$ systemctl start avahi-daemon<br />
$ systemctl enable avahi-daemon<br />
On the server, add {{ic|load-module module-zeroconf-publish}} to {{ic|/etc/pulse/default.pa}}, on the client, add {{ic|load-module module-zeroconf-discover}} to {{ic|/etc/pulse/default.pa}}. Now redirect any stream or complete audio output to the remote PulseAudio server by selecting the appropriate sink.<br />
<br />
If you have issues with the remote syncs appearing on the client, try restarting the Avahi daemon on the server to rebroadcast the available interfaces.<br />
<br />
===Switching the PulseAudio server used by local X clients===<br />
To switch between servers on the client from within X, the {{ic|pax11publish}} command can be used. For example, to switch from the default server to the server at hostname foo:<br />
$ pax11publish -e -S foo<br />
<br />
Or to switch back to the default:<br />
$ pax11publish -e -r<br />
<br />
Instead of telling the PulseAudio server to stream audio (as described above), this will edit PulseAudio variables on the X11 root window, which will instruct the PulseAudio client libraries to connect to a PulseAudio server other than {{ic|localhost}}. As such, the programs will no longer interact with the local {{ic|pulseaudio}} process, which can then be [[stop]]ped. Programs such as {{ic|pactl}}, {{ic|pacmd}} or {{ic|pavucontrol}} will need to also run with the appropriate {{ic|PULSE_SERVER}} environment/X variable to control the remote PulseAudio server.<br />
<br />
Note that for the switch to become apparent, the programs using Pulse must be restarted, or their PulseAudio client library otherwise reinitialized (completely stopping and restarting playback may be enough). To make this setting permanent, edit {{ic|default-server}} in {{ic|~/.config/pulse/client.conf}} or {{ic|/etc/pulse/client.conf}}.<br />
<br />
===When everything else seems to fail===<br />
The following is a quick fix and NOT a permanent solution<br />
<br />
On the server:<br />
$ paprefs <br />
Go to Network Access -> Enable access to local sound devices (Also check both 'Allow discover' and 'Don't require authentication').<br />
<br />
On the client:<br />
$ export PULSE_SERVER=server.ip && mplayer test.mp3<br />
<br />
==ALSA monitor source==<br />
To be able to record from a monitor source (a.k.a. "What-U-Hear", "Stereo Mix"), use {{ic|pactl list}} to find out the name of the source in PulseAudio (e.g. {{ic|alsa_output.pci-0000_00_1b.0.analog-stereo.monitor}}). Then add lines like the following to {{ic|/etc/asound.conf}} or {{ic|~/.asoundrc}}:<br />
pcm.pulse_monitor {<br />
type pulse<br />
device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor<br />
}<br />
<br />
ctl.pulse_monitor {<br />
type pulse<br />
device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor<br />
}<br />
<br />
Now you can select {{ic|pulse_monitor}} as a recording source.<br />
<br />
Alternatively, you can use pavucontrol to do this: make sure you have set up the display to "All input devices", then select "Monitor of [your sound card]" as the recording source.<br />
<br />
== Monitor specific output ==<br />
<br />
It is possible to monitor a specific output, for example to stream audio from a music player into a VOIP application.<br />
Simply create a null output device:<br />
<br />
pactl load-module module-null-sink sink_name=<name><br />
<br />
In Pulseaudio Volume Control (pavucontrol), under the "Playback" tab, change the output of an application to <name>, and in the recording tab change the input of an application to "Monitor of <name>". Audio will now be outputted from one application into the other.<br />
<br />
==PulseAudio through JACK==<br />
===The new new way===<br />
This configuration only works with jackdbus (JACK2 compiled with D-Bus support). It also requires the {{Pkg|pulseaudio-jack}} package. Make sure that {{ic|/etc/pulse/default.pa}} contains a line:<br />
load-module module-jackdbus-detect ''options''<br />
Where {{ic|''options''}} can be any options supported by this module, usually {{ic|1=channels=2}}.<br />
<br />
As described on the [https://github.com/jackaudio/jackaudio.github.com/wiki/JackDbusPackaging Jack-DBUS Packaging] page:<br />
<br />
''Server auto-launching is implemented as D-Bus call that auto-activates JACK D-Bus service, in case it is not already started, and starts the JACK server. Correct interaction with PulseAudio is done using a D-Bus based audio card "acquire/release" mechanism. When JACK server starts, it asks this D-Bus service to acquire the audio card and PulseAudio will unconditionally release it. When JACK server stops, it releases the audio card that can be grabbed again by PulseAudio.''<br />
<br />
{{ic|module-jackdbus-detect.so}} dynamically loads and unloads module-jack-sink and module-jack-source when jackdbus is started and stopped.<br />
<br />
If PulseAudio sound does not work, check with {{ic|pavucontrol}} to see if the relevant programs appear in the playback tab. If not, add the following to {{ic|~/.asound.conf}} or {{ic|/etc/asound.conf}} to redirect ALSA to PulseAudio:<br />
<br />
pcm.pulse {<br />
type pulse<br />
}<br />
<br />
ctl.pulse {<br />
type pulse<br />
}<br />
<br />
pcm.!default {<br />
type pulse<br />
}<br />
ctl.!default {<br />
type pulse<br />
}<br />
<br />
If it still does not work, check with {{ic|pavucontrol}} in the playback tab and make sure the relevant programs are outputting to PulseAudio JACK Sink instead of your audio card (which JACK has control of, so it will not work).<br />
<br />
===The new way===<br />
The basic idea is that killing PulseAudio is a bad idea because it may crash any apps using PulseAudio and disrupt any audio playing.<br />
<br />
The flow of how this setup works:<br />
<br />
# PulseAudio releases the sound card<br />
# JACK grabs sound card and starts up<br />
# script redirects PulseAudio to JACK<br />
# manually send PulseAudio apps to JACK output (pavucontrol may come in helpful for this)<br />
# use JACK programs etc<br />
# via script, stop redirecting PulseAudio to JACK<br />
# stop JACK and release sound card<br />
# PulseAudio grabs sound card and reroutes audio to it directly<br />
<br />
With QJackCTL, set up these scripts:<br />
<br />
{{ic|pulse-jack-pre-start.sh}} set it up as the execute script on startup script<br />
#!/bin/bash<br />
pacmd suspend true<br />
<br />
{{ic|pulse-jack-post-start.sh}} set this one up as execute script after startup<br />
#!/bin/bash<br />
pactl load-module module-jack-sink channels=2<br />
pactl load-module module-jack-source channels=2<br />
pacmd set-default-sink jack_out<br />
pacmd set-default-source jack_in<br />
<br />
{{ic|pulse-jack-pre-stop.sh}} "execute script on shutdown"<br />
#!/bin/bash<br />
SINKID=$(pactl list | grep -B 1 "Name: module-jack-sink" | grep Module | sed 's/[^0-9]//g')<br />
SOURCEID=$(pactl list | grep -B 1 "Name: module-jack-source" | grep Module | sed 's/[^0-9]//g')<br />
pactl unload-module $SINKID<br />
pactl unload-module $SOURCEID<br />
sleep 5<br />
<br />
{{ic|pulse-jack-post-stop.sh}} "execute script after shutdown"<br />
#!/bin/bash<br />
pacmd suspend false<br />
<br />
===The old way===<br />
The JACK-Audio-Connection-Kit is popular for audio work, and is widely supported by Linux audio applications. It fills a similar niche as PulseAudio, but with more of an emphasis on professional audio work. In particular, audio applications such as Ardour and Audacity (recently) work well with Jack.<br />
<br />
PulseAudio provides module-jack-source and module-jack-sink which allow PulseAudio to be run as a sound server above the JACK daemon. This allows the usage of per-volume adjustments and the like for the apps which need it, play-back apps for movies and audio, while allowing low-latency and inter-app connectivity for sound-processing apps which connect to JACK. However, this will prevent PulseAudio from directly writing to the sound card buffers, which will increase overall CPU usage.<br />
<br />
To just try PA on top of JACK, have PA load the necessary modules on start:<br />
pulseaudio -L module-jack-sink -L module-jack-source<br />
<br />
To use PulseAudio with JACK, JACK must be started before PulseAudio, using whichever method one prefers. PulseAudio then needs to be started loading the two relevant modules. Edit {{ic|/etc/pulse/default.pa}}, and change the following region:<br />
### Load audio drivers statically (it is probably better to not load<br />
### these drivers manually, but instead use module-hal-detect --<br />
### see below -- for doing this automatically)<br />
#load-module module-alsa-sink<br />
#load-module module-alsa-source device=hw:1,0<br />
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-null-sink<br />
#load-module module-pipe-sink<br />
<br />
### Automatically load driver modules depending on the hardware available<br />
.ifexists module-udev-detect.so<br />
load-module module-udev-detect<br />
.else<br />
### Alternatively use the static hardware detection module (for systems that<br />
### lack udev support)<br />
load-module module-detect<br />
.endif<br />
<br />
to the following:<br />
### Load audio drivers statically (it is probably better to not load<br />
### these drivers manually, but instead use module-hal-detect --<br />
### see below -- for doing this automatically)<br />
#load-module module-alsa-sink<br />
#load-module module-alsa-source device=hw:1,0<br />
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-null-sink<br />
#load-module module-pipe-sink<br />
load-module module-jack-source<br />
load-module module-jack-sink<br />
<br />
### Automatically load driver modules depending on the hardware available<br />
#.ifexists module-udev-detect.so<br />
#load-module module-udev-detect<br />
#.else<br />
### Alternatively use the static hardware detection module (for systems that<br />
### lack udev support)<br />
#load-module module-detect<br />
#.endif<br />
<br />
Basically, this prevents module-udev-detect from loading. module-udev-detect will always try to grab the sound card (JACK has already done that, so this will cause an error). Also, the JACK source and sink must be explicitly loaded.<br />
<br />
====QjackCtl with start-up/shutdown scripts====<br />
Using the settings listed above, use QjackCtl to execute a script upon startup and shutdown to load/unload PulseAudio. Part of the reason users may wish to do this is that the above changes disable PulseAudio's automatic hardware detection modules. This particular setup is for using PulseAudio in an exclusive fashion with JACK, though the scripts could be modified to unload and load an alternate non-JACK setup, but killing and starting PulseAudio while programs might be using it would become problematic.<br />
<br />
{{Note|padevchooser in the following example is deprecated. It is replaced by pasystray}}<br />
<br />
The following example could be used and modified as necessary as a startup script that daemonizes PulseAudio and loads the ''padevchooser'' program (optional, needs to be built from AUR) called {{ic|jack_startup}}:<br />
#!/bin/bash<br />
#Load PulseAudio and PulseAudio Device Chooser<br />
<br />
pulseaudio -D<br />
padevchooser&<br />
<br />
as well as a shutdown script to kill PulseAudio and the Pulse Audio Device Chooser, as another example called {{ic|jack_shutdown}} also in the home directory:<br />
#!/bin/bash<br />
#Kill PulseAudio and PulseAudio Device Chooser<br />
<br />
pulseaudio --kill<br />
killall padevchooser<br />
<br />
Both scripts need to be made executable:<br />
chmod +x jack_startup jack_shutdown<br />
<br />
then with QjackCtl loaded, click on the ''Setup'' button and then the ''Options'' tab and tick both "Execute Script after Startup:" And "Execute Script on Shutdown:" and put either use the ... button or type the path to the scripts (assuming the scripts are in the home directory) {{ic|~/jack_startup}} and {{ic|~/jack_shutdown}} making sure to save the changes.<br />
<br />
==PulseAudio through OSS==<br />
Add the following to {{ic|/etc/pulse/default.pa}}:<br />
load-module module-oss<br />
<br />
Then start PulseAudio as usual, making sure that sinks and sources are defined for OSS devices.<br />
<br />
==PulseAudio from within a chroot (e.g. 32-bit chroot in 64-bit install)==<br />
Since a chroot sets up an alternative root for the running/jailing of applications, PulseAudio must be installed within the chroot itself ({{ic|pacman -S pulseaudio}} within the chroot environment).<br />
<br />
PulseAudio, if not set up to connect to any specific server (this can be done in {{ic|/etc/pulse/client.conf}}, through the PULSE_SERVER environment variable, or through publishing to the local X11 properties using module-x11-publish), will attempt to connect to the local pulse server, failing which it will spawn a new pulse server. Each pulse server has a unique ID based on the machine-id value in {{ic|/var/lib/dbus}}. To allow for chrooted apps to access the pulse server, the following directories must be mounted within the chroot:-<br />
/run<br />
/var/lib/dbus<br />
/tmp<br />
~/config/.pulse<br />
<br />
{{ic|/dev/shm}} should also be mounted for efficiency and good performance. Note that mounting /home would normally also allow sharing of the {{ic|~/.pulse}} folder.<br />
<br />
PulseAudio selects the path to the socket via XDG_RUNTIME_DIR, so be sure to drag it along when you chroot as a normal user using [[sudo]] (see [[Sudo#Environment variables]]).<br />
<br />
For specific direction on accomplishing the appropriate mounts, please refer to the wiki on installing a bundled 32-bit system, especially the [[Install bundled 32-bit system in Arch64#Allow 32-bit applications access to 64-bit PulseAudio|additional section]] specific to PulseAudio.<br />
<br />
==Disabling automatic spawning of PulseAudio server==<br />
Some users may prefer to manually start the PulseAudio server before running certain programs and then stop the PulseAudio server when they are finished. A simple way to accomplish this is to edit {{ic|~/.config/pulse/client.conf}} or {{ic|/etc/pulse/client.conf}} and change {{ic|1=autospawn = yes}} to {{ic|1=autospawn=no}}. Make sure the line is uncommented as well.<br />
{{hc|~/.config/pulse/client.conf #or /etc/pulse/client.conf|<nowiki><br />
autospawn=no<br />
</nowiki>}}<br />
Now you can manually start the pulseaudio server with<br />
$ pulseaudio --start<br />
and stop it with<br />
$ pulseaudio --kill<br />
<br />
This setting is also respected by the default pulseaudio dektop session startup script {{ic|start-pulseaudio-x11}} which is executed from {{ic|/etc/xdg/autostart/pulseaudio.desktop}}.<br />
<br />
==Disabling pulseaudio daemon altogether==<br />
To disable the pulseaudio daemon completely, and thereby preventing it from starting, one can add {{ic|1=daemon-binary=/bin/true}} to the configuration file.<br />
{{hc|~/.config/pulse/client.conf #or /etc/pulse/client.conf|<nowiki><br />
daemon-binary=/bin/true<br />
</nowiki>}}<br />
<br />
<br />
==Remap stereo to mono==<br />
Remap a stereo input-sink to a mono sink by creating a virtual sink. It would be useful if you only have one speaker. Add to {{ic|/etc/pulse/default.pa}}:<br />
<br />
load-module module-remap-sink master=alsa_output.pci-0000_00_1f.5.analog-stereo sink_name=mono channels=2 channel_map=mono,mono<br />
# Optional: Select new remap as default<br />
set-default-sink mono<br />
<br />
(replace alsa_output.pci-0000_00_1f.5.analog-stereo in the sound card name shown from {{ic|pacmd list-sinks}})<br />
<br />
Switch player between virtual mono sink and real stereo sink.<br />
<br />
==Swap left/right channels==<br />
This is the same as "reverse stereo", where the left and right channels are to be swapped.<br />
<br />
First, identify the card you want its channels swapped:<br />
$ cat /proc/asound/cards<br />
and use the name string for the device you wish to use (the one in square brackets, e.g. [Intel]).<br />
<br />
Edit {{ic|/etc/pulse/default.pa}} and comment out module-hal-detect and module-detect lines.<br />
<br />
Search for the commented-out line that starts "#load-module module-alsa-sink", uncomment it and change it to<br />
<br />
load-module module-alsa-sink device=hw:[device name] channel_map=right,left<br />
Restart the pulseaudio deamon by running<br />
pulseaudio -k; pulseaudio -D<br />
<br />
[https://www.freedesktop.org/wiki/Software/PulseAudio/FAQ/#index34h3 Pulseaudio FAQ: How can I reverse my left and right speaker channels?]<br />
<br />
== PulseAudio as a minimal unintrusive dumb pipe to ALSA ==<br />
Some people do not want to run PulseAudio all the time for various reasons. This example will turn the full fledged audio server into an unobstrusive dumb pipe to ALSA devices that automatically starts '''and''' stops itself when done, allowing applications that requires PulseAudio to fully function while not touching any ALSA setting nor setting itself as the default ALSA device.<br />
<br />
This configuration tells native PA clients to autospawn the daemon when they need it, then the daemon is configured to autoexit as soon as all clients have disconnected. The daemon itself uses a plain simple static configuration that uses your configured {{ic|pcm.!default}} ALSA devices and nothing more. No replacement of ALSA's default, no playing with mixer levels, nothing but record/playback. Also make sure {{Pkg|pulseaudio-alsa}} is '''not''' installed so standard ALSA clients don't default to pulse. {{ic|alsamixer}} functions properly as well as any other ALSA clients. Also make sure common frameworks like Xine, Gstreamer and Phonon are configured to use ALSA: by default if they detect PulseAudio is installed they will try to use it before ALSA.<br />
<br />
{{hc|/etc/pulse/daemon.conf|<nowiki><br />
# Replace these with the proper values<br />
exit-idle-time = 0 # Exit as soon as unneeded<br />
flat-volumes = yes # Prevent messing with the master volume<br />
</nowiki>}}<br />
<br />
{{hc|/etc/pulse/client.conf|<nowiki><br />
# Replace these with the proper values<br />
<br />
# Applications that uses PulseAudio *directly* will spawn it,<br />
# use it, and pulse will exit itself when done because of the<br />
# exit-idle-time setting in daemon.conf<br />
autospawn = yes<br />
</nowiki>}}<br />
<br />
{{hc|/etc/pulse/default.pa|<nowiki><br />
# Replace the *entire* content of this file with these few lines and<br />
# read the comments<br />
<br />
.fail<br />
# Set tsched=0 here if you experience glitchy playback. This will<br />
# revert back to interrupt-based scheduling and should fix it.<br />
#<br />
# Replace the device= part if you want pulse to use a specific device<br />
# such as "dmix" and "dsnoop" so it doesn't lock an hw: device.<br />
<br />
# INPUT/RECORD<br />
load-module module-alsa-source device="default" tsched=1<br />
<br />
# OUTPUT/PLAYBACK<br />
load-module module-alsa-sink device="default" tsched=1 <br />
<br />
# Accept clients -- very important<br />
load-module module-native-protocol-unix<br />
<br />
.nofail<br />
.ifexists module-x11-publish.so<br />
# Publish to X11 so the clients know how to connect to Pulse. Will<br />
# clear itself on unload.<br />
load-module module-x11-publish<br />
.endif<br />
</nowiki>}}</div>Noushttps://wiki.archlinux.org/index.php?title=PulseAudio/Examples&diff=426913PulseAudio/Examples2016-03-21T00:38:45Z<p>Nous: /* Swap left/right channels */ Update info from upstream</p>
<hr />
<div>[[Category:Sound]]<br />
[[it:PulseAudio/Examples]]<br />
[[ja:PulseAudio/サンプル]]<br />
[[ru:PulseAudio/Examples]]<br />
== Set default input sources ==<br />
<br />
List available input sources<br />
{{hc|<nowiki>$ pacmd list-sources | grep -e device.string -e 'name:'</nowiki>|2=<br />
name: <input><br />
device.string = "hw:2"<br />
name: <oss_input.dsp><br />
device.string = "/dev/dsp"<br />
name: <alsa_output.pci-0000_04_01.0.analog-stereo.monitor><br />
name: <combined.monitor><br />
}}<br />
<br />
For permanent store in the ''default.pa'' file.<br />
<br />
Make OSS default<br />
set-default-source alsa_output.pci-0000_04_01.0.analog-stereo.monitor<br />
<br />
Or<br />
<br />
Make ALSA default<br />
set-default-source set-default-source alsa_output.pci-0000_04_01.0.analog-stereo.monitor<br />
<br />
For temporary use<br />
$ pacmd "set-default-source set-default-source alsa_output.pci-0000_04_01.0.analog-stereo.monitor"<br />
<br />
== Set the default output source ==<br />
<br />
Determine the name of the new source, which has a * in front of index:<br />
{{hc|<nowiki>$ pacmd list-sinks | grep -e 'name:' -e 'index'</nowiki>|<br />
* index: 0<br />
name: <alsa_output.pci-0000_04_01.0.analog-stereo><br />
index: 1<br />
name: <combined><br />
}}<br />
<br />
For setting it as default in the ''default.pa'' you can use<br />
set-default-sink alsa_output.pci-0000_04_01.0.analog-stereo<br />
<br />
When done then you can logout/login or restart PulseAudio manually for these changes to take effect.<br />
<br />
{{Note|1=<nowiki></nowiki><br />
* The sinks that are set as default are marked with {{ic|*}} in front of the index.<br />
* The numbering of sinks is not guaranteed to be persistent, so all sinks in the {{ic|default.pa}} file should be identified by the name.<br />
* For quick identification at runtime (e.g. to manage sound volume), you can use the sink index instead of the sink name: {{bc|<nowiki><br />
$ pactl set-sink-volume 0 +3%<br />
$ pactl set-sink-volume 0 -- -3%<br />
$ pactl set-sink-mute 0 toggle<br />
</nowiki>}}<br />
* To avoid unnecessary overriding of 100% normal volume it is better to use alternative utilities for managing of sound. See the [https://bbs.archlinux.org/viewtopic.php?id=124513 forum thread] for more information.}}<br />
<br />
== Simultaneous HDMI and analog output ==<br />
PulseAudio allows for simultaneous output to multiple sources. In this example, some applications are configured to use HDMI while others are configured to use analog. Multiple applications are able to receive audio at the same time.<br />
{{bc|$ aplay -l<br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: ALC889A Analog [ALC889A Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: ALC889A Digital [ALC889A Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 3: HDMI 0 [HDMI 0]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0}}<br />
<br />
Or by using the the {{ic|pacmd}} command: <br />
<br />
{{hc|<nowiki>$ pacmd list-sinks | grep -e 'name:' -e 'alsa.device ' -e 'alsa.subdevice '</nowiki>|<nowiki><br />
name: <alsa_output.pci-0000_00_1b.0.analog-stereo><br />
alsa.subdevice = "0"<br />
alsa.device = "0"</nowiki>}}<br />
<br />
The key to a configuration like this is to understand that whatever is selected in pavucontrol under ''Configuration > Internal Audio'' is the default device. Load ''pavucontrol > Configuration'' and select HDMI as the profile. <br />
<br />
To setup the analog device as a secondary source, add the following to the {{ic|/etc/pulse/default.pa}} configuration at the beginning, before any other modules are loaded: <br />
<br />
### Load analog device<br />
load-module module-alsa-sink device=hw:0,0<br />
load-module module-combine-sink sink_name=combined<br />
set-default-sink combined<br />
<br />
Restart PulseAudio, run ''pavucontrol'' and select the "Output Devices" tab. Three settings should be displayed:<br />
# Internal Audio Digital Stereo (HDMI)<br />
# Internal Audio<br />
# Simultaneous output to Internal Audio Digital Stereo (HDMI), Internal Audio<br />
<br />
Now start a program that will use PulseAudio such as MPlayer, VLC, mpd, etc. and switch to the "Playback" tab. A drop-down list should be available for the running program to select one of the three sources.<br />
<br />
Also see [https://bbs.archlinux.org/viewtopic.php?id=118026 this thread] for a variation on this theme and [http://www.freedesktop.org/wiki/Software/PulseAudio/FAQ#Can_I_use_PulseAudio_to_playback_music_on_two_sound_cards_simultaneously.3F PulseAudio FAQ].<br />
<br />
==HDMI output configuration==<br />
As outlined in ftp://download.nvidia.com/XFree86/gpu-hdmi-audio-document/gpu-hdmi-audio.html#_issues_in_pulseaudio unless the HDMI port is the first<br />
output, PulseAudio will not be able to have any audio when using certain graphics cards with HDMI audio support. This is because of a bug in PulseAudio where it will only select the first HDMI output on a device. A work around posted further down is to first find which HDMI output is working by using the aplay utility from ALSA.<br />
<br />
The original title for this section indicated the problem is specific to nVidia cards. As seen in [https://bbs.archlinux.org/viewtopic.php?id=133222 this forum thread] other cards are affected as well. The rest of the section will use an nVidia card as a case-study but the solution should carry over for people using other affected cards.<br />
<br />
===Finding HDMI output===<br />
Then find the working output by listing the available cards<br />
# aplay -l<br />
<br />
sample output:<br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: NVidia [HDA NVidia], device 0: ALC1200 Analog [ALC1200 Analog]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 0: NVidia [HDA NVidia], device 3: ALC1200 Digital [ALC1200 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 3: HDMI 0 [HDMI 0]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 7: HDMI 0 [HDMI 0]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 8: HDMI 0 [HDMI 0]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 1: NVidia_1 [HDA NVidia], device 9: HDMI 0 [HDMI 0]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
<br />
===Testing for the correct card===<br />
Now a list of the detected cards is known, users will need to test for which one is outputting to the TV/monitor<br />
# aplay -D plughw:1,3 /usr/share/sounds/alsa/Front_Right.wav<br />
<br />
where 1 is the card and 3 is the device substitute in the values listed from the previous section. If there is no audio, then try substituting a different device (on my card I had to use card 1 device 7)<br />
<br />
===Manually configuring PulseAudio to detect the Nvidia HDMI===<br />
Having identified which HDMI device is working, PulseAudio can be forced to use it via an edit to {{ic|/etc/pulse/default.pa}}:<br />
# load-module module-alsa-sink device=hw:1,7<br />
<br />
where the 1 is the card and the 7 is the device found to work in the previous section<br />
<br />
restart pulse audio<br />
$ pulseaudio -k<br />
$ pulseaudio --start<br />
<br />
open the sound settings manager, make sure that under the hardware tab the graphics cards HDMI audio is set to "Digital Stereo (HDMI) Output" (My graphics card audio is called "GF100 High Definition Audio Controller").<br />
<br />
Then, open the output tab. There should now be two HDMI outputs for the graphics card. Test which one works by selecting one of them, and then using a program to play audio. For example, use VLC to play a movie, and if it does not work, then select the other.<br />
<br />
=== Automatically switch audio to HDMI ===<br />
<br />
{{Style|Dodgy code, e.g. hardcodes DISPLAY}}<br />
Create a script to switch to the desired audio profile if an HDMI cable is plugged in:<br />
<br />
{{hc|/usr/local/bin/hdmi_sound_toggle.sh|2=<nowiki><br />
#!/bin/bash<br />
USER_NAME=$(w -hs | awk -v vt=tty$(fgconsole) '$0 ~ vt {print $1}')<br />
USER_ID=$(id -u "$USER_NAME")<br />
HDMI_STATUS=$(</sys/class/drm/card0/*HDMI*/status)<br />
<br />
export PULSE_SERVER="unix:/run/user/"$USER_ID"/pulse/native"<br />
<br />
if [[ $HDMI_STATUS == connected ]]<br />
then<br />
sudo -u "$USER_NAME" pactl --server "$PULSE_SERVER" set-card-profile 0 output:hdmi-stereo+input:analog-stereo<br />
else<br />
sudo -u "$USER_NAME" pactl --server "$PULSE_SERVER" set-card-profile 0 output:analog-stereo+input:analog-stereo<br />
fi<br />
</nowiki>}}<br />
<br />
Make the script executable:<br />
<br />
chmod +x /usr/local/bin/hdmi_sound_toggle.sh<br />
<br />
Create a udev rule to run this script when the status of the HDMI change:<br />
{{Note|udev rule can't directly run a script, a workaround is to use a .service to run this script}}<br />
<br />
{{hc|/etc/udev/rules.d/99-hdmi_sound.rules|2=<br />
KERNEL=="card0", SUBSYSTEM=="drm", ACTION=="change", RUN+="/usr/bin/systemctl start hdmi_sound_toggle.service"<br />
}}<br />
<br />
Finally, create the .service file required by the udev rule above:<br />
{{hc|/etc/systemd/system/hdmi_sound_toggle.service|2=<br />
[Unit]<br />
Description=hdmi sound hotplug<br />
<br />
[Service]<br />
Type=simple<br />
RemainAfterExit=no<br />
ExecStart=/usr/local/bin/hdmi_sound_toggle.sh<br />
<br />
[Install]<br />
WantedBy=multi-user.target<br />
}}<br />
<br />
To make the change effective don't forget to reload the udev rules:<br />
udevadm control --reload-rules<br />
A reboot can be required.<br />
<br />
==Surround sound systems==<br />
Many people have a surround sound card, but have speakers for just two channels, so PulseAudio cannot really default to a surround sound setup. To enable all of the channels, edit {{ic|/etc/pulse/daemon.conf}}: uncomment the default-sample-channels line (i.e. remove the semicolon from the beginning of the line) and set the value to '''6'''. For a ''5.1'' setup, or '''8''' for a ''7.1'' setup etc.<br />
# Default<br />
default-sample-channels=2<br />
# For 5.1<br />
default-sample-channels=6<br />
# For 7.1<br />
default-sample-channels=8<br />
<br />
If your channels are not correclty mapped or the volume controls for the individual channels do not work as expected in pavucontrol, and you have a HDMI and an anlog soundcard, then try to add the following line to {{ic|/etc/pulse/default.pa}}<br />
<br />
load-module module-combine channels=6 channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe<br />
<br />
Note that this example is for a 5.1 setup.<br />
<br />
After doing the edit, restart PulseAudio.<br />
<br />
=== Splitting front/rear ===<br />
<br />
Connect speakers to front analog output and headphones to rear output. It would be useful to split front/rear to separate sinks. Add to {{ic|/etc/pulse/default.pa}}:<br />
<br />
load-module module-remap-sink sink_name=speakers remix=no master=alsa_output.pci-0000_05_00.0.analog-surround-40 channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right<br />
load-module module-remap-sink sink_name=headphones remix=no master=alsa_output.pci-0000_05_00.0.analog-surround-40 channels=2 master_channel_map=rear-left,rear-right channel_map=front-left,front-right<br />
Make sure to replace alsa_output.pci-0000_05_00.0.analog-surround-40 with the sound card name shown in 'pacmd list-sinks'.<br />
Now you have 2 additional sinks which can be used separately. You can choose 'sink_name' freely, as long as there is no sink with that name already. The 'remix' parameter controls whether the audio should be down-/upmixed to match the channels in the sink.<br />
<br />
{{Tip|If pulseaudio fails with {{ic|master sink not found}}, comment out the remapping lines, start PulseAudio and verify your card output is set to the one you specified (e.g. analog surround 4.0). Alternatively, try using a [[#Set the defaulting output source|sink index]] instead of a sink name.}}<br />
<br />
===Splitting 7.1 into 5.1+2.0===<br />
<br />
Similar to the example above, you can also split a 7.1 configuration into 5.1 surround and stereo output devices.<br />
Set your card to 7.1 mode, then add the following lines to {{ic|/etc/pulse/default.pa}}:<br />
load-module module-remap-sink sink_name=Surround remix=no master=alsa_output.pci-0000_00_14.2.analog-surround-71 channels=6 master_channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe<br />
load-module module-remap-sink sink_name=Stereo remix=yes master=alsa_output.pci-0000_00_14.2.analog-surround-71 channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right<br />
<br />
Make sure to replace alsa_output.pci-0000_00_14.2 with your sound card name, get it by running 'pacmd list-sinks'.<br />
This configuration will use the front/rear/center+lfe (green/black/orange) jacks for the 5.1 sink and the side (grey) jack for the stereo sink.<br />
It will also downmix any audio to stereo for the stereo sink, but will not touch the 5.1 output.<br />
<br />
{{Tip|If pulseaudio fails with {{ic|master sink not found}}, comment out the remapping lines, start PulseAudio and verify your card output is set to analog surround 7.1. Alternatively, try using a [[#Set the defaulting output source|sink index]] instead of a sink name.}}<br />
{{Note|The {{ic|1=remix=yes}} parameter will only work if you also have {{ic|1=enable-remixing = yes}} in your {{ic|/etc/pulse/daemon.conf}} (default).}}<br />
<br />
===Disabling LFE remixing===<br />
By default, PulseAudio remixes the number of channels to the default-sample-channels and since version 7 it also remixes the LFE channel. If you wish to disable LFE remixing, uncomment the line:<br />
<br />
; enable-lfe-remixing = yes<br />
<br />
and replace yes with no:<br />
<br />
enable-lfe-remixing = no<br />
<br />
then restart Pulseaudio.<br />
<br />
==PulseAudio over network==<br />
One of PulseAudio's unique features is its ability to stream audio from clients over TCP to a server running the PulseAudio daemon reliably within a LAN.<br />
<br />
To accomplish this, one needs to enable module-native-protocol-tcp. <br />
<br />
===TCP support (networked sound)===<br />
To enable the TCP module, add this to (or uncomment, if already there) {{ic|/etc/pulse/default.pa}} on both the client and server:<br />
load-module module-native-protocol-tcp<br />
<br />
For this to work, it is a requirement that both the client and server share the same cookie. Ensure that the clients and server share the same cookie file found under {{ic|~/.config/pulse/cookie}}. It does not matter whose cookie file you use (the server or a client's), just that the server and client(s) share the same one.<br />
<br />
Note: If experiencing trouble connecting, use (on server)<br />
pacmd list-modules<br />
<br />
===TCP support with anonymous clients===<br />
If it is undesirable to copy the cookie file from clients, anonymous clients can access the server by giving these parameters to module-native-protocol-tcp on the server (again in {{ic|/etc/pulse/default.pa}}):<br />
<br />
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/24 auth-anonymous=1<br />
<br />
Change the LAN IP subnet to match that of the those clients you wish to have access to the server.<br />
<br />
===Zeroconf (Avahi) publishing===<br />
For the remote PulseAudio server to appear in the PulseAudio Device Chooser ({{ic|pasystray}}), load the appropriate zeroconf modules, and enable the [[Avahi]] [[daemon]].<br />
<br />
On both machines, run:<br />
$ systemctl start avahi-daemon<br />
$ systemctl enable avahi-daemon<br />
On the server, add {{ic|load-module module-zeroconf-publish}} to {{ic|/etc/pulse/default.pa}}, on the client, add {{ic|load-module module-zeroconf-discover}} to {{ic|/etc/pulse/default.pa}}. Now redirect any stream or complete audio output to the remote PulseAudio server by selecting the appropriate sink.<br />
<br />
If you have issues with the remote syncs appearing on the client, try restarting the Avahi daemon on the server to rebroadcast the available interfaces.<br />
<br />
===Switching the PulseAudio server used by local X clients===<br />
To switch between servers on the client from within X, the {{ic|pax11publish}} command can be used. For example, to switch from the default server to the server at hostname foo:<br />
$ pax11publish -e -S foo<br />
<br />
Or to switch back to the default:<br />
$ pax11publish -e -r<br />
<br />
Instead of telling the PulseAudio server to stream audio (as described above), this will edit PulseAudio variables on the X11 root window, which will instruct the PulseAudio client libraries to connect to a PulseAudio server other than {{ic|localhost}}. As such, the programs will no longer interact with the local {{ic|pulseaudio}} process, which can then be [[stop]]ped. Programs such as {{ic|pactl}}, {{ic|pacmd}} or {{ic|pavucontrol}} will need to also run with the appropriate {{ic|PULSE_SERVER}} environment/X variable to control the remote PulseAudio server.<br />
<br />
Note that for the switch to become apparent, the programs using Pulse must be restarted, or their PulseAudio client library otherwise reinitialized (completely stopping and restarting playback may be enough). To make this setting permanent, edit {{ic|default-server}} in {{ic|~/.config/pulse/client.conf}} or {{ic|/etc/pulse/client.conf}}.<br />
<br />
===When everything else seems to fail===<br />
The following is a quick fix and NOT a permanent solution<br />
<br />
On the server:<br />
$ paprefs <br />
Go to Network Access -> Enable access to local sound devices (Also check both 'Allow discover' and 'Don't require authentication').<br />
<br />
On the client:<br />
$ export PULSE_SERVER=server.ip && mplayer test.mp3<br />
<br />
==ALSA monitor source==<br />
To be able to record from a monitor source (a.k.a. "What-U-Hear", "Stereo Mix"), use {{ic|pactl list}} to find out the name of the source in PulseAudio (e.g. {{ic|alsa_output.pci-0000_00_1b.0.analog-stereo.monitor}}). Then add lines like the following to {{ic|/etc/asound.conf}} or {{ic|~/.asoundrc}}:<br />
pcm.pulse_monitor {<br />
type pulse<br />
device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor<br />
}<br />
<br />
ctl.pulse_monitor {<br />
type pulse<br />
device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor<br />
}<br />
<br />
Now you can select {{ic|pulse_monitor}} as a recording source.<br />
<br />
Alternatively, you can use pavucontrol to do this: make sure you have set up the display to "All input devices", then select "Monitor of [your sound card]" as the recording source.<br />
<br />
== Monitor specific output ==<br />
<br />
It is possible to monitor a specific output, for example to stream audio from a music player into a VOIP application.<br />
Simply create a null output device:<br />
<br />
pactl load-module module-null-sink sink_name=<name><br />
<br />
In Pulseaudio Volume Control (pavucontrol), under the "Playback" tab, change the output of an application to <name>, and in the recording tab change the input of an application to "Monitor of <name>". Audio will now be outputted from one application into the other.<br />
<br />
==PulseAudio through JACK==<br />
===The new new way===<br />
This configuration only works with jackdbus (JACK2 compiled with D-Bus support). It also requires the {{Pkg|pulseaudio-jack}} package. Make sure that {{ic|/etc/pulse/default.pa}} contains a line:<br />
load-module module-jackdbus-detect ''options''<br />
Where {{ic|''options''}} can be any options supported by this module, usually {{ic|1=channels=2}}.<br />
<br />
As described on the [https://github.com/jackaudio/jackaudio.github.com/wiki/JackDbusPackaging Jack-DBUS Packaging] page:<br />
<br />
''Server auto-launching is implemented as D-Bus call that auto-activates JACK D-Bus service, in case it is not already started, and starts the JACK server. Correct interaction with PulseAudio is done using a D-Bus based audio card "acquire/release" mechanism. When JACK server starts, it asks this D-Bus service to acquire the audio card and PulseAudio will unconditionally release it. When JACK server stops, it releases the audio card that can be grabbed again by PulseAudio.''<br />
<br />
{{ic|module-jackdbus-detect.so}} dynamically loads and unloads module-jack-sink and module-jack-source when jackdbus is started and stopped.<br />
<br />
If PulseAudio sound does not work, check with {{ic|pavucontrol}} to see if the relevant programs appear in the playback tab. If not, add the following to {{ic|~/.asound.conf}} or {{ic|/etc/asound.conf}} to redirect ALSA to PulseAudio:<br />
<br />
pcm.pulse {<br />
type pulse<br />
}<br />
<br />
ctl.pulse {<br />
type pulse<br />
}<br />
<br />
pcm.!default {<br />
type pulse<br />
}<br />
ctl.!default {<br />
type pulse<br />
}<br />
<br />
If it still does not work, check with {{ic|pavucontrol}} in the playback tab and make sure the relevant programs are outputting to PulseAudio JACK Sink instead of your audio card (which JACK has control of, so it will not work).<br />
<br />
===The new way===<br />
The basic idea is that killing PulseAudio is a bad idea because it may crash any apps using PulseAudio and disrupt any audio playing.<br />
<br />
The flow of how this setup works:<br />
<br />
# PulseAudio releases the sound card<br />
# JACK grabs sound card and starts up<br />
# script redirects PulseAudio to JACK<br />
# manually send PulseAudio apps to JACK output (pavucontrol may come in helpful for this)<br />
# use JACK programs etc<br />
# via script, stop redirecting PulseAudio to JACK<br />
# stop JACK and release sound card<br />
# PulseAudio grabs sound card and reroutes audio to it directly<br />
<br />
With QJackCTL, set up these scripts:<br />
<br />
{{ic|pulse-jack-pre-start.sh}} set it up as the execute script on startup script<br />
#!/bin/bash<br />
pacmd suspend true<br />
<br />
{{ic|pulse-jack-post-start.sh}} set this one up as execute script after startup<br />
#!/bin/bash<br />
pactl load-module module-jack-sink channels=2<br />
pactl load-module module-jack-source channels=2<br />
pacmd set-default-sink jack_out<br />
pacmd set-default-source jack_in<br />
<br />
{{ic|pulse-jack-pre-stop.sh}} "execute script on shutdown"<br />
#!/bin/bash<br />
SINKID=$(pactl list | grep -B 1 "Name: module-jack-sink" | grep Module | sed 's/[^0-9]//g')<br />
SOURCEID=$(pactl list | grep -B 1 "Name: module-jack-source" | grep Module | sed 's/[^0-9]//g')<br />
pactl unload-module $SINKID<br />
pactl unload-module $SOURCEID<br />
sleep 5<br />
<br />
{{ic|pulse-jack-post-stop.sh}} "execute script after shutdown"<br />
#!/bin/bash<br />
pacmd suspend false<br />
<br />
===The old way===<br />
The JACK-Audio-Connection-Kit is popular for audio work, and is widely supported by Linux audio applications. It fills a similar niche as PulseAudio, but with more of an emphasis on professional audio work. In particular, audio applications such as Ardour and Audacity (recently) work well with Jack.<br />
<br />
PulseAudio provides module-jack-source and module-jack-sink which allow PulseAudio to be run as a sound server above the JACK daemon. This allows the usage of per-volume adjustments and the like for the apps which need it, play-back apps for movies and audio, while allowing low-latency and inter-app connectivity for sound-processing apps which connect to JACK. However, this will prevent PulseAudio from directly writing to the sound card buffers, which will increase overall CPU usage.<br />
<br />
To just try PA on top of JACK, have PA load the necessary modules on start:<br />
pulseaudio -L module-jack-sink -L module-jack-source<br />
<br />
To use PulseAudio with JACK, JACK must be started before PulseAudio, using whichever method one prefers. PulseAudio then needs to be started loading the two relevant modules. Edit {{ic|/etc/pulse/default.pa}}, and change the following region:<br />
### Load audio drivers statically (it is probably better to not load<br />
### these drivers manually, but instead use module-hal-detect --<br />
### see below -- for doing this automatically)<br />
#load-module module-alsa-sink<br />
#load-module module-alsa-source device=hw:1,0<br />
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-null-sink<br />
#load-module module-pipe-sink<br />
<br />
### Automatically load driver modules depending on the hardware available<br />
.ifexists module-udev-detect.so<br />
load-module module-udev-detect<br />
.else<br />
### Alternatively use the static hardware detection module (for systems that<br />
### lack udev support)<br />
load-module module-detect<br />
.endif<br />
<br />
to the following:<br />
### Load audio drivers statically (it is probably better to not load<br />
### these drivers manually, but instead use module-hal-detect --<br />
### see below -- for doing this automatically)<br />
#load-module module-alsa-sink<br />
#load-module module-alsa-source device=hw:1,0<br />
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input<br />
#load-module module-null-sink<br />
#load-module module-pipe-sink<br />
load-module module-jack-source<br />
load-module module-jack-sink<br />
<br />
### Automatically load driver modules depending on the hardware available<br />
#.ifexists module-udev-detect.so<br />
#load-module module-udev-detect<br />
#.else<br />
### Alternatively use the static hardware detection module (for systems that<br />
### lack udev support)<br />
#load-module module-detect<br />
#.endif<br />
<br />
Basically, this prevents module-udev-detect from loading. module-udev-detect will always try to grab the sound card (JACK has already done that, so this will cause an error). Also, the JACK source and sink must be explicitly loaded.<br />
<br />
====QjackCtl with start-up/shutdown scripts====<br />
Using the settings listed above, use QjackCtl to execute a script upon startup and shutdown to load/unload PulseAudio. Part of the reason users may wish to do this is that the above changes disable PulseAudio's automatic hardware detection modules. This particular setup is for using PulseAudio in an exclusive fashion with JACK, though the scripts could be modified to unload and load an alternate non-JACK setup, but killing and starting PulseAudio while programs might be using it would become problematic.<br />
<br />
{{Note|padevchooser in the following example is deprecated. It is replaced by pasystray}}<br />
<br />
The following example could be used and modified as necessary as a startup script that daemonizes PulseAudio and loads the ''padevchooser'' program (optional, needs to be built from AUR) called {{ic|jack_startup}}:<br />
#!/bin/bash<br />
#Load PulseAudio and PulseAudio Device Chooser<br />
<br />
pulseaudio -D<br />
padevchooser&<br />
<br />
as well as a shutdown script to kill PulseAudio and the Pulse Audio Device Chooser, as another example called {{ic|jack_shutdown}} also in the home directory:<br />
#!/bin/bash<br />
#Kill PulseAudio and PulseAudio Device Chooser<br />
<br />
pulseaudio --kill<br />
killall padevchooser<br />
<br />
Both scripts need to be made executable:<br />
chmod +x jack_startup jack_shutdown<br />
<br />
then with QjackCtl loaded, click on the ''Setup'' button and then the ''Options'' tab and tick both "Execute Script after Startup:" And "Execute Script on Shutdown:" and put either use the ... button or type the path to the scripts (assuming the scripts are in the home directory) {{ic|~/jack_startup}} and {{ic|~/jack_shutdown}} making sure to save the changes.<br />
<br />
==PulseAudio through OSS==<br />
Add the following to {{ic|/etc/pulse/default.pa}}:<br />
load-module module-oss<br />
<br />
Then start PulseAudio as usual, making sure that sinks and sources are defined for OSS devices.<br />
<br />
==PulseAudio from within a chroot (e.g. 32-bit chroot in 64-bit install)==<br />
Since a chroot sets up an alternative root for the running/jailing of applications, PulseAudio must be installed within the chroot itself ({{ic|pacman -S pulseaudio}} within the chroot environment).<br />
<br />
PulseAudio, if not set up to connect to any specific server (this can be done in {{ic|/etc/pulse/client.conf}}, through the PULSE_SERVER environment variable, or through publishing to the local X11 properties using module-x11-publish), will attempt to connect to the local pulse server, failing which it will spawn a new pulse server. Each pulse server has a unique ID based on the machine-id value in {{ic|/var/lib/dbus}}. To allow for chrooted apps to access the pulse server, the following directories must be mounted within the chroot:-<br />
/run<br />
/var/lib/dbus<br />
/tmp<br />
~/config/.pulse<br />
<br />
{{ic|/dev/shm}} should also be mounted for efficiency and good performance. Note that mounting /home would normally also allow sharing of the {{ic|~/.pulse}} folder.<br />
<br />
PulseAudio selects the path to the socket via XDG_RUNTIME_DIR, so be sure to drag it along when you chroot as a normal user using [[sudo]] (see [[Sudo#Environment variables]]).<br />
<br />
For specific direction on accomplishing the appropriate mounts, please refer to the wiki on installing a bundled 32-bit system, especially the [[Install bundled 32-bit system in Arch64#Allow 32-bit applications access to 64-bit PulseAudio|additional section]] specific to PulseAudio.<br />
<br />
==Disabling automatic spawning of PulseAudio server==<br />
Some users may prefer to manually start the PulseAudio server before running certain programs and then stop the PulseAudio server when they are finished. A simple way to accomplish this is to edit {{ic|~/.config/pulse/client.conf}} or {{ic|/etc/pulse/client.conf}} and change {{ic|1=autospawn = yes}} to {{ic|1=autospawn=no}}. Make sure the line is uncommented as well.<br />
{{hc|~/.config/pulse/client.conf #or /etc/pulse/client.conf|<nowiki><br />
autospawn=no<br />
</nowiki>}}<br />
Now you can manually start the pulseaudio server with<br />
$ pulseaudio --start<br />
and stop it with<br />
$ pulseaudio --kill<br />
<br />
This setting is also respected by the default pulseaudio dektop session startup script {{ic|start-pulseaudio-x11}} which is executed from {{ic|/etc/xdg/autostart/pulseaudio.desktop}}.<br />
<br />
==Disabling pulseaudio daemon altogether==<br />
To disable the pulseaudio daemon completely, and thereby preventing it from starting, one can add {{ic|1=daemon-binary=/bin/true}} to the configuration file.<br />
{{hc|~/.config/pulse/client.conf #or /etc/pulse/client.conf|<nowiki><br />
daemon-binary=/bin/true<br />
</nowiki>}}<br />
<br />
<br />
==Remap stereo to mono==<br />
Remap a stereo input-sink to a mono sink by creating a virtual sink. It would be useful if you only have one speaker. Add to {{ic|/etc/pulse/default.pa}}:<br />
<br />
load-module module-remap-sink master=alsa_output.pci-0000_00_1f.5.analog-stereo sink_name=mono channels=2 channel_map=mono,mono<br />
# Optional: Select new remap as default<br />
set-default-sink mono<br />
<br />
(replace alsa_output.pci-0000_00_1f.5.analog-stereo in the sound card name shown from {{ic|pacmd list-sinks}})<br />
<br />
Switch player between virtual mono sink and real stereo sink.<br />
<br />
==Swap left/right channels==<br />
This is the same as "reverse stereo", where the left and right channels are to be swapped.<br />
<br />
First, identify the card you want its channels swapped:<br />
$ cat /proc/asound/cards<br />
and use the name string for the device you wish to use (the one in square brackets, e.g. [Intel]).<br />
<br />
Edit {{ic|/etc/pulse/default.pa}} and comment out module-hal-detect and module-detect lines.<br />
<br />
Search for the commented-out line that starts "#load-module module-alsa-sink", uncomment it and change it to<br />
<br />
load-module module-alsa-sink device=hw:[answer from step 0] channel_map=right,left<br />
Restart the pulseaudio deamon by running<br />
pulseaudio -k; pulseaudio -D<br />
<br />
[https://www.freedesktop.org/wiki/Software/PulseAudio/FAQ/#index34h3 Pulseaudio FAQ: How can I reverse my left and right speaker channels?]<br />
<br />
== PulseAudio as a minimal unintrusive dumb pipe to ALSA ==<br />
Some people do not want to run PulseAudio all the time for various reasons. This example will turn the full fledged audio server into an unobstrusive dumb pipe to ALSA devices that automatically starts '''and''' stops itself when done, allowing applications that requires PulseAudio to fully function while not touching any ALSA setting nor setting itself as the default ALSA device.<br />
<br />
This configuration tells native PA clients to autospawn the daemon when they need it, then the daemon is configured to autoexit as soon as all clients have disconnected. The daemon itself uses a plain simple static configuration that uses your configured {{ic|pcm.!default}} ALSA devices and nothing more. No replacement of ALSA's default, no playing with mixer levels, nothing but record/playback. Also make sure {{Pkg|pulseaudio-alsa}} is '''not''' installed so standard ALSA clients don't default to pulse. {{ic|alsamixer}} functions properly as well as any other ALSA clients. Also make sure common frameworks like Xine, Gstreamer and Phonon are configured to use ALSA: by default if they detect PulseAudio is installed they will try to use it before ALSA.<br />
<br />
{{hc|/etc/pulse/daemon.conf|<nowiki><br />
# Replace these with the proper values<br />
exit-idle-time = 0 # Exit as soon as unneeded<br />
flat-volumes = yes # Prevent messing with the master volume<br />
</nowiki>}}<br />
<br />
{{hc|/etc/pulse/client.conf|<nowiki><br />
# Replace these with the proper values<br />
<br />
# Applications that uses PulseAudio *directly* will spawn it,<br />
# use it, and pulse will exit itself when done because of the<br />
# exit-idle-time setting in daemon.conf<br />
autospawn = yes<br />
</nowiki>}}<br />
<br />
{{hc|/etc/pulse/default.pa|<nowiki><br />
# Replace the *entire* content of this file with these few lines and<br />
# read the comments<br />
<br />
.fail<br />
# Set tsched=0 here if you experience glitchy playback. This will<br />
# revert back to interrupt-based scheduling and should fix it.<br />
#<br />
# Replace the device= part if you want pulse to use a specific device<br />
# such as "dmix" and "dsnoop" so it doesn't lock an hw: device.<br />
<br />
# INPUT/RECORD<br />
load-module module-alsa-source device="default" tsched=1<br />
<br />
# OUTPUT/PLAYBACK<br />
load-module module-alsa-sink device="default" tsched=1 <br />
<br />
# Accept clients -- very important<br />
load-module module-native-protocol-unix<br />
<br />
.nofail<br />
.ifexists module-x11-publish.so<br />
# Publish to X11 so the clients know how to connect to Pulse. Will<br />
# clear itself on unload.<br />
load-module module-x11-publish<br />
.endif<br />
</nowiki>}}</div>Noushttps://wiki.archlinux.org/index.php?title=Unofficial_user_repositories&diff=415409Unofficial user repositories2016-01-14T22:04:39Z<p>Nous: /* openrc-eudev */ Mirror at heanet.ie</p>
<hr />
<div>[[Category:Package management]]<br />
[[ja:非公式ユーザーリポジトリ]]<br />
[[zh-CN:Unofficial user repositories]]<br />
{{Expansion|Please fill in the missing information about repository maintainers.}}<br />
<br />
{{Related articles start}}<br />
{{Related|pacman-key}}<br />
{{Related|Official repositories}}<br />
{{Related articles end}}<br />
<br />
This article lists binary repositories freely created and shared by the community, often providing pre-built versions of PKGBUILDS found in the [[AUR]].<br />
<br />
{{Warning|Neither the official Arch Linux Developers nor the Trusted Users perform tests of any sort to verify the contents of these repositories; it is up to each user to decide whether to trust their maintainers, and take full responsibility for whatever their decision brings.}}<br />
<br />
In order to use these repositories, you will have to add them to {{ic|/etc/pacman.conf}}, as explained in [[pacman#Repositories]]. If a repository is signed, you will have to obtain and locally sign the associated key, as explained in [[Pacman-key#Adding unofficial keys]].<br />
<br />
If you want to create your own custom repository, follow [[pacman tips#Custom local repository]].<br />
<br />
{{Tip|To get a list of all servers listed in this page: {{bc|<nowiki>curl 'https://wiki.archlinux.org/index.php/Unofficial_user_repositories' | grep 'Server = ' | sed "s/\$arch/$(uname -m)/g" | cut -f 3 -d' '</nowiki>}}<br />
<br />
For your convenience you can, for example, open them all in a web browser to inspect the contents of their repositories.<br />
}}<br />
<br />
== Adding your repository to this page ==<br />
<br />
If you have your own repository, please add it to this page, so that all the other users will know where to find your packages. Please keep the following rules when adding new repositories:<br />
<br />
* Keep the lists in alphabetical order.<br />
* Include some information about the maintainer: include at least a (nick)name and some form of contact information (web site, email address, user page on ArchWiki or the forums, etc.).<br />
* If the repository is of the ''signed'' variety, please include a key-id, possibly using it as the anchor for a link to its keyserver; if the key is not on a keyserver, include a link to the key file.<br />
* Include some short description (e.g. the category of packages provided in the repository).<br />
* If there is a page (either on ArchWiki or external) containing more information about the repository, include a link to it.<br />
* If possible, avoid using comments in code blocks. The formatted description is much more readable. Users who want some comments in their {{ic|pacman.conf}} can easily create it on their own.<br />
<br />
== Any ==<br />
<br />
"Any" repositories are architecture-independent. In other words, they can be used on both i686 and x86_64 systems.<br />
<br />
=== Signed ===<br />
<br />
==== bioinformatics-any ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some python packages and genome browser for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics-any]<br />
Server = http://decryptedepsilon.bl.ee/repo/any<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-fonts ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle-fonts repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-fonts]<br />
Server = http://bohoomil.com/repo/fonts<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/any<br />
# Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== pkgbuilder ====<br />
<br />
* '''Maintainer:''' [https://chriswarrick.com/ Chris Warrick]<br />
* '''Description:''' A repository for PKGBUILDer, a Python AUR helper.<br />
* '''Upstream page:''' https://github.com/Kwpolska/pkgbuilder<br />
* '''Key-ID:''' 5EAAEA16<br />
<br />
{{bc|<nowiki><br />
[pkgbuilder]<br />
Server = https://pkgbuilder-repo.chriswarrick.com/<br />
</nowiki>}}<br />
<br />
==== xyne-any ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for "any" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{Note|Use this repository only if there is no matching {{ic|[xyne-*]}} repository for your architecture.}}<br />
<br />
{{bc|<nowiki><br />
[xyne-any]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== archlinuxgr-any ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' The Hellenic (Greek) unofficial Arch Linux repository with many interesting packages.<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-any]<br />
Server = http://archlinuxgr.tiven.org/archlinux/any<br />
</nowiki>}}<br />
<br />
== Both i686 and x86_64 ==<br />
<br />
Repositories with both i686 and x86_64 versions. The {{ic|$arch}} variable will be set automatically by pacman.<br />
<br />
=== Signed ===<br />
<br />
==== arcanisrepo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#arcanis arcanis]<br />
* '''Description:''' A repository with some AUR packages including packages from VCS<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[arcanisrepo]<br />
Server = ftp://repo.arcanis.me/repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxcn ====<br />
<br />
* '''Maintainers:''' [https://plus.google.com/+PhoenixNemo/ Phoenix Nemo (phoenixlzx)], Felix Yan (felixonmars, TU), [https://twitter.com/lilydjwg lilydjwg], and others<br />
* '''Description:''' Packages by the Chinese Arch Linux community (mostly signed)<br />
* '''Git Repo:''' https://github.com/archlinuxcn/repo<br />
* '''Mirrors:''' https://github.com/archlinuxcn/mirrorlist-repo<br />
* '''Key-ID:''' Once the repo is added, ''archlinuxcn-keyring'' package must be installed before any other.<br />
<br />
{{bc|<nowiki><br />
[archlinuxcn]<br />
SigLevel = Optional TrustedOnly<br />
Server = http://repo.archlinuxcn.org/$arch<br />
</nowiki>}}<br />
<br />
==== bbqlinux ====<br />
<br />
* '''Maintainer:''' [https://plus.google.com/u/0/+DanielHillenbrand/about Daniel Hillenbrand]<br />
* '''Description:''' Packages for Android Development<br />
* '''Upstream Page:''' http://bbqlinux.org/<br />
* '''Key-ID:''' Get the ''bbqlinux-keyring'' package, as it contains the needed keys.<br />
<br />
{{bc|<nowiki><br />
[bbqlinux]<br />
Server = http://packages.bbqlinux.org/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst]<br />
Server = http://catalyst.wirephire.com/repo/catalyst/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst-hd234k ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst-hd234k]<br />
Server = http://catalyst.wirephire.com/repo/catalyst-hd234k/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst-hd234k/$arch<br />
</nowiki>}}<br />
<br />
==== city ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bgyorgy Balló György]<br />
* '''Description:''' Experimental/unpopular packages.<br />
* '''Upstream page:''' http://pkgbuild.com/~bgyorgy/city.html<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[city]<br />
Server = http://pkgbuild.com/~bgyorgy/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== demz-repo-archiso ====<br />
<br />
* '''Maintainer:''' [http://demizerone.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for installing ZFS from an Arch ISO live disk<br />
* '''Upstream page:''' https://github.com/demizer/archzfs<br />
* '''Key-ID:''' 5E1ABF240EE7A126<br />
<br />
{{bc|<nowiki><br />
[demz-repo-archiso]<br />
Server = http://demizerone.com/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== demz-repo-core ====<br />
<br />
* '''Maintainer:''' [http://demizerone.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for ZFS on Arch Linux.<br />
* '''Upstream page:''' https://github.com/demizer/archzfs<br />
* '''Key-ID:''' 5E1ABF240EE7A126<br />
<br />
{{bc|<nowiki><br />
[demz-repo-core]<br />
Server = http://demizerone.com/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== gnome-encfs-manager ====<br />
<br />
* '''Maintainer:''' Moritz Molch<br />
* '''Description:''' The gnome-encfs-manager can be used to integrate [[EncFS]]<br />
* '''Upstream page:''' [https://launchpad.net/gencfsm Gnome EncfsM].<br />
* '''Key ID:'''<br />
<br />
{{bc|<nowiki><br />
[home_moritzmolch_gencfsm_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/moritzmolch:/gencfsm/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== haskell-core ====<br />
<br />
* '''Maintainer:''' Magnus Therning<br />
* '''Description:''' Arch-Haskell repository<br />
* '''Upstream page:''' https://github.com/archhaskell/habs<br />
* '''Key-ID:''' 4209170B<br />
<br />
{{bc|<nowiki><br />
[haskell-core]<br />
Server = http://xsounds.org/~haskell/core/$arch<br />
</nowiki>}}<br />
<br />
==== infinality-bundle ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle main repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle]<br />
Server = http://bohoomil.com/repo/$arch<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== llvm-svn ====<br />
<br />
* '''Maintainer:''' [[User:Kerberizer|Luchesar V. ILIEV (kerberizer)]]<br />
* '''Description:''' [https://aur.archlinux.org/pkgbase/llvm-svn llvm-svn] and [https://aur.archlinux.org/pkgbase/lib32-llvm-svn lib32-llvm-svn] from AUR: the LLVM compiler infrastructure, the Clang frontend, and the tools associated with it<br />
* '''Key-ID:''' [https://sks-keyservers.net/pks/lookup?op=vindex&search=0x76563F75679E4525&fingerprint=on&exact=on 0x76563F75679E4525], fingerprint <tt>D16C F22D 27D1 091A 841C 4BE9 7656 3F75 679E 4525</tt><br />
<br />
{{bc|<nowiki><br />
[llvm-svn]<br />
Server = http://repos.uni-plovdiv.net/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== metalgamer ====<br />
<br />
* '''Maintainer:''' [http://metalgamer.eu/ metalgamer]<br />
* '''Description:''' Packages I use and/or maintain on the AUR.<br />
* '''Key ID:''' F55313FB<br />
<br />
{{bc|<nowiki><br />
[metalgamer]<br />
Server = http://repo.metalgamer.eu/$arch<br />
</nowiki>}}<br />
<br />
==== miffe ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=4059 miffe]<br />
* '''Description:''' AUR packages maintained by miffe, e.g. linux-mainline<br />
* '''Key ID:''' 313F5ABD<br />
<br />
{{bc|<nowiki><br />
[miffe]<br />
Server = http://arch.miffe.org/$arch/<br />
</nowiki>}}<br />
<br />
==== nullptr_t ====<br />
<br />
* '''Maintainers:''' Sebastian Lau (nullptr_t), <br />
* '''Description:''' AUR packages that have a longer build time on some machines (e.g. {{AUR|veracrypt}} or [[plymouth]])<br />
* '''Key-ID:''' B4767A17CEC5B4E9<br />
<br />
{{bc|<nowiki><br />
[nullptr_t]<br />
Server = https://archlinux.0ptr.de/mirrors/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== pipelight ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Pipelight and wine-compholio<br />
* '''Upstream page:''' [http://fds-team.de/ fds-team.de]<br />
* '''Key-ID:''' E49CC0415DC2D5CA<br />
* '''Keyfile:''' http://repos.fds-team.de/Release.key<br />
<br />
{{bc|<nowiki><br />
[pipelight]<br />
Server = http://repos.fds-team.de/stable/arch/$arch<br />
</nowiki>}}<br />
<br />
==== repo-ck ====<br />
<br />
* '''Maintainer:''' [[User:Graysky|graysky]]<br />
* '''Description:''' Kernel and modules with Brain Fuck Scheduler and all the goodies in the ck1 patch set.<br />
* '''Upstream page:''' [http://repo-ck.com repo-ck.com]<br />
* '''Wiki:''' [[repo-ck]]<br />
* '''Key-ID:''' 5EE46C4C<br />
<br />
{{bc|<nowiki><br />
[repo-ck]<br />
Server = http://repo-ck.com/$arch<br />
</nowiki>}}<br />
<br />
==== seblu ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#seblu Sébastien Luttringer]<br />
* '''Description:''' All seblu useful pre-built packages, some homemade (virtualbox-ext-oracle, linux-seblu-meta, bedup).<br />
* '''Key-ID:''' Not required, as maintainer is a Developer<br />
<br />
{{bc|<nowiki><br />
[seblu]<br />
Server = http://seblu.net/a/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== sergej-repo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#spupykin Sergej Pupykin]<br />
* '''Description:''' psi-plus, owncloud-git, ziproxy, android, MySQL, and other stuff. Some packages also available for armv7h.<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[sergej-repo]<br />
Server = http://repo.p5n.pp.ru/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== tredaelli-systemd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#tredaelli Timothy Redaelli]<br />
* '''Description:''' systemd rebuilt with unofficial OpenVZ patch (kernel < 2.6.32-042stab111.1)<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|{{ic|[tredaelli-systemd]}} must be put before {{ic|[core]}} in {{ic|/etc/pacman.conf}}}}<br />
<br />
{{bc|<nowiki><br />
[tredaelli-systemd]<br />
Server = http://pkgbuild.com/~tredaelli/repo/systemd/$arch<br />
</nowiki>}}<br />
<br />
==== herecura ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#idevolder Ike Devolder]<br />
* '''Description:''' additional packages not found in the ''community'' repository<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[herecura]<br />
Server = http://repo.herecura.be/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== blackeagle-pre-community ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#idevolder Ike Devolder]<br />
* '''Description:''' testing of the by me maintaned packages before moving to ''community'' repository<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[blackeagle-pre-community]<br />
Server = http://repo.herecura.be/$repo/$arch<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== arch-deepin ====<br />
<br />
* '''Maintainer:''' [https://build.opensuse.org/project/show/home:metakcahura metak], [https://github.com/fasheng fasheng]<br />
* '''Description:''' Porting software from Linux Deepin to Archlinux.<br />
* '''Upstream page:''' https://github.com/fasheng/arch-deepin<br />
<br />
{{bc|<nowiki><br />
[home_metakcahura_arch-deepin_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
#Server = http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== archaudio ====<br />
<br />
* '''Maintainer:''' [[User:Schivmeister|Ray Rashif]], [https://aur.archlinux.org/account/jhernberg Joakim Hernberg]<br />
* '''Description:''' Pro-audio packages<br />
<br />
{{bc|<nowiki><br />
[archaudio-production]<br />
Server = http://repos.archaudio.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxfr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
* '''Upstream page:''' http://afur.archlinux.fr<br />
<br />
{{bc|<nowiki><br />
[archlinuxfr]<br />
Server = http://repo.archlinux.fr/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgis ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Maintainers needed - low bandwidth<br />
<br />
{{bc|<nowiki><br />
[archlinuxgis]<br />
Server = http://archlinuxgis.no-ip.org/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr]<br />
Server = http://archlinuxgr.tiven.org/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr-kde4 ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' KDE4 packages (plasmoids, themes etc) provided by the Hellenic (Greek) Arch Linux community<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-kde4]<br />
Server = http://archlinuxgr.tiven.org/archlinux-kde4/$arch<br />
</nowiki>}}<br />
<br />
==== arsch ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' From users of orgizm.net<br />
<br />
{{bc|<nowiki><br />
[arsch]<br />
Server = http://arsch.orgizm.net/$arch<br />
</nowiki>}}<br />
<br />
==== cinnamon ====<br />
<br />
* '''Maintainer:''' [https://github.com/jnbek jnbek]<br />
* '''Description:''' Stable and actively developed Cinnamon packages (Applets, Themes, Extensions), plus others (Hotot, qBitTorrent, GTK themes, Perl modules, and more).<br />
<br />
{{bc|<nowiki><br />
[cinnamon]<br />
Server = http://archlinux.zoelife4u.org/cinnamon/$arch<br />
</nowiki>}}<br />
<br />
==== ede ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Equinox Desktop Environment repository<br />
<br />
{{bc|<nowiki><br />
[ede]<br />
Server = http://ede.elderlinux.org/repos/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== heftig ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#heftig Jan Steffens]<br />
* '''Description:''' Includes linux-zen and aurora (Firefox development build - works alongside {{Pkg|firefox}} in the ''extra'' repository).<br />
* '''Upstream page:''' https://bbs.archlinux.org/viewtopic.php?id=117157<br />
<br />
{{bc|<nowiki><br />
[heftig]<br />
Server = http://pkgbuild.com/~heftig/repo/$arch<br />
</nowiki>}}<br />
<br />
==== mesa-git ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#lcarlier Laurent Carlier]<br />
* '''Description:''' Mesa git builds for the ''testing'' and ''multilib-testing'' repositories<br />
<br />
{{bc|<nowiki><br />
[mesa-git]<br />
Server = http://pkgbuild.com/~lcarlier/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== noware ====<br />
<br />
* '''Maintainer:''' Alexandru Thirtheu (alex_giusi_tiri2@yahoo.com) ([https://bbs.archlinux.org/profile.php?id=65036 Forums]) ([https://wiki.archlinux.org/index.php/User:AGT Wiki]) ([http://direct.noware.systems.:2 Web Site])<br />
* '''Description:''' Software which I prefer being present in a repository, than being compiled each time. It eases software maintenance, I find. Almost anything goes.<br />
<br />
{{bc|<nowiki><br />
[noware]<br />
Server = http://direct.$repo.systems.:2/repository/arch/$arch<br />
</nowiki>}}<br />
<br />
==== openrc-eudev ====<br />
<br />
* '''Maintainer:''' [[User:Aaditya|Aaditya]], [[User:Nous|Nous]]<br />
* '''Description:''' OpenRC and eudev packages, [[OpenRC#artoo|artoo's way]].<br />
{{bc|<nowiki><br />
[openrc-eudev]<br />
Server = http://downloads.sourceforge.net/project/archopenrc/$repo/$arch<br />
Server = ftp://ftp.heanet.ie/mirrors/sourceforge/a/ar/archopenrc/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== oracle ====<br />
<br />
* '''Maintainer:''' [[User:Malvineous|Malvineous]]<br />
* '''Description:''' Oracle database client<br />
<br />
{{Warning|By adding this you are agreeing to the Oracle license at http://www.oracle.com/technetwork/licenses/instant-client-lic-152016.html}}<br />
<br />
{{bc|<nowiki><br />
[oracle]<br />
Server = http://linux.shikadi.net/arch/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== pantheon ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Repository containing Pantheon-related packages<br />
<br />
{{bc|<nowiki><br />
[pantheon]<br />
Server = http://pkgbuild.com/~alucryd/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== paulburton-fitbitd ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains fitbitd for synchronizing FitBit trackers<br />
<br />
{{bc|<nowiki><br />
[paulburton-fitbitd]<br />
Server = http://www.paulburton.eu/arch/fitbitd/$arch<br />
</nowiki>}}<br />
<br />
==== pietma ====<br />
<br />
* '''Maintainer:''' MartiMcFly <martimcfly@autorisation.de><br />
* '''Description:''' Arch User Repository packages [https://aur.archlinux.org/packages/?K=martimcfly&SeB=m I create or maintain.].<br />
* '''Upstream page:''' http://pietma.com/tag/aur/<br />
<br />
{{bc|<nowiki><br />
[pietma]<br />
SigLevel = Optional TrustAll<br />
Server = http://repository.pietma.com/nexus/content/repositories/archlinux/$arch/$repo<br />
</nowiki>}}<br />
<br />
==== pfkernel ====<br />
<br />
* '''Maintainer:''' [[User:Nous|nous]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf[-cpu] and linux-pf-lts[-cpu]. Also, openrc and initscripts-openrc.<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/11734958/x86_64/index.html or start at http://bit.do/linux-pf<br />
<br />
{{bc|<nowiki><br />
[pfkernel]<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
</nowiki>}}<br />
<br />
==== suckless ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' suckless.org packages<br />
<br />
{{bc|<nowiki><br />
[suckless]<br />
Server = http://dl.suckless.org/arch/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch-Extra ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] extra packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch-Extra]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== home_tarakbumba_archlinux_Arch_Extra_standard ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains a few pre-built AUR packages (zemberek, firefox-kde-opensuse, etc.)<br />
<br />
{{bc|<nowiki><br />
[home_tarakbumba_archlinux_Arch_Extra_standard]<br />
Server = http://download.opensuse.org/repositories/home:/tarakbumba:/archlinux/Arch_Extra_standard/$arch<br />
</nowiki>}}<br />
<br />
==== MEGAsync_Arch_Extra ====<br />
<br />
* '''Maintainer:''' https://mega.nz/#sync<br />
* '''Description:''' MEGAsync extra packages for Arch<br />
<br />
{{bc|<nowiki><br />
[MEGAsync_Arch_Extra]<br />
SigLevel = Never<br />
Server = https://mega.co.nz/linux/MEGAsync/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
== i686 only ==<br />
<br />
=== Signed ===<br />
<br />
==== eee-ck ====<br />
<br />
* '''Maintainer:''' Gruppenpest<br />
* '''Description:''' Kernel and modules optimized for Asus Eee PC 701, with -ck patchset.<br />
* '''Key-ID:''' 27D4A19A<br />
* '''Keyfile''' http://zembla.duckdns.org/repo/gruppenpest.gpg<br />
<br />
{{bc|<nowiki><br />
[eee-ck]<br />
Server = http://zembla.duckdns.org/repo<br />
</nowiki>}}<br />
<br />
==== phillid ====<br />
<br />
* '''Maintainer:''' Phillid<br />
* '''Description:''' Various GCC-s and matching binutils-es which target bare-bones formats (for OS dev). The GCC toolchains are shrunk to ~8&nbsp;MiB each by disabling NLS and everything but the C front-end. Thrown in there is some ham-related stuff I use such as hamlib, xastir, qsstv. Also a couple of legacy packages which are a bit lengthy to build for most people (kdelibs3, qt3).<br />
* '''Key-ID:''' 28F1E6CE<br />
<br />
{{bc|<nowiki><br />
[phillid]<br />
Server = http://phillid.tk/r/i686/<br />
</nowiki>}}<br />
<br />
==== xyne-i686 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "i686" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-i686]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' each program I'm using on x86_64 is compiled for i686 too<br />
* '''Upstream page:''' http://andrwe.org/linux/repository<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/i686<br />
</nowiki>}}<br />
<br />
==== kpiche ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Stable OpenSync packages.<br />
<br />
{{bc|<nowiki><br />
[kpiche]<br />
Server = http://kpiche.archlinux.ca/repo<br />
</nowiki>}}<br />
<br />
==== kernel26-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 2.6.39<br />
<br />
{{bc|<nowiki><br />
[kernel26-pae]<br />
Server = http://kernel26-pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== linux-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 3.0<br />
<br />
{{bc|<nowiki><br />
[linux-pae]<br />
Server = http://pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== rfad ====<br />
<br />
* '''Maintainer:''' requiem [at] archlinux.us<br />
* '''Description:''' Repository made by haxit<br />
<br />
{{bc|<nowiki><br />
[rfad]<br />
Server = http://web.ncf.ca/ey723/archlinux/repo/<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/i686<br />
</nowiki>}}<br />
<br />
== x86_64 only ==<br />
<br />
=== Signed ===<br />
<br />
==== apathism ====<br />
<br />
* '''Maintainer:''' Ivan Koryabkin ([https://aur.archlinux.org/account/apathism/ apathism])<br />
* '''Upstream page:''' https://apathism.net/<br />
* '''Description:''' Some AUR packages like {{AUR|psi-plus-git}} (with qt5 enabled).<br />
* '''Key-ID:''' 3E37398D<br />
* '''Keyfile:''' http://apathism.net/archlinux/apathism.key<br />
<br />
{{bc|<nowiki><br />
[apathism]<br />
Server = http://apathism.net/archlinux/<br />
</nowiki>}}<br />
<br />
==== ashleyis ====<br />
<br />
* '''Maintainer:''' Ashley Towns ([https://aur.archlinux.org/account/ashleyis/ ashleyis])<br />
* '''Description:''' Debug versions of SDL, chipmunk, libtmx and other misc game libraries. also swift-lang and some other AUR packages <br />
* '''Key-ID:''' B1A4D311<br />
<br />
{{bc|<nowiki><br />
[ashleyis]<br />
Server = http://arch.ashleytowns.id.au/repo/$arch<br />
</nowiki>}}<br />
<br />
==== atom ====<br />
<br />
* '''Maintainer:''' Nicola Squartini ([https://github.com/tensor5 tensor5])<br />
* '''Upstream page:''' https://github.com/tensor5/arch-atom<br />
* '''Description:''' Atom text editor and Electron<br />
* '''Key-ID:''' B0544167<br />
<br />
{{bc|<nowiki><br />
[atom]<br />
Server = http://noaxiom.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== bioinformatics ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some software tools for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics]<br />
Server = http://decryptedepsilon.bl.ee/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== blackleg ====<br />
<br />
* '''Maintainer:''' Blackleg ([https://aur.archlinux.org/account/blackleg blackleg])<br />
* '''Upstream page:''' [http://www.blackleg.es www.blackleg.es]<br />
* '''Description:''' My AUR's packages and some like: linux-w110er, nvidia-dkms, android-studio, odoo (OpenErp).<br />
* '''Package list:''' [http://www.blackleg.es/x86_64/index.html Blackleg x86_64 packages]<br />
* '''Key-ID:''' 611BFDE1<br />
<br />
{{bc|<nowiki><br />
[blackleg]<br />
Server = ftp://ftp.blackleg.es/archlinux/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== boyska64 ====<br />
<br />
* '''Maintainer:''' boyska<br />
* '''Description:''' Personal repository: cryptography, sdr, mail handling and misc<br />
* '''Key-ID:''' 0x7395DCAE58289CA9<br />
<br />
{{bc|<nowiki><br />
[boyska64]<br />
Server = http://boyska.degenerazione.xyz/archrepo<br />
</nowiki>}}<br />
<br />
==== coderkun-aur ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with random software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://www.coderkun.de/arch<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [https://www.coderkun.de/coderkun.asc https://www.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-audio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with audio-related (realtime kernels, lv2-plugins, …) software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://www.coderkun.de/arch<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [https://www.coderkun.de/coderkun.asc https://www.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-audio]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== eatabrick ====<br />
<br />
* '''Maintainer:''' bentglasstube<br />
* '''Description:''' Packages for software written by (and a few just compiled by) bentglasstube.<br />
<br />
{{bc|<nowiki><br />
[eatabrick]<br />
SigLevel = Required<br />
Server = http://repo.eatabrick.org/$arch<br />
</nowiki>}}<br />
<br />
==== freifunk-rheinland ====<br />
<br />
* '''Maintainer:''' nomaster<br />
* '''Description:''' Packages for the Freifunk project: batman-adv, batctl, fastd and dependencies.<br />
<br />
{{bc|<nowiki><br />
[freifunk-rheinland]<br />
Server = http://mirror.fluxent.de/archlinux-custom/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== gustawho ====<br />
<br />
* '''Maintainer:''' [https://twitter.com/gustawho Gustavo Castro] <gustawho@gmail.com><br />
* '''Description:''' Scientific tools (mostly physics/math) and AUR packages that would take long to build, such as {{AUR|firefox-kde-opensuse}}.<br />
* '''Package list:''' http://gustawho.x10.mx/repo/x86_64<br />
* '''Upstream page:''' http://gustawho.x10.mx<br />
* '''Key-ID:''' 2C575D76<br />
<br />
{{bc|<nowiki><br />
[gustawho]<br />
Server = http://gustawho.x10.mx/repo/x86_64<br />
</nowiki>}}<br />
<br />
* '''Note:''' If you need firefox-kde-opensuse for i686 and/or the unsigned x86_64 package, try this repo instead:<br />
<br />
{{bc|<nowiki><br />
[home_gustawho_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/gustawho/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== holo ====<br />
<br />
* '''Maintainer:''' Stefan Majewsky <holo-pacman@posteo.de> (please prefer to report issues at [https://github.com/majewsky/holo-pacman-repo/issues Github])<br />
* '''Description:''' Packages for [https://holocm.org Holo configuration management], including compatible plugins and tools.<br />
* '''Upstream page:''' https://github.com/majewsky/holo-pacman-repo<br />
* '''Package list:''' https://repo.holocm.org/archlinux/x86_64<br />
* '''Key-ID:''' 0xF7A9C9DC4631BD1A<br />
<br />
{{bc|<nowiki><br />
[holo]<br />
Server = https://repo.holocm.org/archlinux/x86_64<br />
</nowiki>}}<br />
<br />
==== Linux-pf ====<br />
<br />
{{Accuracy|Signed repositories should not use {{ic|1=SigLevel = Optional}} (by definition).}}<br />
<br />
* '''Maintainer:''' [[User:Thaodan|Thaodan]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf, just like {{AUR|linux-pf}} from the [[AUR]] but additionally optimized for intel CPUs Sandy Bridge, Ivy Bridge, Haswell and generic of course, and some extra packages<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox).<br />
<br />
{{bc|<nowiki><br />
[Linux-pf]<br />
Server = https://dl.dropboxusercontent.com/u/172590784/Linux-pf/x86_64/<br />
SigLevel = Optional<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-multilib ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle multilib repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-multilib]<br />
Server = http://bohoomil.com/repo/multilib/$arch<br />
</nowiki>}}<br />
<br />
==== kc9ydn ====<br />
<br />
* '''Maintainer:''' [http://kc9ydn.us KC9YDN]<br />
* '''Description:''' Consists mostly of amateur radio related apps<br />
* '''Key-ID:''' 7DA25A0F<br />
<br />
{{bc|<nowiki><br />
[kc9ydn]<br />
Server = http://kc9ydn.us/repo/<br />
</nowiki>}}<br />
<br />
==== linux-lts-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current ArchLinux LTS kernel with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/x86_64/index.html or start at http://tiny.cc/linux-lts-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch)<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x/x86_64/index.html or start at http://tiny.cc/linux-lts31x<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch) with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/x86_64/index.html or start at http://tiny.cc/linux-lts31x-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-ck-pax ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current Arch Kernel with the CK and PaX security patchsets<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/x86_64/index.html or start at http://tiny.cc/linux-ck-pax<br />
<br />
{{bc|<nowiki><br />
[linux-ck-pax]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/$arch<br />
</nowiki>}}<br />
<br />
==== linux-tresor ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Arch Current and LTS kernels with TRESOR<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-tresor/x86_64/index.html or start at http://tiny.cc/linux-tresor<br />
<br />
{{bc|<nowiki><br />
[linux-tresor]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-tresor/$arch<br />
</nowiki>}}<br />
<br />
==== markzz ====<br />
<br />
* '''Maintainer:''' [[User:Markzz|Mark Weiman (markzz)]]<br />
* '''Description:''' Packages that markzz maintains or uses on the AUR; this includes Linux with the vfio patchset ({{AUR|linux-vfio}} and {{AUR|linux-vfio-lts}}), and packages to maintain a Debian package repository.<br />
* '''Sources:''' http://git.markzz.net/markzz/repositories/markzz.git/tree<br />
* '''Key ID:''' 3CADDFDD<br />
<br />
{{Note|If you want to add the key by installing the ''markzz-keyring'' package, temporarily add {{ic|1=SigLevel = Never}} into the repository section.}}<br />
<br />
{{bc|<nowiki><br />
[markzz]<br />
Server = http://repo.markzz.com/arch/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== openrc ====<br />
<br />
* '''Maintainer:''' [http://www.autistici.org/arch-openrc/ jaco]<br />
* '''Description:''' All packages to run OpenRC on a x86_64 machine, using Manjaro PKGBUILDS.<br />
* '''Sources:''' https://github.com/manjaro/packages-openrc<br />
* '''Key ID:''' 8C51F416<br />
* '''Keyfile:''' http://www.autistici.org/arch-openrc/jacopo.asc<br />
<br />
{{bc|<nowiki><br />
[openrc]<br />
Server = http://www.autistici.org/arch-openrc/repo/<br />
</nowiki>}}<br />
<br />
==== qt-debug ====<br />
<br />
* '''Maintainer:''' [http://blog.the-compiler.org/?page_id=36 The Compiler]<br />
* '''Description:''' Qt/PyQt builds with debug symbols<br />
* '''Upstream page:''' https://github.com/The-Compiler/qt-debug-pkgbuild<br />
* '''Key-ID:''' D6A1C70FE80A0C82<br />
<br />
{{bc|<nowiki><br />
[qt-debug]<br />
Server = http://qutebrowser.org/qt-debug/$arch<br />
</nowiki>}}<br />
<br />
==== quarry ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#anatolik anatolik]<br />
* '''Description:''' Arch binary repository for [http://rubygems.org/ Rubygems] packages. See [https://bbs.archlinux.org/viewtopic.php?id=182729 forum announcement] for more information.<br />
* '''Sources:''' https://github.com/anatol/quarry<br />
* '''Key-ID:''' Not needed, as maintainer is a developer<br />
<br />
{{bc|<nowiki><br />
[quarry]<br />
# report issues at https://github.com/anatol/quarry<br />
Server = http://pkgbuild.com/~anatolik/quarry/x86_64/<br />
</nowiki>}}<br />
<br />
==== rstudio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/unikum/ Artem Klevtsov]<br />
* '''Description:''' Rstudio IDE package (git version) and depends.<br />
* '''Key-ID:''' 1CB48DD4<br />
<br />
{{bc|<nowiki><br />
[rstudio]<br />
Server = http://repo.psylab.info/archlinux/x86_64/<br />
</nowiki>}}<br />
<br />
==== siosm-aur ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages also available in the Arch User Repository, sometimes with minor fixes<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-aur]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== siosm-selinux ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages required for SELinux support – work in progress (notably, missing an Arch Linux-compatible SELinux policy). See the [[SELinux]] page for details.<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-selinux]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== subtitlecomposer ====<br />
<br />
* '''Maintainer:''' Mladen Milinkovic (maxrd2)<br />
* '''Description:''' Subtitle Composer stable and nightly builds<br />
* '''Upstream page:''' https://github.com/maxrd2/subtitlecomposer<br />
* '''Key-ID:''' EA8CEBEE<br />
<br />
{{bc|<nowiki><br />
[subtitlecomposer]<br />
Server = http://smoothware.net/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== xyne-x86_64 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "x86_64" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-x86_64]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== alucryd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages Maxime Gauduin maintains (or not) in the AUR.<br />
<br />
{{bc|<nowiki><br />
[alucryd]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== alucryd-multilib ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages needed to run Steam without its runtime environment.<br />
<br />
{{bc|<nowiki><br />
[alucryd-multilib]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' contains programs I'm using on many systems<br />
* '''Upstream page:''' http://andrwe.dyndns.org/doku.php/blog/repository {{Dead link|2013|11|30}}<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/x86_64<br />
</nowiki>}}<br />
<br />
==== archstudio ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Audio and Music Packages optimized for Intel Core i3, i5, and i7.<br />
* '''Upstream page:''' http://www.xsounds.org/~archstudio<br />
<br />
{{bc|<nowiki><br />
[archstudio]<br />
Server = http://www.xsounds.org/~archstudio/x86_64<br />
</nowiki>}}<br />
<br />
==== brtln ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bpiotrowski Bartłomiej Piotrowski]<br />
* '''Description:''' Some VCS packages.<br />
<br />
{{bc|<nowiki><br />
[brtln]<br />
Server = http://pkgbuild.com/~barthalion/brtln/$arch/<br />
</nowiki>}}<br />
<br />
==== kps ====<br />
<br />
* '''Maintainer:''' kps<br />
* '''Description:''' gmt, catalyst-test, ttf-ms-win8, rstudio, meshlab, gcc-gcj, vlc-git, ffmpeg-git (k10 & intel opt.), docear, maperitive, libressl, bkchem ...<br />
<br />
{{bc|<nowiki><br />
[kps]<br />
Server = http://kps.bplaced.net/repo/$arch<br />
</nowiki>}}<br />
<br />
==== mazdlc ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Various packages maintained by maz-1 (mainly Qt5-based packages and multimedia-related packages )<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mazdlc-deadbeef-plugins ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Plugins for the feature-rich music player DeaDBeeF.<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_deadbeef-plugins_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc:/deadbeef-plugins/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mazdlc-kde-frameworks-5 ====<br />
<br />
* '''Maintainer:''' maz-1 <ohmygod19993 at gmail dot com><br />
* '''Description:''' Unstable packages based on kde frameworks 5.<br />
* '''Upstream page:''' https://build.opensuse.org/project/show/home:mazdlc<br />
<br />
{{bc|<nowiki><br />
[home_mazdlc_kde-frameworks-5_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/mazdlc:/kde-frameworks-5/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== mikroskeem ====<br />
<br />
* '''Maintainer:''' mikroskeem <mikroskeem@mikroskeem.eu><br />
* '''Description:''' Openarena and i3 wm-related packages<br />
<br />
{{bc|<nowiki><br />
[mikroskeem]<br />
Server = http://nightsnack.cf/~mark/arch-pkgs<br />
</nowiki>}}<br />
<br />
==== mingw-w64 ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/ant32 Philip] and [https://aur.archlinux.org/account/nic96 Jeromy] Reimer<br />
* '''Description:''' Almost all mingw-w64 packages in the AUR updated every 8 hours.<br />
<br />
{{bc|<nowiki><br />
[mingw-w64]<br />
Server = http://downloads.sourceforge.net/project/mingw-w64-archlinux/$arch<br />
#Server = http://amr.linuxd.org/archlinux/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== pnsft-pur ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Japanese input method packages Mozc (vanilla) and libkkc<br />
<br />
{{bc|<nowiki><br />
[pnsft-pur]<br />
Server = http://downloads.sourceforge.net/project/pnsft-aur/pur/x86_64<br />
</nowiki>}}<br />
<br />
==== rakudo ====<br />
<br />
* '''Maintainer:''' spider-mario <spidermario@free.fr><br />
* '''Description:''' Rakudo Perl6<br />
<br />
{{bc|<nowiki><br />
[rakudo]<br />
Server = http://spidermario.free.fr/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== rightlink ====<br />
<br />
* '''Maintainer:''' Chris Fordham <chris@fordham-nagy.id.au><br />
* '''Description:''' RightLink version 10 (RL10) is a new version of RightScale's server agent that connects servers managed through RightScale to the RightScale cloud management platform.<br />
<br />
{{bc|<nowiki><br />
[rightlink]<br />
Server = https://s3-ap-southeast-2.amazonaws.com/archlinux.rightscale.me/repo<br />
</nowiki>}}<br />
<br />
==== seiichiro ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' VDR and some plugins, mms, foo2zjs-drivers<br />
<br />
{{bc|<nowiki><br />
[seiichiro]<br />
Server = http://repo.seiichiro0185.org/x86_64<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== zrootfs ====<br />
<br />
* '''Maintainer:''' Isabell Cowan <isabellcowan@gmail.com><br />
* '''Description:''' For Haswell architecture processors with size in mind.<br />
<br />
{{bc|<nowiki><br />
[zrootfs]<br />
Server = http://www.izzette.com/izzi/zrootfs<br />
</nowiki>}}<br />
<br />
== armv6h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== arch-fook-armv6h ====<br />
<br />
* '''Maintainer:''' Jaska Kivelä <jaska@kivela.net><br />
* '''Description:''' Stuff that I have compiled for my Raspberry PI. Including Enlightenment and home automation stuff.<br />
<br />
{{bc|<nowiki><br />
[arch-fook-armv6h]<br />
Server = http://kivela.net/jaska/arch-fook-armv6h<br />
</nowiki>}}<br />
<br />
== armv7h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== pietma ====<br />
<br />
* '''Maintainer:''' MartiMcFly <martimcfly@autorisation.de><br />
* '''Description:''' Arch User Repository packages [https://aur.archlinux.org/packages/?K=martimcfly&SeB=m I create or maintain.].<br />
* '''Upstream page:''' [http://pietma.com/tag/aur/ http://pietma.com/tag/aur/]<br />
{{bc|<nowiki><br />
[pietma]<br />
SigLevel = Optional TrustAll<br />
Server = http://repository.pietma.com/nexus/content/repositories/archlinux/$arch/$repo<br />
</nowiki>}}</div>Noushttps://wiki.archlinux.org/index.php?title=Unofficial_user_repositories&diff=405099Unofficial user repositories2015-10-16T23:03:29Z<p>Nous: /* pfkernel */ tiny.cc is dead</p>
<hr />
<div>[[Category:Package management]]<br />
[[ja:非公式ユーザーリポジトリ]]<br />
[[zh-CN:Unofficial user repositories]]<br />
{{Expansion|Please fill in the missing information about repository maintainers.}}<br />
<br />
{{Related articles start}}<br />
{{Related|pacman-key}}<br />
{{Related|Official repositories}}<br />
{{Related articles end}}<br />
<br />
This article lists binary repositories freely created and shared by the community, often providing pre-built versions of PKGBUILDS found in the [[AUR]].<br />
<br />
{{Warning|Neither the official Arch Linux Developers nor the Trusted Users perform tests of any sort to verify the contents of these repositories; it is up to each user to decide whether to trust their maintainers, and take full responsibility for whatever their decision brings.}}<br />
<br />
In order to use these repositories, you will have to add them to {{ic|/etc/pacman.conf}}, as explained in [[pacman#Repositories]]. If a repository is signed, you will have to obtain and locally sign the associated key, as explained in [[Pacman-key#Adding unofficial keys]].<br />
<br />
If you want to create your own custom repository, follow [[pacman tips#Custom local repository]].<br />
<br />
{{Tip|To get a list of all servers listed in this page: {{bc|<nowiki>curl 'https://wiki.archlinux.org/index.php/Unofficial_user_repositories' | grep 'Server = ' | sed "s/\$arch/$(uname -m)/g" | cut -f 3 -d' '</nowiki>}}<br />
<br />
For your convenience you can, for example, open them all in a web browser to inspect the contents of their repositories.<br />
}}<br />
<br />
== Adding your repository to this page ==<br />
<br />
If you have your own repository, please add it to this page, so that all the other users will know where to find your packages. Please keep the following rules when adding new repositories:<br />
<br />
* Keep the lists in alphabetical order.<br />
* Include some information about the maintainer: include at least a (nick)name and some form of contact information (web site, email address, user page on ArchWiki or the forums, etc.).<br />
* If the repository is of the ''signed'' variety, please include a key-id, possibly using it as the anchor for a link to its keyserver; if the key is not on a keyserver, include a link to the key file.<br />
* Include some short description (e.g. the category of packages provided in the repository).<br />
* If there is a page (either on ArchWiki or external) containing more information about the repository, include a link to it.<br />
* If possible, avoid using comments in code blocks. The formatted description is much more readable. Users who want some comments in their {{ic|pacman.conf}} can easily create it on their own.<br />
<br />
== Any ==<br />
<br />
"Any" repositories are architecture-independent. In other words, they can be used on both i686 and x86_64 systems.<br />
<br />
=== Signed ===<br />
<br />
==== bioinformatics-any ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some python packages and genome browser for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics-any]<br />
Server = http://decryptedepsilon.bl.ee/repo/any<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-fonts ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle-fonts repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-fonts]<br />
Server = http://bohoomil.com/repo/fonts<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/any<br />
# Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== pkgbuilder ====<br />
<br />
* '''Maintainer:''' [https://chriswarrick.com/ Chris Warrick]<br />
* '''Description:''' A repository for PKGBUILDer, a Python AUR helper.<br />
* '''Upstream page:''' https://github.com/Kwpolska/pkgbuilder<br />
* '''Key-ID:''' 5EAAEA16<br />
<br />
{{bc|<nowiki><br />
[pkgbuilder]<br />
Server = https://pkgbuilder-repo.chriswarrick.com/<br />
</nowiki>}}<br />
<br />
==== xyne-any ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for "any" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{Note|Use this repository only if there is no matching {{ic|[xyne-*]}} repository for your architecture.}}<br />
<br />
{{bc|<nowiki><br />
[xyne-any]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== archlinuxgr-any ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' The Hellenic (Greek) unofficial Arch Linux repository with many interesting packages.<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-any]<br />
Server = http://archlinuxgr.tiven.org/archlinux/any<br />
</nowiki>}}<br />
<br />
== Both i686 and x86_64 ==<br />
<br />
Repositories with both i686 and x86_64 versions. The {{ic|$arch}} variable will be set automatically by pacman.<br />
<br />
=== Signed ===<br />
<br />
==== arcanisrepo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#arcanis arcanis]<br />
* '''Description:''' A repository with some AUR packages including packages from VCS<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[arcanisrepo]<br />
Server = ftp://repo.arcanis.name/repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxcn ====<br />
<br />
* '''Maintainers:''' [https://plus.google.com/+PhoenixNemo/ Phoenix Nemo (phoenixlzx)], Felix Yan (felixonmars, TU), [https://twitter.com/lilydjwg lilydjwg], and others<br />
* '''Description:''' Packages by the Chinese Arch Linux community (mostly signed)<br />
* '''Git Repo:''' https://github.com/archlinuxcn/repo<br />
* '''Mirrors:''' https://github.com/archlinuxcn/mirrorlist-repo<br />
* '''Key-ID:''' Once the repo is added, ''archlinuxcn-keyring'' package must be installed before any other.<br />
<br />
{{bc|<nowiki><br />
[archlinuxcn]<br />
SigLevel = Optional TrustedOnly<br />
Server = http://repo.archlinuxcn.org/$arch<br />
</nowiki>}}<br />
<br />
==== atom-editor-git ====<br />
<br />
* '''Maintainer:''' Matthew Stobbs<br />
* '''Upstream page:''' https://atom.io/<br />
* '''Description:''' The Atom Editor, created by the people behind github, to mimic Sublime Text.<br />
* '''Key-ID:''' 26EBCC57<br />
<br />
{{bc|<nowiki><br />
[atom-editor-git]<br />
Server = http://repo.stobbstechnical.com/$arch<br />
</nowiki>}}<br />
<br />
==== bbqlinux ====<br />
<br />
* '''Maintainer:''' [https://plus.google.com/u/0/+DanielHillenbrand/about Daniel Hillenbrand]<br />
* '''Description:''' Packages for Android Development<br />
* '''Upstream Page:''' http://bbqlinux.org/<br />
* '''Key-ID:''' Get the ''bbqlinux-keyring'' package, as it contains the needed keys.<br />
<br />
{{bc|<nowiki><br />
[bbqlinux]<br />
Server = http://packages.bbqlinux.org/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst]<br />
Server = http://catalyst.wirephire.com/repo/catalyst/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://70.239.162.206/catalyst-mirror/repo/catalyst/$arch<br />
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/catalyst/$arch<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst-hd234k ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0|Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst-hd234k]<br />
Server = http://catalyst.wirephire.com/repo/catalyst-hd234k/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://70.239.162.206/catalyst-mirror/repo/catalyst-hd234k/$arch<br />
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/catalyst-hd234k/$arch<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst-hd234k/$arch<br />
</nowiki>}}<br />
<br />
==== city ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bgyorgy Balló György]<br />
* '''Description:''' Experimental/unpopular packages.<br />
* '''Upstream page:''' http://pkgbuild.com/~bgyorgy/city.html<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[city]<br />
Server = http://pkgbuild.com/~bgyorgy/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== demz-repo-archiso ====<br />
<br />
* '''Maintainer:''' [http://demizerone.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for installing ZFS from an Arch ISO live disk<br />
* '''Upstream page:''' https://github.com/demizer/archzfs<br />
* '''Key-ID:''' 5E1ABF240EE7A126<br />
<br />
{{bc|<nowiki><br />
[demz-repo-archiso]<br />
Server = http://demizerone.com/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== demz-repo-core ====<br />
<br />
* '''Maintainer:''' [http://demizerone.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for ZFS on Arch Linux.<br />
* '''Upstream page:''' https://github.com/demizer/archzfs<br />
* '''Key-ID:''' 5E1ABF240EE7A126<br />
<br />
{{bc|<nowiki><br />
[demz-repo-core]<br />
Server = http://demizerone.com/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== gnome-encfs-manager ====<br />
<br />
* '''Maintainer:''' Moritz Molch<br />
* '''Description:''' The gnome-encfs-manager can be used to integrate [[EncFS]]<br />
* '''Upstream page:''' [https://launchpad.net/gencfsm Gnome EncfsM].<br />
* '''Key ID:'''<br />
<br />
{{bc|<nowiki><br />
[home_moritzmolch_gencfsm_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/moritzmolch:/gencfsm/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== haskell-core ====<br />
<br />
* '''Maintainer:''' Magnus Therning<br />
* '''Description:''' Arch-Haskell repository<br />
* '''Upstream page:''' https://github.com/archhaskell/habs<br />
* '''Key-ID:''' 4209170B<br />
<br />
{{bc|<nowiki><br />
[haskell-core]<br />
Server = http://xsounds.org/~haskell/core/$arch<br />
</nowiki>}}<br />
<br />
==== infinality-bundle ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle main repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle]<br />
Server = http://bohoomil.com/repo/$arch<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== libre ====<br />
<br />
* '''Maintainer:''' Parabola Linux-libre<br />
* '''Description:''' Libre variations on Core/extra packages.<br />
* '''Upstream page:''' https://wiki.parabola.nu/Repositories#libre<br />
* '''Key-ID:''' https://www.parabola.nu/master-keys/<br />
<br />
{{Warning|Placing {{ic|[libre]}} before {{ic|[core]}} in {{ic|/etc/pacman.conf}} is '''not''' supported.}}<br />
<br />
{{Note|To install {{ic|parabola-keyring}}, {{ic|1=SigLevel = PackageOptional}} should be added temporarily.}}<br />
<br />
{{bc|<nowiki><br />
[libre]<br />
Server = https://repo.parabola.nu/libre/os/$arch<br />
</nowiki>}}<br />
<br />
==== llvm-svn ====<br />
<br />
* '''Maintainer:''' [[User:Kerberizer|Luchesar V. ILIEV (kerberizer)]]<br />
* '''Description:''' [https://aur.archlinux.org/pkgbase/llvm-svn llvm-svn] and [https://aur.archlinux.org/pkgbase/lib32-llvm-svn lib32-llvm-svn] from AUR: the LLVM compiler infrastructure, the Clang frontend, and the tools associated with it<br />
* '''Key-ID:''' [https://sks-keyservers.net/pks/lookup?op=vindex&search=0x76563F75679E4525&fingerprint=on&exact=on 0x76563F75679E4525], fingerprint <tt>D16C F22D 27D1 091A 841C 4BE9 7656 3F75 679E 4525</tt><br />
<br />
{{bc|<nowiki><br />
[llvm-svn]<br />
Server = http://repos.uni-plovdiv.net/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== markzz ====<br />
<br />
* '''Maintainer:''' [[User:Markzz|Mark Weiman (markzz)]]<br />
* '''Description:''' Packages that markzz maintains on the AUR and Linux with the vfio patch ({{AUR|linux-vfio}} and {{AUR|linux-vfio-lts}}).<br />
* '''Key ID:''' 3CADDFDD<br />
<br />
{{bc|<nowiki><br />
[markzz]<br />
Server = http://repo.markzz.com/arch/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== metalgamer ====<br />
<br />
* '''Maintainer:''' [http://metalgamer.eu/ metalgamer]<br />
* '''Description:''' Packages I use and/or maintain on the AUR.<br />
* '''Key ID:''' F55313FB<br />
<br />
{{bc|<nowiki><br />
[metalgamer]<br />
Server = http://repo.metalgamer.eu/$arch<br />
</nowiki>}}<br />
<br />
==== miffe ====<br />
<br />
* '''Maintainer:''' [https://bbs.archlinux.org/profile.php?id=4059 miffe]<br />
* '''Description:''' AUR packages maintained by miffe, e.g. linux-mainline<br />
* '''Key ID:''' 313F5ABD<br />
<br />
{{bc|<nowiki><br />
[miffe]<br />
Server = http://arch.miffe.org/$arch/<br />
</nowiki>}}<br />
<br />
==== pipelight ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Pipelight and wine-compholio<br />
* '''Upstream page:''' [http://fds-team.de/ fds-team.de]<br />
* '''Key-ID:''' E49CC0415DC2D5CA<br />
* '''Keyfile:''' http://repos.fds-team.de/Release.key<br />
<br />
{{bc|<nowiki><br />
[pipelight]<br />
Server = http://repos.fds-team.de/stable/arch/$arch<br />
</nowiki>}}<br />
<br />
==== repo-ck ====<br />
<br />
* '''Maintainer:''' [[User:Graysky|graysky]]<br />
* '''Description:''' Kernel and modules with Brain Fuck Scheduler and all the goodies in the ck1 patch set.<br />
* '''Upstream page:''' [http://repo-ck.com repo-ck.com]<br />
* '''Wiki:''' [[repo-ck]]<br />
* '''Key-ID:''' 5EE46C4C<br />
<br />
{{bc|<nowiki><br />
[repo-ck]<br />
Server = http://repo-ck.com/$arch<br />
</nowiki>}}<br />
<br />
==== seblu ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#seblu Sébastien Luttringer]<br />
* '''Description:''' All seblu useful pre-built packages, some homemade (virtualbox-ext-oracle, linux-seblu-meta, bedup).<br />
* '''Key-ID:''' Not required, as maintainer is a Developer<br />
<br />
{{bc|<nowiki><br />
[seblu]<br />
Server = http://seblu.net/a/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== sergej-repo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#spupykin Sergej Pupykin]<br />
* '''Description:''' psi-plus, owncloud-git, ziproxy, android, MySQL, and other stuff. Some packages also available for armv7h.<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[sergej-repo]<br />
Server = http://repo.p5n.pp.ru/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== tredaelli-systemd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#tredaelli Timothy Redaelli]<br />
* '''Description:''' systemd rebuilt with unofficial OpenVZ patch (kernel < 2.6.32-042stab111.1)<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Warning|{{ic|[tredaelli-systemd]}} must be put before {{ic|[core]}} in {{ic|/etc/pacman.conf}}}}<br />
<br />
{{bc|<nowiki><br />
[tredaelli-systemd]<br />
Server = http://pkgbuild.com/~tredaelli/repo/systemd/$arch<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== arch-deepin ====<br />
<br />
* '''Maintainer:''' [https://build.opensuse.org/project/show/home:metakcahura metak], [https://github.com/fasheng fasheng]<br />
* '''Description:''' Porting software from Linux Deepin to Archlinux.<br />
* '''Upstream page:''' https://github.com/fasheng/arch-deepin<br />
<br />
{{bc|<nowiki><br />
[home_metakcahura_arch-deepin_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
#Server = http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== archaudio ====<br />
<br />
* '''Maintainer:''' [[User:Schivmeister|Ray Rashif]], [https://aur.archlinux.org/account/jhernberg Joakim Hernberg]<br />
* '''Description:''' Pro-audio packages<br />
<br />
{{bc|<nowiki><br />
[archaudio-production]<br />
Server = http://repos.archaudio.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxfr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
* '''Upstream page:''' http://afur.archlinux.fr<br />
<br />
{{bc|<nowiki><br />
[archlinuxfr]<br />
Server = http://repo.archlinux.fr/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgis ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Maintainers needed - low bandwidth<br />
<br />
{{bc|<nowiki><br />
[archlinuxgis]<br />
Server = http://archlinuxgis.no-ip.org/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr]<br />
Server = http://archlinuxgr.tiven.org/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr-kde4 ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' KDE4 packages (plasmoids, themes etc) provided by the Hellenic (Greek) Arch Linux community<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-kde4]<br />
Server = http://archlinuxgr.tiven.org/archlinux-kde4/$arch<br />
</nowiki>}}<br />
<br />
==== arsch ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' From users of orgizm.net<br />
<br />
{{bc|<nowiki><br />
[arsch]<br />
Server = http://arsch.orgizm.net/$arch<br />
</nowiki>}}<br />
<br />
==== cinnamon ====<br />
<br />
* '''Maintainer:''' [https://github.com/jnbek jnbek]<br />
* '''Description:''' Stable and actively developed Cinnamon packages (Applets, Themes, Extensions), plus others (Hotot, qBitTorrent, GTK themes, Perl modules, and more).<br />
<br />
{{bc|<nowiki><br />
[cinnamon]<br />
Server = http://archlinux.zoelife4u.org/cinnamon/$arch<br />
</nowiki>}}<br />
<br />
==== ede ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Equinox Desktop Environment repository<br />
<br />
{{bc|<nowiki><br />
[ede]<br />
Server = http://ede.elderlinux.org/repos/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== heftig ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#heftig Jan Steffens]<br />
* '''Description:''' Includes linux-zen and aurora (Firefox development build - works alongside {{Pkg|firefox}} in the ''extra'' repository).<br />
* '''Upstream page:''' https://bbs.archlinux.org/viewtopic.php?id=117157<br />
<br />
{{bc|<nowiki><br />
[heftig]<br />
Server = http://pkgbuild.com/~heftig/repo/$arch<br />
</nowiki>}}<br />
<br />
==== herecura-stable ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' additional packages not found in the ''community'' repository<br />
<br />
{{bc|<nowiki><br />
[herecura-stable]<br />
Server = http://repo.herecura.be/herecura-stable/$arch<br />
</nowiki>}}<br />
<br />
==== herecura-testing ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' additional packages for testing build against stable arch<br />
<br />
{{bc|<nowiki><br />
[herecura-testing]<br />
Server = http://repo.herecura.be/herecura-testing/$arch<br />
</nowiki>}}<br />
<br />
==== mesa-git ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/people/trusted-users/#lcarlier Laurent Carlier]<br />
* '''Description:''' Mesa git builds for the ''testing'' and ''multilib-testing'' repositories<br />
<br />
{{bc|<nowiki><br />
[mesa-git]<br />
Server = http://pkgbuild.com/~lcarlier/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== noware ====<br />
<br />
* '''Maintainer:''' Alexandru Thirtheu (alex_giusi_tiri2@yahoo.com) ([https://bbs.archlinux.org/profile.php?id=65036 Forums]) ([https://wiki.archlinux.org/index.php/User:AGT Wiki]) ([http://noware.co Web Site])<br />
* '''Description:''' Software which I prefer being present in a repository, than being compiled each time. It eases software maintenance, I find. Almost anything goes.<br />
<br />
{{bc|<nowiki><br />
[noware]<br />
Server = http://noware.co/repository/arch/$arch<br />
</nowiki>}}<br />
<br />
==== openrc-eudev ====<br />
<br />
* '''Maintainer:''' [[User:Aaditya|Aaditya]], [[User:Nous|Nous]]<br />
* '''Description:''' OpenRC and eudev packages, [[OpenRC#artoo|artoo's way]].<br />
{{bc|<nowiki><br />
[openrc-eudev]<br />
Server = http://downloads.sourceforge.net/project/archopenrc/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== oracle ====<br />
<br />
* '''Maintainer:''' [[User:Malvineous|Malvineous]]<br />
* '''Description:''' Oracle database client<br />
<br />
{{Warning|By adding this you are agreeing to the Oracle license at http://www.oracle.com/technetwork/licenses/instant-client-lic-152016.html}}<br />
<br />
{{bc|<nowiki><br />
[oracle]<br />
Server = http://linux.shikadi.net/arch/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== pantheon ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Repository containing Pantheon-related packages<br />
<br />
{{bc|<nowiki><br />
[pantheon]<br />
Server = http://pkgbuild.com/~alucryd/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== paulburton-fitbitd ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains fitbitd for synchronizing FitBit trackers<br />
<br />
{{bc|<nowiki><br />
[paulburton-fitbitd]<br />
Server = http://www.paulburton.eu/arch/fitbitd/$arch<br />
</nowiki>}}<br />
<br />
==== pfkernel ====<br />
<br />
* '''Maintainer:''' [[User:Nous|nous]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf[-cpu] and linux-pf-lts[-cpu]. Also, openrc and initscripts-openrc.<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/11734958/x86_64/index.html or start at http://bit.do/linux-pf<br />
<br />
{{bc|<nowiki><br />
[pfkernel]<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
</nowiki>}}<br />
<br />
==== suckless ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' suckless.org packages<br />
<br />
{{bc|<nowiki><br />
[suckless]<br />
Server = http://dl.suckless.org/arch/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== Unity-for-Arch-Extra ====<br />
<br />
* '''Maintainer:''' https://github.com/chenxiaolong<br />
* '''Description:''' [[Unity]] extra packages for Arch<br />
<br />
{{bc|<nowiki><br />
[Unity-for-Arch-Extra]<br />
SigLevel = Optional TrustAll<br />
Server = http://dl.dropbox.com/u/486665/Repos/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== home_tarakbumba_archlinux_Arch_Extra_standard ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains a few pre-built AUR packages (zemberek, firefox-kde-opensuse, etc.)<br />
<br />
{{bc|<nowiki><br />
[home_tarakbumba_archlinux_Arch_Extra_standard]<br />
Server = http://download.opensuse.org/repositories/home:/tarakbumba:/archlinux/Arch_Extra_standard/$arch<br />
</nowiki>}}<br />
<br />
==== MEGAsync_Arch_Extra ====<br />
<br />
* '''Maintainer:''' https://mega.nz/#sync<br />
* '''Description:''' MEGAsync extra packages for Arch<br />
<br />
{{bc|<nowiki><br />
[MEGAsync_Arch_Extra]<br />
SigLevel = Never<br />
Server = https://mega.co.nz/linux/MEGAsync/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
== i686 only ==<br />
<br />
=== Signed ===<br />
<br />
==== eee-ck ====<br />
<br />
* '''Maintainer:''' Gruppenpest<br />
* '''Description:''' Kernel and modules optimized for Asus Eee PC 701, with -ck patchset.<br />
* '''Key-ID:''' 27D4A19A<br />
* '''Keyfile''' http://zembla.duckdns.org/repo/gruppenpest.gpg<br />
<br />
{{bc|<nowiki><br />
[eee-ck]<br />
Server = http://zembla.duckdns.org/repo<br />
</nowiki>}}<br />
<br />
==== phillid ====<br />
<br />
* '''Maintainer:''' Phillid<br />
* '''Description:''' Various GCC-s and matching binutils-es which target bare-bones formats (for OS dev). The GCC toolchains are shrunk to ~8&nbsp;MiB each by disabling NLS and everything but the C front-end. Thrown in there is some ham-related stuff I use such as hamlib, xastir, qsstv. Also a couple of legacy packages which are a bit lengthy to build for most people (kdelibs3, qt3).<br />
* '''Key-ID:''' 28F1E6CE<br />
<br />
{{bc|<nowiki><br />
[phillid]<br />
Server = http://phillid.tk/r/i686/<br />
</nowiki>}}<br />
<br />
==== xyne-i686 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "i686" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-i686]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' each program I'm using on x86_64 is compiled for i686 too<br />
* '''Upstream page:''' http://andrwe.org/linux/repository<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/i686<br />
</nowiki>}}<br />
<br />
==== kpiche ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Stable OpenSync packages.<br />
<br />
{{bc|<nowiki><br />
[kpiche]<br />
Server = http://kpiche.archlinux.ca/repo<br />
</nowiki>}}<br />
<br />
==== kernel26-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 2.6.39<br />
<br />
{{bc|<nowiki><br />
[kernel26-pae]<br />
Server = http://kernel26-pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== linux-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 3.0<br />
<br />
{{bc|<nowiki><br />
[linux-pae]<br />
Server = http://pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== rfad ====<br />
<br />
* '''Maintainer:''' requiem [at] archlinux.us<br />
* '''Description:''' Repository made by haxit<br />
<br />
{{bc|<nowiki><br />
[rfad]<br />
Server = http://web.ncf.ca/ey723/archlinux/repo/<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/i686<br />
</nowiki>}}<br />
<br />
== x86_64 only ==<br />
<br />
=== Signed ===<br />
<br />
==== apathism ====<br />
<br />
* '''Maintainer:''' Ivan Koryabkin ([https://aur.archlinux.org/account/apathism/ apathism])<br />
* '''Upstream page:''' https://apathism.net/<br />
* '''Description:''' Some AUR packages like {{AUR|psi-plus-git}} (with qt5 enabled).<br />
* '''Key-ID:''' 3E37398D<br />
* '''Keyfile:''' http://apathism.net/archlinux/apathism.key<br />
<br />
{{bc|<nowiki><br />
[apathism]<br />
Server = http://apathism.net/archlinux/<br />
</nowiki>}}<br />
<br />
==== bioinformatics ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some software tools for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics]<br />
Server = http://decryptedepsilon.bl.ee/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== blackleg ====<br />
<br />
* '''Maintainer:''' Blackleg ([https://aur.archlinux.org/account/blackleg blackleg])<br />
* '''Upstream page:''' [http://www.blackleg.es www.blackleg.es]<br />
* '''Description:''' My AUR's packages and some like: linux-w110er, nvidia-dkms, android-studio, odoo (OpenErp).<br />
* '''Package list:''' [http://www.blackleg.es/x86_64/index.html Blackleg x86_64 packages]<br />
* '''Key-ID:''' 611BFDE1<br />
<br />
{{bc|<nowiki><br />
[blackleg]<br />
Server = ftp://ftp.blackleg.es/archlinux/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== boyska64 ====<br />
<br />
* '''Maintainer:''' boyska<br />
* '''Description:''' Personal repository: cryptography, sdr, mail handling and misc<br />
* '''Key-ID:''' 0x7395DCAE58289CA9<br />
<br />
{{bc|<nowiki><br />
[boyska64]<br />
Server = http://boyska.degenerazione.xyz/archrepo<br />
</nowiki>}}<br />
<br />
==== carstene1ns ====<br />
<br />
* '''Maintainer:''' [[User:Carstene1ns|Carsten Teibes]]<br />
* '''Description:''' AUR packages maintained and/or used by carstene1ns (games/Wii/lib32/Python)<br />
* '''Upstream page:''' http://repo.carsten-teibes.de<br />
* '''Key-ID:''' 2476B20B<br />
<br />
{{bc|<nowiki><br />
[carstene1ns]<br />
Server = http://repo.carsten-teibes.de/$arch<br />
</nowiki>}}<br />
<br />
==== coderkun-aur ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with random software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-audio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with audio-related (realtime kernels, lv2-plugins, …) software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-audio]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-java ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with java related software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-java]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-nonfree ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with proprietary (dropbox, nvidia, …) software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-nonfree]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== eatabrick ====<br />
<br />
* '''Maintainer:''' bentglasstube<br />
* '''Description:''' Packages for software written by (and a few just compiled by) bentglasstube.<br />
<br />
{{bc|<nowiki><br />
[eatabrick]<br />
SigLevel = Required<br />
Server = http://repo.eatabrick.org/$arch<br />
</nowiki>}}<br />
<br />
==== freifunk-rheinland ====<br />
<br />
* '''Maintainer:''' nomaster<br />
* '''Description:''' Packages for the Freifunk project: batman-adv, batctl, fastd and dependencies.<br />
<br />
{{bc|<nowiki><br />
[freifunk-rheinland]<br />
Server = http://mirror.fluxent.de/archlinux-custom/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== gustawho ====<br />
<br />
* '''Maintainer:''' [https://twitter.com/gustawho Gustavo Castro] <gustawho@gmail.com><br />
* '''Description:''' Scientific tools (mostly physics/math) and AUR packages that would take long to build, such as {{AUR|firefox-kde-opensuse}}.<br />
* '''Package list:''' http://gustawho.x10.mx/repo/x86_64<br />
* '''Upstream page:''' http://gustawho.x10.mx<br />
* '''Key-ID:''' 2C575D76<br />
<br />
{{bc|<nowiki><br />
[gustawho]<br />
Server = http://gustawho.x10.mx/repo/x86_64<br />
</nowiki>}}<br />
<br />
* '''Note:''' If you need firefox-kde-opensuse for i686 and/or the unsigned x86_64 package, try this repo instead:<br />
<br />
{{bc|<nowiki><br />
[home_gustawho_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/gustawho/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== Linux-pf ====<br />
<br />
{{Accuracy|Signed repositories should not use {{ic|1=SigLevel = Optional}} (by definition).}}<br />
<br />
* '''Maintainer:''' [[User:Thaodan|Thaodan]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf, just like {{AUR|linux-pf}} from the [[AUR]] but additionally optimized for intel CPUs Sandy Bridge, Ivy Bridge, Haswell and generic of course, and some extra packages<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox).<br />
<br />
{{bc|<nowiki><br />
[Linux-pf]<br />
Server = https://dl.dropboxusercontent.com/u/172590784/Linux-pf/x86_64/<br />
SigLevel = Optional<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-multilib ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle multilib repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-multilib]<br />
Server = http://bohoomil.com/repo/multilib/$arch<br />
</nowiki>}}<br />
<br />
==== kc9ydn ====<br />
<br />
* '''Maintainer:''' [http://kc9ydn.us KC9YDN]<br />
* '''Description:''' Consists mostly of amateur radio related apps<br />
* '''Key-ID:''' 7DA25A0F<br />
<br />
{{bc|<nowiki><br />
[kc9ydn]<br />
Server = http://kc9ydn.us/repo/<br />
</nowiki>}}<br />
<br />
==== linux-lts-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current ArchLinux LTS kernel with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/x86_64/index.html or start at http://tiny.cc/linux-lts-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch)<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x/x86_64/index.html or start at http://tiny.cc/linux-lts31x<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch) with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/x86_64/index.html or start at http://tiny.cc/linux-lts31x-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-ck-pax ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current Arch Kernel with the CK and PaX security patchsets<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/x86_64/index.html or start at http://tiny.cc/linux-ck-pax<br />
<br />
{{bc|<nowiki><br />
[linux-ck-pax]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/$arch<br />
</nowiki>}}<br />
<br />
==== linux-tresor ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Arch Current and LTS kernels with TRESOR<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-tresor/x86_64/index.html or start at http://tiny.cc/linux-tresor<br />
<br />
{{bc|<nowiki><br />
[linux-tresor]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-tresor/$arch<br />
</nowiki>}}<br />
<br />
==== qt-debug ====<br />
<br />
* '''Maintainer:''' [http://blog.the-compiler.org/?page_id=36 The Compiler]<br />
* '''Description:''' Qt/PyQt builds with debug symbols<br />
* '''Upstream page:''' https://github.com/The-Compiler/qt-debug-pkgbuild<br />
* '''Key-ID:''' D6A1C70FE80A0C82<br />
<br />
{{bc|<nowiki><br />
[qt-debug]<br />
Server = http://qutebrowser.org/qt-debug/$arch<br />
</nowiki>}}<br />
<br />
==== quarry ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#anatolik anatolik]<br />
* '''Description:''' Arch binary repository for [http://rubygems.org/ Rubygems] packages. See [https://bbs.archlinux.org/viewtopic.php?id=182729 forum announcement] for more information.<br />
* '''Sources:''' https://github.com/anatol/quarry<br />
* '''Key-ID:''' Not needed, as maintainer is a developer<br />
<br />
{{bc|<nowiki><br />
[quarry]<br />
# report issues at https://github.com/anatol/quarry<br />
Server = http://pkgbuild.com/~anatolik/quarry/x86_64/<br />
</nowiki>}}<br />
<br />
==== rstudio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/unikum/ Artem Klevtsov]<br />
* '''Description:''' Rstudio IDE package (git version) and depends.<br />
* '''Key-ID:''' 1CB48DD4<br />
<br />
{{bc|<nowiki><br />
[rstudio]<br />
Server = http://repo.psylab.info/archlinux/x86_64/<br />
</nowiki>}}<br />
<br />
==== siosm-aur ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages also available in the Arch User Repository, sometimes with minor fixes<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-aur]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== siosm-selinux ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages required for SELinux support – work in progress (notably, missing an Arch Linux-compatible SELinux policy). See the [[SELinux]] page for details.<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-selinux]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== subtitlecomposer ====<br />
<br />
* '''Maintainer:''' Mladen Milinkovic (maxrd2)<br />
* '''Description:''' Subtitle Composer stable and nightly builds<br />
* '''Upstream page:''' https://github.com/maxrd2/subtitlecomposer<br />
* '''Key-ID:''' EA8CEBEE<br />
<br />
{{bc|<nowiki><br />
[subtitlecomposer]<br />
Server = http://smoothware.net/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== xyne-x86_64 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "x86_64" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-x86_64]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== alucryd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages Maxime Gauduin maintains (or not) in the AUR.<br />
<br />
{{bc|<nowiki><br />
[alucryd]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== alucryd-multilib ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages needed to run Steam without its runtime environment.<br />
<br />
{{bc|<nowiki><br />
[alucryd-multilib]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' contains programs I'm using on many systems<br />
* '''Upstream page:''' http://andrwe.dyndns.org/doku.php/blog/repository {{Dead link|2013|11|30}}<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/x86_64<br />
</nowiki>}}<br />
<br />
==== archstudio ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Audio and Music Packages optimized for Intel Core i3, i5, and i7.<br />
* '''Upstream page:''' http://www.xsounds.org/~archstudio<br />
<br />
{{bc|<nowiki><br />
[archstudio]<br />
Server = http://www.xsounds.org/~archstudio/x86_64<br />
</nowiki>}}<br />
<br />
==== brtln ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bpiotrowski Bartłomiej Piotrowski]<br />
* '''Description:''' Some VCS packages.<br />
<br />
{{bc|<nowiki><br />
[brtln]<br />
Server = http://pkgbuild.com/~barthalion/brtln/$arch/<br />
</nowiki>}}<br />
<br />
==== kps ====<br />
<br />
* '''Maintainer:''' kps<br />
* '''Description:''' gmt, catalyst-test, ttf-ms-win8, rstudio, meshlab, gcc-gcj, vlc-git, ffmpeg-git (k10 & intel opt.), docear, maperitive, libressl, bkchem ...<br />
<br />
{{bc|<nowiki><br />
[kps]<br />
Server = http://kps.bplaced.net/repo/$arch<br />
</nowiki>}}<br />
<br />
==== pnsft-pur ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Japanese input method packages Mozc (vanilla) and libkkc<br />
<br />
{{bc|<nowiki><br />
[pnsft-pur]<br />
Server = http://downloads.sourceforge.net/project/pnsft-aur/pur/x86_64<br />
</nowiki>}}<br />
<br />
==== mingw-w64 ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/ant32 Philip] and [https://aur.archlinux.org/account/nic96 Jeromy] Reimer<br />
* '''Description:''' Almost all mingw-w64 packages in the AUR updated every 8 hours.<br />
* '''Upstream page:''' http://arch.linuxx.org<br />
<br />
{{Note|As of June 2015, the homepage is not available. However, recent builds are still available at sourceforge.}}<br />
<br />
{{bc|<nowiki><br />
[mingw-w64]<br />
Server = http://downloads.sourceforge.net/project/mingw-w64-archlinux/$arch<br />
#Server = http://arch.linuxx.org/archlinux/$repo/os/$arch<br />
#Server = http://amr.linuxd.org/archlinux/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== rakudo ====<br />
<br />
* '''Maintainer:''' spider-mario <spidermario@free.fr><br />
* '''Description:''' Rakudo Perl6<br />
<br />
{{bc|<nowiki><br />
[rakudo]<br />
Server = http://spidermario.free.fr/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== rightlink ====<br />
<br />
* '''Maintainer:''' Chris Fordham <chris@fordham-nagy.id.au><br />
* '''Description:''' RightLink version 10 (RL10) is a new version of RightScale's server agent that connects servers managed through RightScale to the RightScale cloud management platform.<br />
<br />
{{bc|<nowiki><br />
[rightlink]<br />
Server = https://s3-ap-southeast-2.amazonaws.com/archlinux.rightscale.me/repo<br />
</nowiki>}}<br />
<br />
==== seiichiro ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' VDR and some plugins, mms, foo2zjs-drivers<br />
<br />
{{bc|<nowiki><br />
[seiichiro]<br />
Server = http://repo.seiichiro0185.org/x86_64<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== mikroskeem ====<br />
<br />
* '''Maintainer:''' mikroskeem <mikroskeem@mikroskeem.eu><br />
* '''Description:''' Openarena and i3 wm-related packages<br />
<br />
{{bc|<nowiki><br />
[mikroskeem]<br />
Server = http://nightsnack.cf/<br />
</nowiki>}}<br />
<br />
== armv6h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== arch-fook-armv6h ====<br />
<br />
* '''Maintainer:''' Jaska Kivelä <jaska@kivela.net><br />
* '''Description:''' Stuff that I have compiled for my Raspberry PI. Including Enlightenment and home automation stuff.<br />
<br />
{{bc|<nowiki><br />
[arch-fook-armv6h]<br />
Server = http://kivela.net/jaska/arch-fook-armv6h<br />
</nowiki>}}<br />
<br />
== armv7h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== pietma ====<br />
<br />
* '''Maintainer:''' MartiMcFly <martimcfly@autorisation.de><br />
* '''Description:''' Arch User Repository packages [https://aur.archlinux.org/packages/?K=martimcfly&SeB=m I create or maintain.].<br />
* '''Upstream page:''' [http://pietma.com/tag/aur/ http://pietma.com/tag/aur/]<br />
{{bc|<nowiki><br />
[pietma]<br />
SigLevel = Optional TrustAll<br />
Server = http://repository.pietma.com/nexus/content/repositories/archlinux/$arch/$repo<br />
</nowiki>}}</div>Noushttps://wiki.archlinux.org/index.php?title=User:Nous&diff=370715User:Nous2015-04-22T21:01:27Z<p>Nous: Add openrc-related repos and sites</p>
<hr />
<div>Christos Nouskas (nous at archlinux dot us )<br />
<br />
Original submitter and maintainer of [https://aur.archlinux.org/packages/linux-pf/ linux-pf] at [https://aur.archlinux.org/ AUR] until April 2013. Current maintainer of [https://aur.archlinux.org/packages/linux-pf-lts/ linux-pf-lts].<br />
Maintainer of the [http://dl.dropbox.com/u/11734958/index.html pfkernel/linux-pf/OpenRC] and [https://sourceforge.net/projects/archopenrc Arch OpenRC] unofficial repositories.<br />
Maintainer of [http://systemd-free.org systemd-free.org], which is an effort to put together a reasonably reliable guide for migrating from systemd to OpenRC.</div>Noushttps://wiki.archlinux.org/index.php?title=User_talk:Lahwaacz&diff=368944User talk:Lahwaacz2015-04-07T22:16:43Z<p>Nous: </p>
<hr />
<div>== Regex for replacing = codes ==<br />
<br />
Hi, regarding [[User:Lahwaacz#User:Lahwaacz#Regex_for_replacing_.3D_codes]] do you intend to use a similar expression with the editor assistant or directly with the bot? In the latter case I think it would be pretty dangerous, for example it would break templates that already use a named parameter, e.g. {{ic|<nowiki>{{Template|parameter=value}}</nowiki>}} would be turned into {{ic|<nowiki>{{Template|1=parameter=value}}</nowiki>}}. -- [[User:Kynikos|Kynikos]] ([[User talk:Kynikos|talk]]) 16:57, 21 March 2014 (UTC)<br />
<br />
:I used it [https://wiki.archlinux.org/index.php?title=Systemd-networkd&diff=prev&oldid=306182 only once] and don't have any specific plans, but I'm quite certain I will need to use it again sometimes... Thanks for the warning, I will be cautious. -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 17:50, 21 March 2014 (UTC)<br />
<br />
== PodCastXDL ==<br />
<br />
About [https://wiki.archlinux.org/index.php?title=List_of_applications/Internet&diff=prev&oldid=323048] (and [https://wiki.archlinux.org/index.php?title=List_of_applications/Internet&diff=next&oldid=323048]) [[User:Levi0x0x]], who should have indeed provided an edit summary, appears to be the developer of the application and the maintainer of the PKGBUILD. I would keep his edit. -- [[User:Kynikos|Kynikos]] ([[User talk:Kynikos|talk]]) 00:45, 5 July 2014 (UTC)<br />
<br />
:I know - I've seen also [https://wiki.archlinux.org/index.php?title=MPlayer&diff=next&oldid=322278 bash-player] removed, both from wiki and Github (it seems the repo has been recreated from scratch). PodCastXDL has always been available upstream. -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 08:20, 5 July 2014 (UTC)<br />
<br />
::Didn't he add it to the list one week ago? [https://wiki.archlinux.org/index.php?title=List_of_applications/Internet&diff=prev&oldid=322258] Maybe he's found some bug and doesn't want people to use it until he fixes it? Anyway I'm not that interested, we can as well see if/how Levi0x0x reacts. -- [[User:Kynikos|Kynikos]] ([[User talk:Kynikos|talk]]) 04:32, 6 July 2014 (UTC)<br />
<br />
== Netctl ==<br />
The variables ACTION, INTERFACE, SSID, and Profile are '''only''' exported by auto.action and '''only'''<br />
netctl-auto uses that script. So if your not using netctl-auto then they don't do anything. [[User:Captaincurrie|Captaincurrie]] ([[User talk:Captaincurrie|talk]]) 08:35, 27 December 2014 (UTC)<br />
<br />
:That may be true, but that's not reason to remove the ''expansion'' flag from the page. -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 08:45, 27 December 2014 (UTC)<br />
<br />
== <del>Article discussion prior to deletion argument</del> ==<br />
<br />
On 2015-03-24T13:21:22, [[User:Lahwaacz|Lahwaacz]] deleted article [[Firefox/Font_type_and_size]].<br />
<br />
I believe that it is Arch Linux wiki policy and general wiki policy to have discussions before article deletions. Exceptions that I have known have been for has been instances, for example, like original research, intentional vandalism, sensitive details related to personal biographies, and similar criteria. The reasons given for the deletion do not belong to the noted exceptions and any other reasons that I know:<br />
<br />
: "ArchWiki is not your blog (inappropriate language, not specific to Firefox, duplicates other pages: Fonts, Font configuration)"<br />
<br />
[[User:Gen2ly|Gently]] ([[User talk:Gen2ly|talk]]) 14:26, 25 March 2015 (UTC)<br />
<br />
:The page was not deleted but moved to [[User:Gen2ly/Firefox/Font_type_and_size]]. This is not an excuse, just to set things right. This case indeed does not fall into the exceptions you've named, but I believe that low quality is good enough reason to move a page into the userspace. -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 15:31, 25 March 2015 (UTC)<br />
<br />
:: The "low quality" quip is unnecessary and I think we as wiki administrators would do good to try and be accurately descriptive particularly on such serious actions. If this action and comment is for personal reasons, please mention so and I'll contact you by email where that discussion would be more appropriate. Otherwise, if can be gotten over please continue to read.<br />
<br />
:: I went to the article the day after and saw initially the notice "This page has been deleted...". This was new to me. I have since learned that moving a page without a redirect would leave this message. This message may bear discussion in similar form in the future but as it is now, this topic is erroneous and considered closed by me. (To deal with the "moving to userspace" reasoning I will take a tangential angle and open a discussion bearing the reasons for the move and attempt to resolve them (in the attempt to be as helpful as possible). If the topic is of interest, please visit and leave a comment if it is desirable [[User_talk:Gen2ly/Web_browser_font_type_and_size#Article_adoption_inquiry|there]].)<br />
<br />
:: [[User:Gen2ly|Gently]] ([[User talk:Gen2ly|talk]]) 15:18, 31 March 2015 (UTC)<br />
<br />
:::I agree that the notice is misleading, unfortunately I don't see a way this could be improved in the near future. Anyway, there was nothing personal behind the action, I will leave more descriptive comments about style and content "there". -- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 19:42, 31 March 2015 (UTC)<br />
<br />
== bot AUR to Official Repository edit ==<br />
<br />
A recent bot edit ([https://github.com/lahwaacz/wiki-scripts/blob/master/update-package-templates.py update Pkg/AUR templates]) by [[User:Lahwaacz.bot]] on the [[Gitolite]] page correctly changed the AUR template to Pkg but left the [[Arch User Repository]] link<br />
<br />
I fixed this, but would it be possible to modify the bot to take this into consideration?<br />
<br />
I can imagine that blanket changing AUR links to Official Repository links in any given page could be dangerous - but for common phrasing or possibly word distance it would seem to be relatively safe<br />
<br />
Or is there some sort of post-run manual inspection that I am unaware of that handles this situation? <br />
<br />
Specifically this [https://wiki.archlinux.org/index.php?title=Gitolite&diff=next&oldid=366859 edit]<br />
<br />
From:<br />
<pre><br />
{{AUR|gitolite}} is available in the [[Arch User Repository]]<br />
</pre><br />
<br />
To:<br />
<pre><br />
{{Pkg|gitolite}} is available in the [[Arch User Repository]]<br />
</pre><br />
<br />
<br />
<br />
[[User:Tido.com|Tido.com]] ([[User talk:Tido.com|talk]]) 01:50, 1 April 2015 (UTC)<br />
<br />
By "word distance" above what I _meant_ was [[Wikipedia:Edit Distance|Edit Distance]] ;)<br />
<br />
I was initially thinking of Hamming distance - but apparently that is for strings of equal length.<br />
<br />
What looks more promising is the Levenshtein distance - specifically "Comparing a list of strings" from the Python [https://pypi.python.org/pypi/Distance/0.1.3 Distance] package.<br />
<br />
Example shamelessly ripped from that page:<br />
<br />
(mainly because I couldn't link directly to the relevant section)<br />
<br />
<pre><br />
>>> sent1 = ['the', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']<br />
>>> sent2 = ['the', 'lazy', 'fox', 'jumps', 'over', 'the', 'crazy', 'dog']<br />
>>> distance.levenshtein(sent1, sent2)<br />
3<br />
</pre><br />
[[User:Tido.com|Tido.com]] ([[User talk:Tido.com|talk]]) 04:07, 1 April 2015 (UTC)<br />
<br />
:Hi,<br />
:the bot currently does not touch the surrounding text at all, it only modifies the package templates or appends [[Template:Broken package link]] when the package is not found. This is obviously not perfect, this behaviour may lead to some incorrect combinations as you noticed, but blindly fixing the package links and not the surrounding text is still considered to be an improvement. Checking the surrounding text manually would require a lot of manpower, which we don't have, so it is currently not done systematically. Feel free to ask for further details or see the most recent discussion: [[ArchWiki:Requests#Strategy_for_updating_package_templates]].<br />
:Regarding automatic updates of the surrounding text, the edit distance gives a clue about whether given edit should be performed or not, but it does not define how an edit should be performed. It can be useful in cases where there are multiple feasible substitutions in text and the strategy to select the optimal substitution is e.g. to minimize the Levenshtein distance. But we don't have any algorithm to generate feasible substitutions yet, so this technique fails. The surrounding text substitution is also very context sensitive and wiki bots must be designed in a way to minimize (ideally avoid completely) the [[wikipedia:Error_of_the_first_kind|error of the first kind]], which in this case is modifying correct text to be incorrect. This makes defining general rules for the text substitution really hard, on the other hand many rules would be necessary to cover even the basic form of standard wording, so in the end both ways may be comparably hard. Anyway, if you have some ideas, I'm all ears :)<br />
:-- [[User:Lahwaacz|Lahwaacz]] ([[User talk:Lahwaacz|talk]]) 17:51, 1 April 2015 (UTC)<br />
<br />
I'm sorry, I un-did your ''expansion'' edit in [[linux-pf]] accidentally.<br />
[[User:Nous|Nous]] ([[User talk:Nous|talk]]) 22:16, 7 April 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:Linux-pf&diff=368943Talk:Linux-pf2015-04-07T22:12:46Z<p>Nous: Inappropriate edits</p>
<hr />
<div>[[User:Serag4000|Serag4000]] shouldn't edit on a whim. His/her edits were wrong for he/she changed the repo URL without changing the repo name (immediate 404) and he/she instructed on placing the repo URL before all other repos in pacman.conf, which could easily compromise security if someone planted a tampered sshd in the URL in question. [[User:Thaodan|Thaodan]] may be the current maintainer of [[linux-pf]] but his repo only contains x86_64 packages for newest Intel CPUs.<br />
<br />
If anyone wants to add more repos they're welcome, but please do so appropriately and politely.<br />
[[User:Nous|Nous]] ([[User talk:Nous|talk]]) 22:12, 7 April 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=Linux-pf&diff=368941Linux-pf2015-04-07T21:45:28Z<p>Nous: /* From the unofficial repository (recommended) */ update repo description</p>
<hr />
<div>[[Category:Kernel]]<br />
[http://pf.natalenko.name/ Linux-pf] is a kernel package based on the stock -ARCH kernel, patched with a row of significant patches:<br />
* [http://ck-hack.blogspot.com/ The latest Con Kolivas' -ck patchset, including BFS]<br />
* [[TuxOnIce]]<br />
* [http://algo.ing.unimo.it/people/paolo/disk_sched/ BFQ] (as default I/O scheduler)<br />
* [http://kerneldedup.org/projects/uksm/ UKSM]<br />
* [http://aufs.sourceforge.net/ AUFS3]<br />
<br />
== Installation ==<br />
<br />
Install {{AUR|linux-pf}} from the [[AUR]]. A long-term support version of linux-pf is available with {{AUR|linux-pf-lts}}.<br />
<br />
=== From the unofficial repository (recommended) ===<br />
<br />
Precompiled packages, generic and CPU-family optimized are uploaded at the [http://dl.dropbox.com/u/11734958/index.html pfkernel unofficial repository], usually within 6 hours of the AUR update for x86_64 and 12 hours for i686. Append the following to {{ic|/etc/pacman.conf}} to activate the pfkernel repo:<br />
:{{bc|<nowiki><br />
[pfkernel]<br />
# linux-pf and linux-pf-lts, generic and optimized packages<br />
SigLevel = Optional<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
</nowiki>}}<br />
Packages in the unofficial repository are not signed, so you will need to set SigLevel to Optional or Never. Running {{ic|$ pacman -Syyl pfkernel}} will update all repos and show the available packages from pfkernel. Afterwards, just install {{AUR|linux-pf}} and {{AUR|linux-pf-headers}} (for generic binaries - platform-specific binaries are also available and will be listed in the output from the aforementioned pacman command), but additional configuration steps must be performed; see the [[#Installation|Installation]] section.<br />
<br />
=== Manual compilation ===<br />
<br />
There's a number of options a user is asked to choose from, should he/she select to compile from the PKGBUILD:<br />
{{bc|<nowiki><br />
==> Hit <Y> to use your running kernel's config<br />
(needs IKCONFIG and IKCONFIG_PROC)<br />
==> Hit <L> to run 'make localmodconfig'<br />
==> Hit <N> (or just <ENTER>) to build an all-inclusive kernel like stock -ARCH<br />
(warning: it can take a looong time)<br />
</nowiki>}}<br />
The <Y> option is for users who have already compiled and are running a custom kernel. The PKGBUILD reads the running kernel's configuration and uses it for the subsequent compilation.<br />
The <L> option tries some kind of autodetection of the user's hardware: it first tries to use the [[modprobed_db]] module database, then falls back to the linux kernel's '''''make localmodconfig''''' functionality. The last option is self-explanatory.<br />
<br />
{{bc|<nowiki><br />
==> Kernel configuration options before build:<br />
<M> make menuconfig (console menu)<br />
<N> make nconfig (newer alternative to menuconfig)<br />
<G> make gconfig (needs gtk)<br />
<X> make xconfig (needs qt)<br />
<O> make oldconfig<br />
<ENTER> to skip configuration and start compiling<br />
</nowiki>}}<br />
Choose one of these to use your favourite user interface for configuring the kernel. Note that the last option might still prompt with unresolved/new configuration options, if you have selected <Y> or <L> in the previous step.<br />
<br />
{{bc|<nowiki><br />
==> An non-generic CPU was selected for this kernel.<br />
==> Hit <G> : to create a generic package named linux-pf<br />
==> Hit <ENTER> : to create a package named after the selected CPU<br />
(e.g. linux-pf-core2 - recommended)<br />
==> This option affects ONLY the package name. Whether or not the<br />
==> kernel is optimized was determined at the previous config step.<br />
</nowiki>}}<br />
If you have selected a specific CPU optimization for your kernel in the previous step, the default action is to append the CPU to the package name. This way, a subsequent package update from the repository will pull the optimized package and not the generic one. This also will help better compatibility with 3rd party precompiled modules (e.g. nvidia-pf), which might break things if loaded on optimized linux-pf kernels.<br />
<br />
==== Install compiled package ====<br />
<br />
After the compilation finishes, an additional ''linux-pf-headers[-cpu]'' package will be created. Don't forget to install it too, if you plan on using additional modules like [[nvidia]] or [[virtualbox]].<br />
<br />
# pacman -U linux-pf-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz linux-pf-headers-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz<br />
<br />
During the kernel installation, [[mkinitcpio]] will be called by the install script to recreate the initramfs.<br />
{{Note|If you make any changes to {{ic|/etc/mkinitcpio.conf}} after the installation, you must run '''''mkinitcpio -p linux-pf''''' to have the initial ramdisk recreated.}}<br />
<br />
== Configuration ==<br />
<br />
Then, you need to add a boot entry in [[Boot Loader#Configuration files|boot loader configuration file]] which points to linux-pf (the following example is from one of the maintainer's boxes):<br />
{{bc|<nowiki><br />
title Linux-pf 3.2<br />
root (hd0,4)<br />
kernel (hd0,0)/vmlinuz-linux-pf root=/dev/disk/by-label/ROOT ro vga=0x318 lapic resume=/dev/disk/by-label/SWAP video=vesafb:ywrap,mtrr:3 fastboot quiet<br />
initrd (hd0,0)/initramfs-linux-pf.img<br />
</nowiki>}}<br />
<br />
If you intend to use TuxOnIce for hibernation, make sure you have added the necessary modules to the MODULES array of {{ic|/etc/mkinitcpio.conf}} and at least the ''resume'' hook to the HOOKS array:<br />
{{bc|<nowiki><br />
MODULES="... lzo tuxonice_compress tuxonice_swap tuxonice_userui ..."<br />
HOOKS="... block userui resume filesystems ..."<br />
</nowiki>}}<br />
In the example above, TuxOnIce is setup to use a swap partition as the suspended image allocator. The ''resume'' hook must be placed before ''filesystems''. Also, a progress indicator is requested with ''userui''. Please read the [[TuxOnIce]] wiki page for more detailed information.<br />
<br />
Last, you must choose whether you want to suspend using [[pm-utils]] or the [[hibernate-script]]. Please, refer to the respective wiki pages for more details. [[TuxOnIce]] offers the option for a text mode or an even nicer [[fbsplash|framebuffer splash]] progress indicator.<br />
<br />
== Tips and tricks ==<br />
<br />
* If you notice disk-related performance problems or occational hickups, it might be an I/O scheduler issue. Try a different one than the linux-pf default (BFQ) by echoing to {{ic|/sys/block/sda/queue/scheduler}} ''cfq'', ''noop'' or ''deadline'': {{ic|# echo noop >| /sys/block/sda/queue/scheduler}}. Note, the aforementioned command only sets the I/O scheduler for the 1st hard drive and additional ''echoes'' will be needed if you have more. If the situation improves, then append "''elevator''='''''cfq'''''" (or '''''noop''''' or '''''deadline''''') to the linux-pf command line in {{ic|/boot/grub/menu.lst}}, to make the change permanent.<br />
* For people who build their own tailored kernels and compilation aborts with with an error about "missing include/config/dvb/*.h files", setting ''[*] Digital TV support'' at ''Device Drivers / <M> Multimedia support'' and leaving everything else out, creates just the necessary dvb.h, which allows the compilation to continue.<br />
<br />
== Forum thread for linux-pf ==<br />
<br />
There's a [https://bbs.archlinux.org/viewtopic.php?id=103462 discussion thread] at the BBS for reporting errors, impressions, ideas and requests.<br />
<br />
== See also ==<br />
<br />
* [https://bitbucket.org/nous/linux-pf/ linux-pf mercurial repository]<br />
* [http://pf.natalenko.name/ Patchset homepage]<br />
* [http://pf.natalenko.name/forum Patchset community forum]<br />
* [http://freecode.com/projects/pf-kernel Patchset changelog]</div>Noushttps://wiki.archlinux.org/index.php?title=Linux-pf&diff=368940Linux-pf2015-04-07T21:42:14Z<p>Nous: Serag4000 shouldn't edit out other people's repositories; [pfkernel] has been here for some years providing binaries for the mainline kernel CPUs, not out-of-kernel patched ones.</p>
<hr />
<div>[[Category:Kernel]]<br />
[http://pf.natalenko.name/ Linux-pf] is a kernel package based on the stock -ARCH kernel, patched with a row of significant patches:<br />
* [http://ck-hack.blogspot.com/ The latest Con Kolivas' -ck patchset, including BFS]<br />
* [[TuxOnIce]]<br />
* [http://algo.ing.unimo.it/people/paolo/disk_sched/ BFQ] (as default I/O scheduler)<br />
* [http://kerneldedup.org/projects/uksm/ UKSM]<br />
* [http://aufs.sourceforge.net/ AUFS3]<br />
<br />
== Installation ==<br />
<br />
Install {{AUR|linux-pf}} from the [[AUR]]. A long-term support version of linux-pf is available with {{AUR|linux-pf-lts}}.<br />
<br />
=== From the unofficial repository (recommended) ===<br />
<br />
Precompiled packages, generic and CPU-family optimized are uploaded at the [http://dl.dropbox.com/u/11734958/index.html pfkernel unofficial repository], usually within 6 hours of the AUR update for x86_64 and 12 hours for i686. Append the following to {{ic|/etc/pacman.conf}} to activate the pfkernel repo:<br />
:{{bc|<nowiki><br />
[pfkernel]<br />
# Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, IMQ, Aufs3<br />
# linux-pf, kernel26-pf, gdm-old, nvidia-pf, nvidia-96xx, xchat-greek, arora-git<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
SigLevel = Optional<br />
</nowiki>}}<br />
Packages in the unofficial repository are not signed, so you will need to set SigLevel to Optional or Never. Running {{ic|$ pacman -Syyl pfkernel}} will update all repos and show the available packages from pfkernel. Afterwards, just install {{AUR|linux-pf}} {{AUR|linux-pf-headers}} (for generic binaries - platform-specific binaries are also available and will be listed in the output from the aforementioned pacman command), but additional configuration steps must be performed; see the [[#Installation|Installation]] section.<br />
<br />
=== Manual compilation ===<br />
<br />
There's a number of options a user is asked to choose from, should he/she select to compile from the PKGBUILD:<br />
{{bc|<nowiki><br />
==> Hit <Y> to use your running kernel's config<br />
(needs IKCONFIG and IKCONFIG_PROC)<br />
==> Hit <L> to run 'make localmodconfig'<br />
==> Hit <N> (or just <ENTER>) to build an all-inclusive kernel like stock -ARCH<br />
(warning: it can take a looong time)<br />
</nowiki>}}<br />
The <Y> option is for users who have already compiled and are running a custom kernel. The PKGBUILD reads the running kernel's configuration and uses it for the subsequent compilation.<br />
The <L> option tries some kind of autodetection of the user's hardware: it first tries to use the [[modprobed_db]] module database, then falls back to the linux kernel's '''''make localmodconfig''''' functionality. The last option is self-explanatory.<br />
<br />
{{bc|<nowiki><br />
==> Kernel configuration options before build:<br />
<M> make menuconfig (console menu)<br />
<N> make nconfig (newer alternative to menuconfig)<br />
<G> make gconfig (needs gtk)<br />
<X> make xconfig (needs qt)<br />
<O> make oldconfig<br />
<ENTER> to skip configuration and start compiling<br />
</nowiki>}}<br />
Choose one of these to use your favourite user interface for configuring the kernel. Note that the last option might still prompt with unresolved/new configuration options, if you have selected <Y> or <L> in the previous step.<br />
<br />
{{bc|<nowiki><br />
==> An non-generic CPU was selected for this kernel.<br />
==> Hit <G> : to create a generic package named linux-pf<br />
==> Hit <ENTER> : to create a package named after the selected CPU<br />
(e.g. linux-pf-core2 - recommended)<br />
==> This option affects ONLY the package name. Whether or not the<br />
==> kernel is optimized was determined at the previous config step.<br />
</nowiki>}}<br />
If you have selected a specific CPU optimization for your kernel in the previous step, the default action is to append the CPU to the package name. This way, a subsequent package update from the repository will pull the optimized package and not the generic one. This also will help better compatibility with 3rd party precompiled modules (e.g. nvidia-pf), which might break things if loaded on optimized linux-pf kernels.<br />
<br />
==== Install compiled package ====<br />
<br />
After the compilation finishes, an additional ''linux-pf-headers[-cpu]'' package will be created. Don't forget to install it too, if you plan on using additional modules like [[nvidia]] or [[virtualbox]].<br />
<br />
# pacman -U linux-pf-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz linux-pf-headers-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz<br />
<br />
During the kernel installation, [[mkinitcpio]] will be called by the install script to recreate the initramfs.<br />
{{Note|If you make any changes to {{ic|/etc/mkinitcpio.conf}} after the installation, you must run '''''mkinitcpio -p linux-pf''''' to have the initial ramdisk recreated.}}<br />
<br />
== Configuration ==<br />
<br />
Then, you need to add a boot entry in [[Boot Loader#Configuration files|boot loader configuration file]] which points to linux-pf (the following example is from one of the maintainer's boxes):<br />
{{bc|<nowiki><br />
title Linux-pf 3.2<br />
root (hd0,4)<br />
kernel (hd0,0)/vmlinuz-linux-pf root=/dev/disk/by-label/ROOT ro vga=0x318 lapic resume=/dev/disk/by-label/SWAP video=vesafb:ywrap,mtrr:3 fastboot quiet<br />
initrd (hd0,0)/initramfs-linux-pf.img<br />
</nowiki>}}<br />
<br />
If you intend to use TuxOnIce for hibernation, make sure you have added the necessary modules to the MODULES array of {{ic|/etc/mkinitcpio.conf}} and at least the ''resume'' hook to the HOOKS array:<br />
{{bc|<nowiki><br />
MODULES="... lzo tuxonice_compress tuxonice_swap tuxonice_userui ..."<br />
HOOKS="... block userui resume filesystems ..."<br />
</nowiki>}}<br />
In the example above, TuxOnIce is setup to use a swap partition as the suspended image allocator. The ''resume'' hook must be placed before ''filesystems''. Also, a progress indicator is requested with ''userui''. Please read the [[TuxOnIce]] wiki page for more detailed information.<br />
<br />
Last, you must choose whether you want to suspend using [[pm-utils]] or the [[hibernate-script]]. Please, refer to the respective wiki pages for more details. [[TuxOnIce]] offers the option for a text mode or an even nicer [[fbsplash|framebuffer splash]] progress indicator.<br />
<br />
== Tips and tricks ==<br />
<br />
* If you notice disk-related performance problems or occational hickups, it might be an I/O scheduler issue. Try a different one than the linux-pf default (BFQ) by echoing to {{ic|/sys/block/sda/queue/scheduler}} ''cfq'', ''noop'' or ''deadline'': {{ic|# echo noop >| /sys/block/sda/queue/scheduler}}. Note, the aforementioned command only sets the I/O scheduler for the 1st hard drive and additional ''echoes'' will be needed if you have more. If the situation improves, then append "''elevator''='''''cfq'''''" (or '''''noop''''' or '''''deadline''''') to the linux-pf command line in {{ic|/boot/grub/menu.lst}}, to make the change permanent.<br />
* For people who build their own tailored kernels and compilation aborts with with an error about "missing include/config/dvb/*.h files", setting ''[*] Digital TV support'' at ''Device Drivers / <M> Multimedia support'' and leaving everything else out, creates just the necessary dvb.h, which allows the compilation to continue.<br />
<br />
== Forum thread for linux-pf ==<br />
<br />
There's a [https://bbs.archlinux.org/viewtopic.php?id=103462 discussion thread] at the BBS for reporting errors, impressions, ideas and requests.<br />
<br />
== See also ==<br />
<br />
* [https://bitbucket.org/nous/linux-pf/ linux-pf mercurial repository]<br />
* [http://pf.natalenko.name/ Patchset homepage]<br />
* [http://pf.natalenko.name/forum Patchset community forum]<br />
* [http://freecode.com/projects/pf-kernel Patchset changelog]</div>Noushttps://wiki.archlinux.org/index.php?title=Linux-pf&diff=368939Linux-pf2015-04-07T21:30:44Z<p>Nous: Serag4000 shouldn't edit out other people's repositories; [pfkernel] has been here for some years providing binaries for the mainline kernel CPUs, not out-of-kernel patched ones.</p>
<hr />
<div>[[Category:Kernel]]<br />
[http://pf.natalenko.name/ Linux-pf] is a kernel package based on the stock -ARCH kernel, patched with a row of significant patches:<br />
* [http://ck-hack.blogspot.com/ The latest Con Kolivas' -ck patchset, including BFS]<br />
* [[TuxOnIce]]<br />
* [http://algo.ing.unimo.it/people/paolo/disk_sched/ BFQ] (as default I/O scheduler)<br />
* [http://kerneldedup.org/projects/uksm/ UKSM]<br />
* [http://aufs.sourceforge.net/ AUFS3]<br />
<br />
== Installation ==<br />
<br />
Install {{AUR|linux-pf}} from the [[AUR]]. A long-term support version of linux-pf is available with {{AUR|linux-pf-lts}}.<br />
<br />
=== From the unofficial repository (recommended) ===<br />
<br />
Precompiled CPU-family optimized for Sandy Bridge, Ivy Bridge, and Haswell, as well as Generic packages are maintained by [[User:Thaodan|Thaodan]] at the [https://dl.dropboxusercontent.com/u/172590784/Linux-pf/x86_64/index.html pfkernel unofficial repository], usually within 6 hours of the AUR update for x86_64 and 12 hours for i686.<br />
<br />
To enable, follow the instructions in [[Unofficial user repositories#Linux-pf]]. Remember to activate the pfkernel repository add the entry for the repository '''above all other repositories''' in {{ic|/etc/pacman.conf}}.<br />
<br />
Packages in the unofficial repository are not signed, so you will need to set SigLevel to Optional or Never. Running {{ic|$ pacman -Syyl pfkernel}} will update all repos and show the available packages from pfkernel. Afterwards, just install {{AUR|linux-pf}} {{AUR|linux-pf-headers}} for generic binaries. <br />
Platform-specific binaries are also available and will be listed in the output from the aforementioned pacman command, but additional configuration steps must be performed; see the [[#Installation|Installation]] section.<br />
<br />
=== Manual compilation ===<br />
<br />
There's a number of options a user is asked to choose from, should he/she select to compile from the PKGBUILD:<br />
{{bc|<nowiki><br />
==> Hit <Y> to use your running kernel's config<br />
(needs IKCONFIG and IKCONFIG_PROC)<br />
==> Hit <L> to run 'make localmodconfig'<br />
==> Hit <N> (or just <ENTER>) to build an all-inclusive kernel like stock -ARCH<br />
(warning: it can take a looong time)<br />
</nowiki>}}<br />
The <Y> option is for users who have already compiled and are running a custom kernel. The PKGBUILD reads the running kernel's configuration and uses it for the subsequent compilation.<br />
The <L> option tries some kind of autodetection of the user's hardware: it first tries to use the [[modprobed_db]] module database, then falls back to the linux kernel's '''''make localmodconfig''''' functionality. The last option is self-explanatory.<br />
<br />
{{bc|<nowiki><br />
==> Kernel configuration options before build:<br />
<M> make menuconfig (console menu)<br />
<N> make nconfig (newer alternative to menuconfig)<br />
<G> make gconfig (needs gtk)<br />
<X> make xconfig (needs qt)<br />
<O> make oldconfig<br />
<ENTER> to skip configuration and start compiling<br />
</nowiki>}}<br />
Choose one of these to use your favourite user interface for configuring the kernel. Note that the last option might still prompt with unresolved/new configuration options, if you have selected <Y> or <L> in the previous step.<br />
<br />
{{bc|<nowiki><br />
==> An non-generic CPU was selected for this kernel.<br />
==> Hit <G> : to create a generic package named linux-pf<br />
==> Hit <ENTER> : to create a package named after the selected CPU<br />
(e.g. linux-pf-core2 - recommended)<br />
==> This option affects ONLY the package name. Whether or not the<br />
==> kernel is optimized was determined at the previous config step.<br />
</nowiki>}}<br />
If you have selected a specific CPU optimization for your kernel in the previous step, the default action is to append the CPU to the package name. This way, a subsequent package update from the repository will pull the optimized package and not the generic one. This also will help better compatibility with 3rd party precompiled modules (e.g. nvidia-pf), which might break things if loaded on optimized linux-pf kernels.<br />
<br />
==== Install compiled package ====<br />
<br />
After the compilation finishes, an additional ''linux-pf-headers[-cpu]'' package will be created. Don't forget to install it too, if you plan on using additional modules like [[nvidia]] or [[virtualbox]].<br />
<br />
# pacman -U linux-pf-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz linux-pf-headers-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz<br />
<br />
During the kernel installation, [[mkinitcpio]] will be called by the install script to recreate the initramfs.<br />
{{Note|If you make any changes to {{ic|/etc/mkinitcpio.conf}} after the installation, you must run '''''mkinitcpio -p linux-pf''''' to have the initial ramdisk recreated.}}<br />
<br />
== Configuration ==<br />
<br />
Then, you need to add a boot entry in [[Boot Loader#Configuration files|boot loader configuration file]] which points to linux-pf (the following example is from one of the maintainer's boxes):<br />
{{bc|<nowiki><br />
title Linux-pf 3.2<br />
root (hd0,4)<br />
kernel (hd0,0)/vmlinuz-linux-pf root=/dev/disk/by-label/ROOT ro vga=0x318 lapic resume=/dev/disk/by-label/SWAP video=vesafb:ywrap,mtrr:3 fastboot quiet<br />
initrd (hd0,0)/initramfs-linux-pf.img<br />
</nowiki>}}<br />
<br />
If you intend to use TuxOnIce for hibernation, make sure you have added the necessary modules to the MODULES array of {{ic|/etc/mkinitcpio.conf}} and at least the ''resume'' hook to the HOOKS array:<br />
{{bc|<nowiki><br />
MODULES="... lzo tuxonice_compress tuxonice_swap tuxonice_userui ..."<br />
HOOKS="... block userui resume filesystems ..."<br />
</nowiki>}}<br />
In the example above, TuxOnIce is setup to use a swap partition as the suspended image allocator. The ''resume'' hook must be placed before ''filesystems''. Also, a progress indicator is requested with ''userui''. Please read the [[TuxOnIce]] wiki page for more detailed information.<br />
<br />
Last, you must choose whether you want to suspend using [[pm-utils]] or the [[hibernate-script]]. Please, refer to the respective wiki pages for more details. [[TuxOnIce]] offers the option for a text mode or an even nicer [[fbsplash|framebuffer splash]] progress indicator.<br />
<br />
== Tips and tricks ==<br />
<br />
* If you notice disk-related performance problems or occational hickups, it might be an I/O scheduler issue. Try a different one than the linux-pf default (BFQ) by echoing to {{ic|/sys/block/sda/queue/scheduler}} ''cfq'', ''noop'' or ''deadline'': {{ic|# echo noop >| /sys/block/sda/queue/scheduler}}. Note, the aforementioned command only sets the I/O scheduler for the 1st hard drive and additional ''echoes'' will be needed if you have more. If the situation improves, then append "''elevator''='''''cfq'''''" (or '''''noop''''' or '''''deadline''''') to the linux-pf command line in {{ic|/boot/grub/menu.lst}}, to make the change permanent.<br />
* For people who build their own tailored kernels and compilation aborts with with an error about "missing include/config/dvb/*.h files", setting ''[*] Digital TV support'' at ''Device Drivers / <M> Multimedia support'' and leaving everything else out, creates just the necessary dvb.h, which allows the compilation to continue.<br />
<br />
== Forum thread for linux-pf ==<br />
<br />
There's a [https://bbs.archlinux.org/viewtopic.php?id=103462 discussion thread] at the BBS for reporting errors, impressions, ideas and requests.<br />
<br />
== See also ==<br />
<br />
* [https://bitbucket.org/nous/linux-pf/ linux-pf mercurial repository]<br />
* [http://pf.natalenko.name/ Patchset homepage]<br />
* [http://pf.natalenko.name/forum Patchset community forum]<br />
* [http://freecode.com/projects/pf-kernel Patchset changelog]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=368628OpenRC2015-04-05T15:31:17Z<p>Nous: /* Mate */ it's 'required', that's why login fails in non-systemd setups</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|eudev}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related|SysVinit}}<br />
{{Related articles end}}<br />
{{Warning|Arch Linux only has official support for [[systemd]]. When using OpenRC, please mention so in support requests.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is a service manager maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally [[SysVinit]].<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]]. For details on init components, see [[Init]].<br />
<br />
=== apg ===<br />
<br />
Install either {{AUR|openrc}} or {{AUR|openrc-git}}. {{AUR|openrc-sysvinit}} is used as init process. Services are contained in the {{AUR|openrc-arch-services-git}} package.<br />
<br />
To maintain compability with {{AUR|initscripts-fork}}, configuration files are installed to {{ic|'''/etc/openrc/'''}}. The sysvinit init binary is installed to {{ic|/usr/bin/init-openrc}} for compability with {{Pkg|systemd-sysvcompat}} or similar packages.<br />
<br />
=== artoo ===<br />
<br />
This method uses {{AUR|openrc-core}}. Complementary services are available from the [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base], [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] and [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-misc&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-misc] [[PKGBUILD#pkgbase|package bases]].<br />
<br />
A mirror of the above package groups is available at [https://github.com/udeved/pkgbuilds github]. There are two unofficial repositories with precompile packages from the github sources: [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#openrc-eudev <nowiki>[openrc-eudev]</nowiki>] and [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel <nowiki>[pfkernel]</nowiki>].<br />
<br />
Configuration files are installed to {{ic|'''/etc'''}}, similar to Gentoo.<br />
<br />
== Configuration ==<br />
<br />
{{Note|In the following section, ''rcdir'' represents {{ic|/etc/openrc}} for '''apg''', {{ic|/etc}} for '''artoo'''.}}<br />
<br />
For more information on configuring OpenRC, see [http://www.calculate-linux.org/main/en/openrc_manuals OpenRC manuals], [http://www.gentoo.org/doc/en/openrc-migration.xml OpenRC migration] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki]. See [[Init#Configuration]] for generic configuration.<br />
<br />
=== Enabling services ===<br />
<br />
Save a list of running daemons:<br />
<br />
$ systemctl list-units --state=running "*.service" > daemons.list<br />
<br />
Install respective services as described in [[#Installation]]. OpenRC services are enabled by issuing the {{ic|rc-update}} command. For example, to enable [[ALSA]]:<br />
<br />
# rc-update add alsasound default<br />
<br />
To enable [[udev]] (disabled by default in '''apg'''):<br />
<br />
# rc-update add udev sysinit<br />
<br />
See also [https://wiki.gentoo.org/wiki/Systemd#Native_services Gentoo services] and [[Daemons list]].<br />
<br />
=== Booting ===<br />
<br />
==== apg ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the [[kernel parameters]]. To switch back to systemd, remove the parameter again.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration. <br />
<br />
==== artoo ====<br />
<br />
OpenRC is booted by default. To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The {{Ic|1=/etc/conf.d}} directory is used for configuration.<br />
<br />
=== Network ===<br />
<br />
{{Style|Section lacks overview}}<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg ====<br />
<br />
The network is configured through {{ic|newnet}}. [https://github.com/funtoo/openrc/blob/master/README.newnet] Modify the {{ic|/etc/openrc/conf.d/network}} file; both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"<br />
</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You may also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo ====<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses {{ic|netifrc}} [http://wiki.gentoo.org/wiki/Netifrc], which defaults to [[dhcpcd]] if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimics the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
See [[Init#System logging]]. Relevant service files are included in {{AUR|openrc-arch-services-git}} ('''apg'''), {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}} (artoo). It is recommended to only use a single logger as different loggers may conflict.<br />
<br />
To enable boot logging, uncomment the {{ic|1=rc_logger="YES"}} line in {{ic|''rcdir''/rc.conf}}. '''apg''' disables it by default.<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|''rcdir''/conf.d/hostname}}. The file looks as follows:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC uses {{ic|''rcdir''/conf.d/modules}} instead of {{ic|/etc/modules-load.d}}. For example:<br />
<br />
{{hc|1=|/etc/openrc/conf.d/modules|2=<br />
# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
modules="vboxdrv acpi_cpufreq"<br />
}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding<br />
<br />
no_umounts="/tmp"<br />
<br />
to {{ic|''rcdir''/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
One option is to add:<br />
<br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
<br />
in a file with a {{ic|.conf}} extension under {{ic|''rcdir''/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
<br />
telinit u<br />
<br />
after the following line:<br />
<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== /etc/sysctl.conf not found ===<br />
<br />
Create the file:<br />
<br />
# touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a desktop environment ==<br />
<br />
{{Merge|Init#Configuration|Find out which steps exactly require consolekit, and merge these if generic}}<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help. See [[ConsoleKit]] for details.<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} from the [[AUR]] or [[lightdm]] could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|eudev-dummy}}, {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session required pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
== See also ==<br />
<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://sourceforge.net/projects/archopenrc OpenRC for Arch Linux - sourceforge repository]<br />
* [http://systemd-free.org/install.php Complete OpenRC installation guide for Arch Linux]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=368292Talk:OpenRC2015-04-02T22:17:04Z<p>Nous: /* "Complete" guide */</p>
<hr />
<div>== Alternative way to install OpenRC and eudev (artoo's way) ==<br />
<br />
Instead of the AUR, one can simply build from [https://github.com/udeved/pkgbuilds artoo's git repo], add all the packages to a local repo, and install from that.<br />
<br />
Steps include:<br />
<br />
# One time<br />
mkdir -p ~/builds && cd ~/builds<br />
git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
<br />
# To keep up to date<br />
cd ~/builds/openrc-eudev<br />
git pull<br />
cd sysvinit && makepkg -s<br />
cd ..<br />
cd openrc-core && makepkg -d # to ignore sysvinit dependency<br />
cd ..<br />
cd openrc-base && makepkg -s<br />
cd ..<br />
cd openrc-desktop && makepkg -s<br />
cd ..<br />
cd polkit-consolekit && makepkg -s<br />
cd ..<br />
cd consolekit && makepkg -s<br />
cd ..<br />
cd eudev && makepkg -s<br />
cd ..<br />
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency<br />
cd ..<br />
cd upower-pm-utils && makepkg -d<br />
cd ..<br />
<br />
# Copying built packages in one place<br />
mkdir -p ~/builds/openrc-eudev/packages<br />
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages<br />
<br />
This probably takes care of the base. The built packages could be added to a [[Pacman_Tips#Custom_local_repository | pacman local repo]].<br />
<br />
After that the built packages could be installed as:<br />
<br />
sudo pacman -S openrc-base<br />
sudo pacman -S openrc-desktop<br />
sudo pacman -S eudev-base<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:Here's a "slightly" more complex script to automate this:<br />
<br />
{{bc|<nowiki><br />
#/usr/bin/env bash<br />
<br />
[[ -d openrc-eudev ]] || git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
cd openrc-eudev || exit 1<br />
<br />
_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)<br />
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)<br />
_fail() { echo "$i failed to build." > ../fail.log; }<br />
<br />
for i in "${_dep[@]}"; do<br />
(cd "$i" && { makepkg -sr || _fail; })<br />
done<br />
<br />
for i in "${_nodep[@]}"; do<br />
(cd "$i" && { makepkg -d || _fail; })<br />
done<br />
<br />
mkdir -p packages && cp */*.pkg.tar.xz packages/<br />
</nowiki>}}<br />
<br />
:-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 13:30, 28 January 2015 (UTC)<br />
<br />
:: Interesting script, I did not know about ''pushd'' and ''popd'', thx. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:::Yep, and edited to remove it. :P -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 20:52, 23 February 2015 (UTC)<br />
<br />
== "Complete" guide ==<br />
<br />
WRT [https://wiki.archlinux.org/index.php?title=OpenRC&diff=368191&oldid=366963]. This is a list of steps with none motivation on ''why'' they are taken, and a "root of all evil" which sharply contrasts against otherwise purely technical arguments on this wiki, besides going against [[Forum etiquette]]. I also notice how there was no reaction to [https://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=367191&oldid=366735 the rewrite discussion], besides a backhand "horribly scattered" remark on the added website.<br />
:Why the installation of packages requires a motivation? There's a clear explanation of why each step is ''taken''; motivation is irrelevant. [http://systemd-free.org/install.php The link] is directly to the installation procedure which is as technical as the wiki and the description is all-neutral too: "Complete OpenRC installation guide for Arch Linux". However the rewrite discussion and effort was effectively terminated by your "[https://wiki.archlinux.org/index.php?title=Talk:OpenRC&oldid=366172 The regular maintainers of this page will probably shed tears on my changes]" melodramatic quote which needlessly negated the main maintainers' work. Don't get me wrong here, I totally support your role as a Wiki admin and I appreciate your efforts in explaining your reasons behind your actions. I just don't agree with some of them (reasons and actions).<br />
<br />
Changing the init is an advanced process. Users are expected to ''understand'' the steps they take, and the only way to achieve that is by incorporating more general articles (this is actually the idea behind '''all''' ArchWiki articles). You don't want people to helplessly guess at problems or go as far as seeing reinstalling the system as only solution.<br />
:Advanced it is, undoubtely. However there's no reason to make it appear ''difficult''. In fact, switching to openrc (and back to systemd for that matter) is just installing 3-4 basic packages either way. It's the configuration afterwards that requires more attention and knowledge, but generally Arch is aimed at above average users. External links are just for that: to clarify things that (for whatever reason) can't be incorporated into ArchWiki articles. If everything could be covered in our Wiki, we wouldn't need forums, mailing lists or IRC channels.<br />
<br />
I doubt we'll come to an agreement here, however. It's two paradigms: the short-term, "task-based" approach, and the long-term "goal-based" one (Arch cleary follows the latter, or there would be no "derivates").<br />
:That's a fallacy and a demeaning one at that.<br />
<br />
I'll give some time for reactions but in its current state, the added link has no place in this article. -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 23:17, 1 April 2015 (UTC)<br />
:So, a clear 1-2-3 guide of migrating from systemd is not to be accepted here, no matter what? I'm sorry, but given the way the few installation steps were removed from the main article I doubt there's ''any'' other way you'd find to your liking. Anyway, I'll remove the offending heading and comment of the main systemd-free.org page soon and see what happens.<br />
-- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 14:18, 2 April 2015 (UTC)<br />
<br />
::"For installation of packages"? You're downplaying the consequences here - for example, when you instruct users to install eudev and remove systemd you add a significant increase in maintenance complexity for no actual benefit in functionality. If you still choose to do so, that's fine, but you then need the [[Eudev#Replacing_the_systemd_package|fine print]] to manage this added complexity - none of this is mentioned on the page in question.<br />
<br />
::It was me who called the melodramatic quote melodramatic. [https://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=366318&oldid=366172] As to the "paradigms", perhaps I misunderstood your intent but if we want to continue this discussion I'd suggest dropping accusations on either side.<br />
<br />
::Either way, I'm not stubbornly insisting on the current state of the page. See for example [https://wiki.archlinux.org/index.php?title=OpenRC&diff=368241&oldid=368191]. I also don't mind people linking a summary of steps for the "artoo way" if there's a clear distinction between necessary and optional steps, and void of rants against or for any particular system. As you say, Arch is aimed at competent users and these can make up their own minds. -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 15:01, 2 April 2015 (UTC)<br />
<br />
::: I'm glad there's some common ground here and I've already toned down my pages, as I intended to do anyway. But truly, switching between openrc and systemd (however serious and daunting it might look) is trivial and I've personally done it dozens of times without a single failure. It's by no means an approximated procedure, but a repeatable and dependable one. Concerning the [[Eudev#Replacing_the_systemd_package|fine print]], it's a harmless misconception and is easily disproven. A initial basic configuration is required of course, but from then on system updates go smoothly as eudev-systemdcompat provides hard systemd dependencies: no added complexity or maintenance. Now, if things seriously worsen for non-systemd installations in the future, we can always have another talk about that.<br />
:::-- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 22:17, 2 April 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=368232Talk:OpenRC2015-04-02T14:18:33Z<p>Nous: Complete guide is complete</p>
<hr />
<div>== Alternative way to install OpenRC and eudev (artoo's way) ==<br />
<br />
Instead of the AUR, one can simply build from [https://github.com/udeved/pkgbuilds artoo's git repo], add all the packages to a local repo, and install from that.<br />
<br />
Steps include:<br />
<br />
# One time<br />
mkdir -p ~/builds && cd ~/builds<br />
git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
<br />
# To keep up to date<br />
cd ~/builds/openrc-eudev<br />
git pull<br />
cd sysvinit && makepkg -s<br />
cd ..<br />
cd openrc-core && makepkg -d # to ignore sysvinit dependency<br />
cd ..<br />
cd openrc-base && makepkg -s<br />
cd ..<br />
cd openrc-desktop && makepkg -s<br />
cd ..<br />
cd polkit-consolekit && makepkg -s<br />
cd ..<br />
cd consolekit && makepkg -s<br />
cd ..<br />
cd eudev && makepkg -s<br />
cd ..<br />
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency<br />
cd ..<br />
cd upower-pm-utils && makepkg -d<br />
cd ..<br />
<br />
# Copying built packages in one place<br />
mkdir -p ~/builds/openrc-eudev/packages<br />
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages<br />
<br />
This probably takes care of the base. The built packages could be added to a [[Pacman_Tips#Custom_local_repository | pacman local repo]].<br />
<br />
After that the built packages could be installed as:<br />
<br />
sudo pacman -S openrc-base<br />
sudo pacman -S openrc-desktop<br />
sudo pacman -S eudev-base<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:Here's a "slightly" more complex script to automate this:<br />
<br />
{{bc|<nowiki><br />
#/usr/bin/env bash<br />
<br />
[[ -d openrc-eudev ]] || git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
cd openrc-eudev || exit 1<br />
<br />
_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)<br />
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)<br />
_fail() { echo "$i failed to build." > ../fail.log; }<br />
<br />
for i in "${_dep[@]}"; do<br />
(cd "$i" && { makepkg -sr || _fail; })<br />
done<br />
<br />
for i in "${_nodep[@]}"; do<br />
(cd "$i" && { makepkg -d || _fail; })<br />
done<br />
<br />
mkdir -p packages && cp */*.pkg.tar.xz packages/<br />
</nowiki>}}<br />
<br />
:-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 13:30, 28 January 2015 (UTC)<br />
<br />
:: Interesting script, I did not know about ''pushd'' and ''popd'', thx. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:::Yep, and edited to remove it. :P -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 20:52, 23 February 2015 (UTC)<br />
<br />
== "Complete" guide ==<br />
<br />
WRT [https://wiki.archlinux.org/index.php?title=OpenRC&diff=368191&oldid=366963]. This is a list of steps with none motivation on ''why'' they are taken, and a "root of all evil" which sharply contrasts against otherwise purely technical arguments on this wiki, besides going against [[Forum etiquette]]. I also notice how there was no reaction to [https://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=367191&oldid=366735 the rewrite discussion], besides a backhand "horribly scattered" remark on the added website.<br />
:Why the installation of packages requires a motivation? There's a clear explanation of why each step is ''taken''; motivation is irrelevant. [http://systemd-free.org/install.php The link] is directly to the installation procedure which is as technical as the wiki and the description is all-neutral too: "Complete OpenRC installation guide for Arch Linux". However the rewrite discussion and effort was effectively terminated by your "[https://wiki.archlinux.org/index.php?title=Talk:OpenRC&oldid=366172 The regular maintainers of this page will probably shed tears on my changes]" melodramatic quote which needlessly negated the main maintainers' work. Don't get me wrong here, I totally support your role as a Wiki admin and I appreciate your efforts in explaining your reasons behind your actions. I just don't agree with some of them (reasons and actions).<br />
<br />
Changing the init is an advanced process. Users are expected to ''understand'' the steps they take, and the only way to achieve that is by incorporating more general articles (this is actually the idea behind '''all''' ArchWiki articles). You don't want people to helplessly guess at problems or go as far as seeing reinstalling the system as only solution.<br />
:Advanced it is, undoubtely. However there's no reason to make it appear ''difficult''. In fact, switching to openrc (and back to systemd for that matter) is just installing 3-4 basic packages either way. It's the configuration afterwards that requires more attention and knowledge, but generally Arch is aimed at above average users. External links are just for that: to clarify things that (for whatever reason) can't be incorporated into ArchWiki articles. If everything could be covered in our Wiki, we wouldn't need forums, mailing lists or IRC channels.<br />
<br />
I doubt we'll come to an agreement here, however. It's two paradigms: the short-term, "task-based" approach, and the long-term "goal-based" one (Arch cleary follows the latter, or there would be no "derivates").<br />
:That's a fallacy and a demeaning one at that.<br />
<br />
I'll give some time for reactions but in its current state, the added link has no place in this article. -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 23:17, 1 April 2015 (UTC)<br />
:So, a clear 1-2-3 guide of migrating from systemd is not to be accepted here, no matter what? I'm sorry, but given the way the few installation steps were removed from the main article I doubt there's ''any'' other way you'd find to your liking. Anyway, I'll remove the offending heading and comment of the main systemd-free.org page soon and see what happens.<br />
-- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 14:18, 2 April 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=368191OpenRC2015-04-01T22:21:49Z<p>Nous: /* See also */ Separate sf repo and installation info</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|eudev}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related|SysVinit}}<br />
{{Related articles end}}<br />
{{Warning|Arch Linux only has official support for [[systemd]]. When using OpenRC, please mention so in support requests.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is a service manager maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally [[SysVinit]].<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]]. For details on init components, see [[Init]].<br />
<br />
=== apg ===<br />
<br />
Install either {{AUR|openrc}} or {{AUR|openrc-git}}. {{AUR|openrc-sysvinit}} is used as init process. Services are contained in the {{AUR|openrc-arch-services-git}} package.<br />
<br />
To maintain compability with {{AUR|initscripts-fork}}, configuration files are installed to {{ic|'''/etc/openrc/'''}}. The sysvinit init binary is installed to {{ic|/usr/bin/init-openrc}} for compability with {{Pkg|systemd-sysvcompat}} or similar packages.<br />
<br />
=== artoo ===<br />
<br />
This method uses {{AUR|openrc-core}}. Complementary services are available from the [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base], [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] and [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-misc&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-misc] [[PKGBUILD#pkgbase|package bases]].<br />
<br />
A mirror of the above package groups is available at [https://github.com/udeved/pkgbuilds github]. There are two unofficial repositories with precompile packages from the github sources: [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#openrc-eudev <nowiki>[openrc-eudev]</nowiki>] and [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel <nowiki>[pfkernel]</nowiki>].<br />
<br />
Configuration files are installed to {{ic|'''/etc'''}}, similar to Gentoo.<br />
<br />
== Configuration ==<br />
<br />
{{Note|In the following section, ''rcdir'' represents {{ic|/etc/openrc}} for '''apg''', {{ic|/etc}} for '''artoo'''.}}<br />
<br />
For more information on configuring OpenRC, see [http://www.calculate-linux.org/main/en/openrc_manuals OpenRC manuals], [http://www.gentoo.org/doc/en/openrc-migration.xml OpenRC migration] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki]. See [[Init#Configuration]] for generic configuration.<br />
<br />
=== Enabling services ===<br />
<br />
See [[Init#Migrate running daemons]] and install respective services as described in [[#Installation]]. OpenRC services are enabled by issuing the {{ic|rc-update}} command. For example, to enable [[ALSA]]:<br />
<br />
# rc-update add alsasound default<br />
<br />
To enable [[udev]] (disabled by default in '''apg'''):<br />
<br />
# rc-update add udev sysinit<br />
<br />
See also [https://wiki.gentoo.org/wiki/Systemd#Native_services Gentoo services] and [[Daemons list]].<br />
<br />
=== Booting ===<br />
<br />
==== apg ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the [[kernel parameters]]. To switch back to systemd, remove the parameter again.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration. <br />
<br />
==== artoo ====<br />
<br />
OpenRC is booted by default. To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The {{Ic|1=/etc/conf.d}} directory is used for configuration.<br />
<br />
=== Network ===<br />
<br />
{{Style|Section lacks overview}}<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg ====<br />
<br />
The network is configured through {{ic|newnet}}. [https://github.com/funtoo/openrc/blob/master/README.newnet] Modify the {{ic|/etc/openrc/conf.d/network}} file; both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"<br />
</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You may also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo ====<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses {{ic|netifrc}} [http://wiki.gentoo.org/wiki/Netifrc], which defaults to [[dhcpcd]] if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimics the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
See [[Init#System logging]]. Relevant service files are included in {{AUR|openrc-arch-services-git}} ('''apg'''), {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}} (artoo). It is recommended to only use a single logger as different loggers may conflict.<br />
<br />
To enable boot logging, uncomment the {{ic|1=rc_logger="YES"}} line in {{ic|''rcdir''/rc.conf}}. '''apg''' disables it by default.<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|''rcdir''/conf.d/hostname}}. The file looks as follows:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC uses {{ic|''rcdir''/conf.d/modules}} instead of {{ic|/etc/modules-load.d}}. For example:<br />
<br />
{{hc|1=|/etc/openrc/conf.d/modules|2=<br />
# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
modules="vboxdrv acpi_cpufreq"<br />
}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding<br />
<br />
no_umounts="/tmp"<br />
<br />
to {{ic|''rcdir''/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
One option is to add:<br />
<br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
<br />
in a file with a {{ic|.conf}} extension under {{ic|''rcdir''/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
<br />
telinit u<br />
<br />
after the following line:<br />
<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== /etc/sysctl.conf not found ===<br />
<br />
Create the file:<br />
<br />
# touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a desktop environment ==<br />
<br />
{{Merge|Init#Configuration|Find out which steps exactly require consolekit, and merge these if generic}}<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help. See [[ConsoleKit]] for details.<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} from the [[AUR]] or [[lightdm]] could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|eudev-dummy}}, {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
== See also ==<br />
<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://sourceforge.net/projects/archopenrc OpenRC for Arch Linux - sourceforge repository]<br />
* [http://systemd-free.org/install.php Complete OpenRC installation guide for Arch Linux]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=365200OpenRC2015-03-12T17:47:49Z<p>Nous: /* Migration from {{ic|systemd}} */ with -Sdd, sysvinit must be explicitly stated</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Two unofficial repositories exist with precompiled packages of the github sources: [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#openrc-eudev <nowiki>[openrc-eudev]</nowiki>] and [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel <nowiki>[pfkernel]</nowiki>].<br />
<br />
[[#Using OpenRC with eudev|eudev]] is used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Migration from {{ic|systemd}} ===<br />
<br />
{{Merge|Init|This is out of scope for this article, steps should be merged to [[Init]] where appropriate. See [[Talk:OpenRC#Quick_migration_from_systemd]].}}<br />
<br />
In the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd sysvinit openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
<br />
{{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. See [[Eudev]] for more information.<br />
<br />
A comprehensive step-by-step guide for migrating to OpenRC / eudev can be found at [https://sourceforge.net/projects/archopenrc/files the SourceForge Arch-OpenRC page].<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://sourceforge.net/projects/archopenrc OpenRC for Arch Linux - repository and installation]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=365184OpenRC2015-03-12T16:06:52Z<p>Nous: /* See also */ fix link to main page</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Two unofficial repositories exist with precompiled packages of the github sources: [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#openrc-eudev <nowiki>[openrc-eudev]</nowiki>] and [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel <nowiki>[pfkernel]</nowiki>].<br />
<br />
[[#Using OpenRC with eudev|eudev]] is used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Migration from {{ic|systemd}} ===<br />
<br />
{{Merge|Init|This is out of scope for this article, steps should be merged to [[Init]] where appropriate. See [[Talk:OpenRC#Quick_migration_from_systemd]].}}<br />
<br />
In the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
<br />
{{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. See [[Eudev]] for more information.<br />
<br />
A comprehensive step-by-step guide for migrating to OpenRC / eudev can be found at [https://sourceforge.net/projects/archopenrc/files the SourceForge Arch-OpenRC page].<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://sourceforge.net/projects/archopenrc OpenRC for Arch Linux - repository and installation]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=365183OpenRC2015-03-12T16:05:40Z<p>Nous: External arch-openrc link</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Two unofficial repositories exist with precompiled packages of the github sources: [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#openrc-eudev <nowiki>[openrc-eudev]</nowiki>] and [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel <nowiki>[pfkernel]</nowiki>].<br />
<br />
[[#Using OpenRC with eudev|eudev]] is used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Migration from {{ic|systemd}} ===<br />
<br />
{{Merge|Init|This is out of scope for this article, steps should be merged to [[Init]] where appropriate. See [[Talk:OpenRC#Quick_migration_from_systemd]].}}<br />
<br />
In the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
<br />
{{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. See [[Eudev]] for more information.<br />
<br />
A comprehensive step-by-step guide for migrating to OpenRC / eudev can be found at [https://sourceforge.net/projects/archopenrc/files the SourceForge Arch-OpenRC page].<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://sourceforge.net/projects/archopenrc/files OpenRC for Arch Linux - repository and installation]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=365182OpenRC2015-03-12T16:02:42Z<p>Nous: /* Migration from {{ic|systemd}} */ link a comprehensive guide</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Two unofficial repositories exist with precompiled packages of the github sources: [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#openrc-eudev <nowiki>[openrc-eudev]</nowiki>] and [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel <nowiki>[pfkernel]</nowiki>].<br />
<br />
[[#Using OpenRC with eudev|eudev]] is used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Migration from {{ic|systemd}} ===<br />
<br />
{{Merge|Init|This is out of scope for this article, steps should be merged to [[Init]] where appropriate. See [[Talk:OpenRC#Quick_migration_from_systemd]].}}<br />
<br />
In the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
<br />
{{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. See [[Eudev]] for more information.<br />
<br />
A comprehensive step-by-step guide for migrating to OpenRC / eudev can be found at [https://sourceforge.net/projects/archopenrc/files the SourceForge Arch-OpenRC page].<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=Init/Replacing_udev&diff=364939Init/Replacing udev2015-03-10T18:37:48Z<p>Nous: /* Replacing the systemd package */ Remote system reboot trigger</p>
<hr />
<div>[[Category:Hardware detection and troubleshooting]]<br />
[[ja:Eudev]]<br />
{{Stub}}<br />
{{ic|eudev}} is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from the [[init]] system. It is primarily designed and tested with [[OpenRC]], but is agnostic to any other init systems.<br />
<br />
== Installation ==<br />
<br />
Install {{AUR|eudev}} from the [[Arch User Repository]]. Alternatively, {{AUR|eudev-git}} and {{AUR|eudev-openrc}} are available, each with differing dependencies.<br />
<br />
{{Warning|This package will remove [[systemd]] as it replaces udev. Therefore, you should install an alternative [[init]] system and have it boot successfully under that init system '''prior''' to installing eudev.}}<br />
<br />
== Replacing the systemd package ==<br />
<br />
{{Expansion|Find a statisfactory solution for ''tmpfiles'', cf. {{AUR|openrc-systemdcompat}} and {{AUR|tmpfiles-config}}}}<br />
<br />
The ''systemd'' packages include several components besides the init system and systemd-udev:<br />
<br />
* systemd libraries [[Wikipedia:Dynamic linker|linked]] against software such as [[Xorg]]. See [[#libsystemd]].<br />
* ''systemd-tmpfiles'' to create temporary files on system startup<br />
* ''systemd-sysusers'' to allocate system users and groups in [[pacman]] {{ic|.install}} files<br />
<br />
If you have removed systemd without booting to the new init, a reboot is not possible in regular ways. Enable [[Wikipedia:Magic_SysRq_key|SysRq keys]]:<br />
<br />
# sysctl kernel.sysrq=1<br />
<br />
and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} in succession. This syncs all mounted file systems, remounts all disk as read-only, and reboots the system, respectively. If latter is not possible, press {{ic|Alt-SysRq-O}} to poweroff). In case the system is a remote box, you must sync and remount read-only its filesystems before triggering an immediate reboot (edit your filesystems accordingly):<br />
# sync; mount -f /home -o remount,ro ; sync; mount -f / -o remount,ro<br />
# echo b >| /proc/sysrq-trigger<br />
<br />
== libsystemd ==<br />
<br />
This package will also remove {{Pkg|libsystemd}} as it replaces a part of it. The missing libraries are available from:<br />
* {{AUR|libsystemd-standalone}} — a package group with libraries separated into a package each.<br />
* {{AUR|eudev-systemdcompat}} — a package that guts the official libsystemd package and installs the missing libraries.<br />
<br />
You also probably want {{AUR|systemd-dummy}} to satisfy the missing systemd dependency.<br />
<br />
Alternatively, you may rebuild packages linked to libsystemd using [[ABS]], or install {{ic|nosystemd}} variants from the [[AUR]].<br />
<br />
== Troubleshooting ==<br />
<br />
=== Fails to start ===<br />
<br />
Check the init script for eudev (aliased to udev, so /etc/openrc/init.d/udev on an OpenRC setup for example) and ensure the command points to /usr/bin/udev.<br />
<br />
=== netctl ===<br />
<br />
netctl is not compatible due to dependency on systemd libs, instead, use {{AUR|netcfg}}, avaliable in the AUR.<br />
<br />
== See also ==<br />
<br />
* [https://github.com/gentoo/eudev Github: Eudev]</div>Noushttps://wiki.archlinux.org/index.php?title=64-bit_FAQ&diff=36482664-bit FAQ2015-03-09T22:11:51Z<p>Nous: /* Multilib repository */ ld needs '-m32' too</p>
<hr />
<div>[[Category:About Arch]]<br />
[[ar:Arch64 FAQ]]<br />
[[cs:Arch64 FAQ]]<br />
[[el:Arch64 FAQ]]<br />
[[es:Arch64 FAQ]]<br />
[[it:Arch64 FAQ]]<br />
[[ja:Arch64 FAQ]]<br />
[[ru:Arch64 FAQ]]<br />
[[sr:Arch64 FAQ]]<br />
[[uk:Arch64 FAQ]]<br />
[[zh-CN:Arch64 FAQ]]<br />
Below is a list of frequently asked questions about Arch Linux on 64-bit.<br />
<br />
== How do I determine if my processor is x86_64 compatible? ==<br />
=== Linux users ===<br />
Run the following command:<br />
$ less /proc/cpuinfo<br />
<br />
Look for the {{ic|flags}} entry. If you see the {{ic|lm}} flag then your processor is x86_64 compatible.<br />
<br />
Or you can run this command:<br />
$ grep -q "^flags.*\blm\b" /proc/cpuinfo && echo "x86_64" || echo "not x86_64"<br />
<br />
=== Windows users ===<br />
Using the freeware [http://www.cpuid.com/cpuz.php CPU-Z] you can determine whether your CPU is 64-bit compatible.<br />
CPUs with AMD's instruction set "AMD64" or Intel's solution "EM64T" should be compatible with the x86_64 releases and binary packages.<br />
<br />
== Should I use the 32 or 64 bit version of Arch? ==<br />
If your processor is [[wikipedia:X86-64|x86_64]] compatible, you should use Arch64.<br />
<br />
== How can I install Arch64? ==<br />
Just use our [https://www.archlinux.org/download/ official installation ISO CD].<br />
<br />
== How complete is the port? ==<br />
The port is ready for daily use in a desktop or server environment.<br />
<br />
== Will I have all the packages from my 32-bit Arch I am used to? ==<br />
The repositories are ported and pretty much everything should work as expected.<br />
<br />
Rarely, an old package in the [[Arch User Repository|AUR]] will only have {{ic|'i686'}} listed, but typically they work for 64-bit too. Just try adding {{ic|'x86_64'}}.<br />
<br />
== Why 64-bit? ==<br />
It is faster under most circumstances and as an added bonus also inherently more secure due to the nature of [[wikipedia:Address space layout randomization|Address space layout randomization (ASLR)]] in combination with [[wikipedia:Position-independent code|Position-independent code (PIC)]] and the [[wikipedia:NX Bit|NX Bit]] which is not available in the stock i686 kernel due to disabled PAE. If your computer is running 4 GB or more of usable RAM, 64-bit should be strongly considered as any additional RAM cannot be allocated by a 32-bit OS.<br />
<br />
Programmers also increasingly tend to care less about 32-bit ("legacy") as "new" x86 CPUs typically support the 64-bit extensions.<br />
<br />
There are many more reasons we could list here to tell you to avoid 32-bit, but between the kernel, userspace and individual programs it is simply not viable to list every last thing that 64-bit does much better these days.<br />
<br />
For further details watch our [https://www.archlinux.org/packages/differences/ differences reports]. There you will find a list comparing 32-/64-bit package versions.<br />
<br />
== What repositories should I set up for pacman to use? ==<br />
All repositories are supported for the port.<br />
<br />
== What will I miss in Arch64? ==<br />
Nothing, really. Almost all applications support 64-bit by now or are in the transition to become 64-bit compatible.<br />
<br />
The biggest problem are packages that are either '''closed source''' or contain x86-specific assembly that is cumbersome to port to 64-bit (typical for emulators).<br />
<br />
These applications were previously problematic but are now available in the [[Arch User Repository|AUR]] and work fine:<br />
* Acrobat Reader is not available in 64-bit, but you can run the 32-bit version in compatibility mode. There are also many other open source alternatives that can be used to read PDF files.<br />
<br />
Everything else should work perfectly fine. If you miss any Arch32 package in our port and you know that it will compile on x86_64 (perhaps you have found it as native packages in another 64-bit distribution), just contact the developers or request a new package in the forums.<br />
<br />
== Can I run 32-bit apps inside Arch64? ==<br />
Yes! You can install {{ic|1=lib32-*}} packages from the [[multilib]] repository.<br />
<br />
An alternative method is to create a 32-bit chroot (refer to [[Install bundled 32-bit system in Arch64]])<br />
<br />
== Can I build 32-bit packages for i686 inside Arch64? ==<br />
Yes. You can either use<br />
*the [[Multilib]] versions of the relevant packages or<br />
*an [[Install bundled 32-bit system in Arch64|i686 chroot]].<br />
<br />
=== Multilib repository ===<br />
<br />
To use the [multilib] repository, edit your {{ic|/etc/pacman.conf}} and uncomment following lines:<br />
<br />
[multilib]<br />
SigLevel = PackageRequired<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
upgrade your system with {{ic|pacman -Syu}} and install the {{Pkg|gcc-multilib}} package.<br />
<br />
{{Note|<br />
*If the system has the {{ic|base-devel}} package group installed, users must replace the [extra] versions with the [mutlilib] versions as shown below.<br />
* {{Pkg|gcc-multilib}} is capable of building 32-bit and 64-bit code. You can safely install {{ic|multilib-devel}} to replace the packages shown below, but you still need {{ic|base-devel}} for the other packages it includes. See <nowiki>https://bbs.archlinux.org/viewtopic.php?id=102828</nowiki> for more information.<br />
}}<br />
<br />
{{hc|# pacman -S gcc-multilib|2=<br />
resolving dependencies...<br />
warning: dependency cycle detected:<br />
warning: lib32-gcc-libs will be installed before its gcc-libs-multilib dependency<br />
looking for inter-conflicts...<br />
:: gcc-libs-multilib and gcc-libs are in conflict. Remove gcc-libs? [y/N] y<br />
:: binutils-multilib and binutils are in conflict. Remove binutils? [y/N] y<br />
:: gcc-multilib and gcc are in conflict. Remove gcc? [y/N] y<br />
:: libtool-multilib and libtool are in conflict. Remove libtool? [y/N] y<br />
<br />
Remove (4): gcc-libs-4.6.1-1 binutils-2.21.1-1 gcc-4.6.1-1 libtool-2.4-4<br />
<br />
Total Removed Size: 87.65 MB<br />
<br />
Targets (7): lib32-glibc-2.14-4 lib32-gcc-libs-4.6.1-1 gcc-libs-multilib-4.6.1-1 binutils-multilib-2.21.1-1<br />
gcc-multilib-4.6.1-1 lib32-libtool-2.4-2 libtool-multilib-2.4-2<br />
<br />
Total Download Size: 25.04 MB<br />
Total Installed Size: 108.27 MB<br />
<br />
Proceed with installation? [Y/n]<br />
}}<br />
<br />
Compiling packages on x86_64 for i686 is as easy as adding the following lines to an alternate configuration file (e.g. {{ic|~/.makepkg.i686.conf}})<br />
CARCH="i686"<br />
CHOST="i686-pc-linux-gnu"<br />
CFLAGS="-m32 -march=i686 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2"<br />
CXXFLAGS="${CFLAGS}"<br />
LDFLAGS="-m32 -Wl,-O1,--sort-common,--as-needed,-z,relro" <br />
<br />
<br />
and invoking makepkg via the following<br />
$ linux32 makepkg -src --config ~/.makepkg.i686.conf<br />
<br />
=== Chroot ===<br />
See [[Install bundled 32-bit system in Arch64]]<br />
<br />
== Can I upgrade/switch my system from i686 to x86_64 without reinstalling? ==<br />
No. Strictly speaking any kind of migration implies that all packages or nearly all packages must be reinstalled for the newer architecture. However, it is possible to move your system without performing a fresh install, and even from within your current installation. A forum thread has been created [https://bbs.archlinux.org/viewtopic.php?id=64485 here] which outlines steps taken to successfully migrate an install from 32 to 64 bit without losing any configurations/settings/data. Note: A large external hard drive was used for the transfer.<br />
<br />
However, you can also start the system with the Arch64 installation CD, mount the disk, backup anything you may want to keep that is not a 32-bit binary (e.g: {{ic|/home}} & {{ic|/etc}}), and install.<br />
<br />
You may also want to read [[Migrating Between Architectures Without Reinstalling]].</div>Noushttps://wiki.archlinux.org/index.php?title=Unofficial_user_repositories&diff=364433Unofficial user repositories2015-03-07T08:03:08Z<p>Nous: /* Unsigned */ openrc-eudev</p>
<hr />
<div>[[Category:Package management]]<br />
[[ja:非公式ユーザーリポジトリ]]<br />
[[zh-CN:Unofficial user repositories]]<br />
{{Expansion|Please fill in the missing information about repository maintainers.}}<br />
<br />
{{Related articles start}}<br />
{{Related|pacman-key}}<br />
{{Related|Official repositories}}<br />
{{Related articles end}}<br />
<br />
This article lists binary repositories freely created and shared by the community, often providing pre-built versions of PKGBUILDS found in the [[AUR]].<br />
<br />
{{Warning|Neither the official Arch Linux Developers nor the Trusted Users perform tests of any sort to verify the contents of these repositories; it is up to each user to decide whether to trust their maintainers, and take full responsibility for whatever their decision brings.}}<br />
<br />
In order to use these repositories, you will have to add them to {{ic|/etc/pacman.conf}}, as explained in [[pacman#Repositories]]. If a repository is signed, you will have to obtain and locally sign the associated key, as explained in [[Pacman-key#Adding unofficial keys]].<br />
<br />
If you want to create your own custom repository, follow [[pacman tips#Custom local repository]].<br />
<br />
{{Tip|To get a list of all servers listed in this page: {{bc|<nowiki>curl 'https://wiki.archlinux.org/index.php/Unofficial_user_repositories' | grep 'Server = ' | sed "s/\$arch/$(uname -m)/g" | cut -f 3 -d' '</nowiki>}}<br />
<br />
For your convenience you can, for example, open them all in a web browser to inspect the contents of their repositories.<br />
}}<br />
<br />
== Adding your repository to this page ==<br />
<br />
If you have your own repository, please add it to this page, so that all the other users will know where to find your packages. Please keep the following rules when adding new repositories:<br />
<br />
* Keep the lists in alphabetical order.<br />
* Include some information about the maintainer: include at least a (nick)name and some form of contact information (web site, email address, user page on ArchWiki or the forums, etc.).<br />
* If the repository is of the ''signed'' variety, please include a key-id, possibly using it as the anchor for a link to its keyserver; if the key is not on a keyserver, include a link to the key file.<br />
* Include some short description (e.g. the category of packages provided in the repository).<br />
* If there is a page (either on ArchWiki or external) containing more information about the repository, include a link to it.<br />
* If possible, avoid using comments in code blocks. The formatted description is much more readable. Users who want some comments in their {{ic|pacman.conf}} can easily create it on their own.<br />
<br />
== Any ==<br />
<br />
"Any" repositories are architecture-independent. In other words, they can be used on both i686 and x86_64 systems.<br />
<br />
=== Signed ===<br />
<br />
==== bioinformatics-any ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some python packages and genome browser for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics-any]<br />
Server = http://decryptedepsilon.bl.ee/repo/any<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-fonts ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle-fonts repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-fonts]<br />
Server = http://bohoomil.com/repo/fonts<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/any<br />
# Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== xyne-any ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for "any" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{Note|Use this repository only if there is no matching {{ic|[xyne-*]}} repository for your architecture.}}<br />
<br />
{{bc|<nowiki><br />
[xyne-any]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== archlinuxgr-any ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' The Hellenic (Greek) unofficial Arch Linux repository with many interesting packages.<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-any]<br />
Server = http://archlinuxgr.tiven.org/archlinux/any<br />
</nowiki>}}<br />
<br />
== Both i686 and x86_64 ==<br />
<br />
Repositories with both i686 and x86_64 versions. The {{ic|$arch}} variable will be set automatically by pacman.<br />
<br />
=== Signed ===<br />
<br />
==== archlinuxcn ====<br />
<br />
* '''Maintainers:''' [https://plus.google.com/+PhoenixNemo/ Phoenix Nemo (phoenixlzx)], Felix Yan (felixonmars, TU), [https://twitter.com/lilydjwg lilydjwg], and others<br />
* '''Description:''' Packages by the Chinese Arch Linux community (mostly signed)<br />
* '''Git Repo:''' https://github.com/archlinuxcn/repo<br />
* '''Key-ID:''' Once the repo is added, ''archlinuxcn-keyring'' package must be installed before any other.<br />
<br />
{{bc|<nowiki><br />
[archlinuxcn]<br />
SigLevel = Optional TrustAll<br />
Server = http://repo.archlinuxcn.org/$arch<br />
</nowiki>}}<br />
<br />
==== atom-editor-git ====<br />
<br />
* '''Maintainer:''' Matthew Stobbs<br />
* '''Upstream page:''' https://atom.io/<br />
* '''Description:''' The Atom Editor, created by the people behind github, to mimic Sublime Text.<br />
* '''Key-ID:''' 26EBCC57<br />
<br />
{{bc|<nowiki><br />
[atom-editor-git]<br />
Server = http://repo.stobbstechnical.com/$arch<br />
</nowiki>}}<br />
<br />
==== bbqlinux ====<br />
<br />
* '''Maintainer:''' [https://plus.google.com/u/0/+DanielHillenbrand/about Daniel Hillenbrand]<br />
* '''Description:''' Packages for Android Development<br />
* '''Upstream Page:''' http://bbqlinux.org/<br />
* '''Key-ID:''' Get the ''bbqlinux-keyring'' package, as it contains the needed keys.<br />
<br />
{{bc|<nowiki><br />
[bbqlinux]<br />
Server = http://packages.bbqlinux.org/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== carstene1ns ====<br />
<br />
* '''Maintainer:''' [[User:Carstene1ns|Carsten Teibes]]<br />
* '''Description:''' AUR packages maintained and/or used by Carsten Teibes (games/Wii/lib32/Python)<br />
* '''Upstream page:''' http://repo.carsten-teibes.de<br />
* '''Key-ID:''' 2476B20B<br />
<br />
{{bc|<nowiki><br />
[carstene1ns]<br />
Server = http://repo.carsten-teibes.de/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0 | Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst]<br />
Server = http://catalyst.wirephire.com/repo/catalyst/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://70.239.162.206/catalyst-mirror/repo/catalyst/$arch<br />
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/catalyst/$arch<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst/$arch<br />
</nowiki>}}<br />
<br />
==== catalyst-hd234k ====<br />
<br />
* '''Maintainer:''' [[User:Vi0L0 | Vi0l0]]<br />
* '''Description:''' ATI Catalyst proprietary drivers.<br />
* '''Upstream Page:''' http://catalyst.wirephire.com<br />
* '''Key-ID:''' 653C3094<br />
<br />
{{bc|<nowiki><br />
[catalyst-hd234k]<br />
Server = http://catalyst.wirephire.com/repo/catalyst-hd234k/$arch<br />
## Mirrors, if the primary server does not work or is too slow:<br />
#Server = http://70.239.162.206/catalyst-mirror/repo/catalyst-hd234k/$arch<br />
#Server = http://mirror.rts-informatique.fr/archlinux-catalyst/repo/catalyst-hd234k/$arch<br />
#Server = http://mirror.hactar.bz/Vi0L0/catalyst-hd234k/$arch<br />
</nowiki>}}<br />
<br />
==== city ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bgyorgy Balló György]<br />
* '''Description:''' Experimental/unpopular packages.<br />
* '''Upstream page:''' http://pkgbuild.com/~bgyorgy/city.html<br />
* '''Key-ID:''' Not needed, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[city]<br />
Server = http://pkgbuild.com/~bgyorgy/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== demz-repo-archiso ====<br />
<br />
* '''Maintainer:''' [http://demizerone.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for installing ZFS from an Arch ISO live disk<br />
* '''Upstream page:''' https://github.com/demizer/archzfs<br />
* '''Key-ID:''' 0EE7A126<br />
<br />
{{bc|<nowiki><br />
[demz-repo-archiso]<br />
Server = http://demizerone.com/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== demz-repo-core ====<br />
<br />
* '''Maintainer:''' [http://demizerone.com Jesus Alvarez (demizer)]<br />
* '''Description:''' Packages for ZFS on Arch Linux.<br />
* '''Upstream page:''' https://github.com/demizer/archzfs<br />
* '''Key-ID:''' 0EE7A126<br />
<br />
{{bc|<nowiki><br />
[demz-repo-core]<br />
Server = http://demizerone.com/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== gnome-encfs-manager ====<br />
<br />
* '''Maintainer:''' Moritz Molch<br />
* '''Description:''' The gnome-encfs-manager can be used to integrate [[EncFS]]<br />
* '''Upstream page:''' [https://launchpad.net/gencfsm Gnome EncfsM].<br />
* '''Key ID:'''<br />
<br />
{{bc|<nowiki><br />
[home_moritzmolch_gencfsm_Arch_Extra]<br />
Server = http://download.opensuse.org/repositories/home:/moritzmolch:/gencfsm/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== haavard ====<br />
<br />
* '''Maintainer:''' Håvard Pettersson<br />
* '''Description:''' Mostly Tox-related packages<br />
* '''Upstream page:''' https://haavard.me/archlinux<br />
* '''Key-ID:''' 928988CE<br />
<br />
{{bc|<nowiki><br />
[haavard]<br />
Server = https://haavard.me/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== haskell-core ====<br />
<br />
* '''Maintainer:''' Magnus Therning<br />
* '''Description:''' Arch-Haskell repository<br />
* '''Upstream page:''' https://github.com/archhaskell/habs<br />
* '''Key-ID:''' 4209170B<br />
<br />
{{bc|<nowiki><br />
[haskell-core]<br />
Server = http://xsounds.org/~haskell/core/$arch<br />
</nowiki>}}<br />
<br />
==== infinality-bundle ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle main repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle]<br />
Server = http://bohoomil.com/repo/$arch<br />
</nowiki>}}<br />
<br />
==== ivasilev ====<br />
<br />
* '''Maintainer:''' [http://ivasilev.net Ianis G. Vasilev]<br />
* '''Description:''' A variety of packages, mostly my own software and AUR builds.<br />
* '''Upstream page:''' http://ivasilev.net/pacman<br />
* '''Key-ID:''' 436BB513<br />
<br />
{{Note|I mantain 'any', 'i686' and 'x86_64' repos. Each of them includes packages from 'any'. $arch can be replaced with any of the three}}<br />
<br />
{{bc|<nowiki><br />
[ivasilev]<br />
Server = http://ivasilev.net/pacman/$arch<br />
</nowiki>}}<br />
<br />
==== libre ====<br />
<br />
* '''Maintainer:''' Parabola Linux-libre<br />
* '''Description:''' Libre variations on Core/extra packages.<br />
* '''Upstream page:''' https://wiki.parabola.nu/Repositories#libre<br />
* '''Key-ID:''' https://www.parabola.nu/master-keys/<br />
<br />
{{Warning|Placing {{ic|[libre]}} before {{ic|[core]}} in {{ic|/etc/pacman.conf}} is '''not''' supported.}}<br />
<br />
{{Note|To install {{ic|parabola-keyring}}, {{ic|1=SigLevel = PackageOptional}} should be added temporarily.}}<br />
<br />
{{bc|<nowiki><br />
[libre]<br />
Server = https://repo.parabola.nu/libre/os/$arch<br />
</nowiki>}}<br />
<br />
==== lxqt-git ====<br />
<br />
* '''Maintainer:''' [http://www.stobbstechnical.com/ stobbsm]<br />
* '''Description:''' lxqt-git weekly build repository<br />
* '''Key-ID:''' 26EBCC57<br />
<br />
{{bc|<nowiki><br />
[lxqt-git]<br />
Server = http://repo.stobbstechnical.com/$arch<br />
</nowiki>}}<br />
<br />
==== metalgamer ====<br />
<br />
* '''Maintainer:''' [http://metalgamer.eu/ metalgamer]<br />
* '''Description:''' Packages I use and/or maintain on the AUR.<br />
* '''Key ID:''' F55313FB<br />
<br />
{{bc|<nowiki><br />
[metalgamer]<br />
Server = http://repo.metalgamer.eu/$arch<br />
</nowiki>}}<br />
<br />
==== pipelight ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Pipelight and wine-compholio<br />
* '''Upstream page:''' [http://fds-team.de/ fds-team.de]<br />
* '''Key-ID:''' E49CC0415DC2D5CA<br />
* '''Keyfile:''' http://repos.fds-team.de/Release.key<br />
<br />
{{bc|<nowiki><br />
[pipelight]<br />
Server = http://repos.fds-team.de/stable/arch/$arch<br />
</nowiki>}}<br />
<br />
==== repo-ck ====<br />
<br />
* '''Maintainer:''' [[User:Graysky|graysky]]<br />
* '''Description:''' Kernel and modules with Brain Fuck Scheduler and all the goodies in the ck1 patch set.<br />
* '''Upstream page:''' [http://repo-ck.com repo-ck.com]<br />
* '''Wiki:''' [[repo-ck]]<br />
* '''Key-ID:''' 5EE46C4C<br />
<br />
{{bc|<nowiki><br />
[repo-ck]<br />
Server = http://repo-ck.com/$arch<br />
Server = http://repo-ck.devtrue.net/$arch<br />
</nowiki>}}<br />
<br />
==== seblu ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#seblu Sébastien Luttringer]<br />
* '''Description:''' All seblu useful pre-built packages, some homemade (virtualbox-ext-oracle, linux-seblu-meta, bedup).<br />
* '''Key-ID:''' Not required, as maintainer is a Developer<br />
<br />
{{bc|<nowiki><br />
[seblu]<br />
Server = http://seblu.net/a/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== sergej-repo ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#spupykin Sergej Pupykin]<br />
* '''Description:''' psi-plus, owncloud-git, ziproxy, android, MySQL, and other stuff. Some packages also available for armv7h.<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{bc|<nowiki><br />
[sergej-repo]<br />
Server = http://repo.p5n.pp.ru/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== arch-deepin ====<br />
<br />
* '''Maintainer:''' [https://build.opensuse.org/project/show/home:metakcahura metak], [https://github.com/fasheng fasheng]<br />
* '''Description:''' Porting software from Linux Deepin to Archlinux.<br />
* '''Upstream page:''' https://github.com/fasheng/arch-deepin<br />
<br />
{{bc|<nowiki><br />
[home_metakcahura_arch-deepin_Arch_Extra]<br />
SigLevel = Never<br />
Server = http://download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
#Server = http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/metakcahura:/arch-deepin/Arch_Extra/$arch<br />
</nowiki>}}<br />
<br />
==== archaudio ====<br />
<br />
* '''Maintainer:''' [[User:Schivmeister|Ray Rashif]], [https://aur.archlinux.org/account/jhernberg Joakim Hernberg]<br />
* '''Description:''' Pro-audio packages<br />
<br />
{{bc|<nowiki><br />
[archaudio-production]<br />
Server = http://repos.archaudio.org/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== archie-repo ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/Kalinda/ Kalinda]<br />
* '''Description:''' Repo for wine-silverlight, pipelight, and some misc packages.<br />
<br />
{{bc|<nowiki><br />
[archie-repo]<br />
Server = http://andontie.net/archie-repo/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxfr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
* '''Upstream page:''' http://afur.archlinux.fr<br />
<br />
{{bc|<nowiki><br />
[archlinuxfr]<br />
Server = http://repo.archlinux.fr/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgis ====<br />
{{Note|It seems to be down (2015-02-25). After a few weeks, please either remove this note if it goes back on-line, or remove the repository if it keeps down.}}<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Maintainers needed - low bandwidth<br />
<br />
{{bc|<nowiki><br />
[archlinuxgis]<br />
Server = http://archlinuxgis.no-ip.org/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:'''<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr]<br />
Server = http://archlinuxgr.tiven.org/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== archlinuxgr-kde4 ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' KDE4 packages (plasmoids, themes etc) provided by the Hellenic (Greek) Arch Linux community<br />
<br />
{{bc|<nowiki><br />
[archlinuxgr-kde4]<br />
Server = http://archlinuxgr.tiven.org/archlinux-kde4/$arch<br />
</nowiki>}}<br />
<br />
==== arsch ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' From users of orgizm.net<br />
<br />
{{bc|<nowiki><br />
[arsch]<br />
Server = http://arsch.orgizm.net/$arch<br />
</nowiki>}}<br />
<br />
==== aurbin ====<br />
<br />
{{Note|This Repository wasn't updated since October 2013}}<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Automated build of AUR packages<br />
* '''Upstream page:''' http://aurbin.net/<br />
<br />
{{bc|<nowiki><br />
[aurbin]<br />
Server = http://aurbin.net/$arch<br />
</nowiki>}}<br />
<br />
==== cinnamon ====<br />
<br />
* '''Maintainer:''' [https://github.com/jnbek jnbek]<br />
* '''Description:''' Stable and actively developed Cinnamon packages (Applets, Themes, Extensions), plus others (Hotot, qBitTorrent, GTK themes, Perl modules, and more).<br />
<br />
{{bc|<nowiki><br />
[cinnamon]<br />
Server = http://archlinux.zoelife4u.org/cinnamon/$arch<br />
</nowiki>}}<br />
<br />
==== ede ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Equinox Desktop Environment repository<br />
<br />
{{bc|<nowiki><br />
[ede]<br />
Server = http://ede.elderlinux.org/repos/archlinux/$arch<br />
</nowiki>}}<br />
<br />
==== heftig ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#heftig Jan Steffens]<br />
* '''Description:''' Includes linux-zen and aurora (Firefox development build - works alongside {{Pkg|firefox}} in the ''extra'' repository).<br />
* '''Upstream page:''' https://bbs.archlinux.org/viewtopic.php?id=117157<br />
<br />
{{bc|<nowiki><br />
[heftig]<br />
Server = http://pkgbuild.com/~heftig/repo/$arch<br />
</nowiki>}}<br />
<br />
==== herecura-stable ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' additional packages not found in the ''community'' repository<br />
<br />
{{bc|<nowiki><br />
[herecura-stable]<br />
Server = http://repo.herecura.be/herecura-stable/$arch<br />
</nowiki>}}<br />
<br />
==== herecura-testing ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' additional packages for testing build against stable arch<br />
<br />
{{bc|<nowiki><br />
[herecura-testing]<br />
Server = http://repo.herecura.be/herecura-testing/$arch<br />
</nowiki>}}<br />
<br />
==== mesa-git ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Mesa git builds for the ''testing'' and ''multilib-testing'' repositories<br />
<br />
{{bc|<nowiki><br />
[mesa-git]<br />
Server = http://pkgbuild.com/~lcarlier/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== noware ====<br />
<br />
* '''Maintainer:''' Alexandru Thirtheu (alex_giusi_tiri2@yahoo.com) ([https://bbs.archlinux.org/profile.php?id=65036 Forums]) ([https://wiki.archlinux.org/index.php/User:AGT Wiki]) ([http://noware.co Web Site])<br />
* '''Description:''' Software which I prefer being present in a repository, than being compiled each time. It eases software maintenance, I find. Almost anything goes.<br />
<br />
{{bc|<nowiki><br />
[noware]<br />
Server = http://noware.co/repository/arch/$arch<br />
</nowiki>}}<br />
<br />
==== openrc-eudev ====<br />
<br />
* '''Maintainer:''' [[User:Aaditya|Aaditya]]<br />
* '''Description:''' OpenRC packages directly from github.<br />
{{bc|<nowiki><br />
[openrc-eudev]<br />
SigLevel = Optional TrustAll<br />
Server = http://downloads.sourceforge.net/project/mefiles/Manjaro/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== oracle ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Oracle database client<br />
<br />
{{Warning|By adding this you are agreeing to the Oracle license at http://www.oracle.com/technetwork/licenses/instant-client-lic-152016.html}}<br />
<br />
{{bc|<nowiki><br />
[oracle]<br />
Server = http://linux.shikadi.net/arch/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== pantheon ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Repository containing Pantheon-related packages<br />
<br />
{{bc|<nowiki><br />
[pantheon]<br />
Server = http://pkgbuild.com/~alucryd/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== paulburton-fitbitd ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains fitbitd for synchronizing FitBit trackers<br />
<br />
{{bc|<nowiki><br />
[paulburton-fitbitd]<br />
Server = http://www.paulburton.eu/arch/fitbitd/$arch<br />
</nowiki>}}<br />
<br />
==== pfkernel ====<br />
<br />
* '''Maintainer:''' [[User:Nous|nous]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf[-cpu] and linux-pf-lts[-cpu]. Also, openrc and initscripts-openrc.<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/11734958/x86_64/index.html or start at http://tiny.cc/linux-pf<br />
<br />
{{bc|<nowiki><br />
[pfkernel]<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
</nowiki>}}<br />
<br />
==== rstudio ====<br />
<br />
* '''Maintainer:''' Artem Klevtsov <a.a.klevtsov@gmail.com><br />
* '''Description:''' Rstudio IDE package (git version) and depends.<br />
<br />
{{bc|<nowiki><br />
[rstudio]<br />
Server = http://rstudio.archer.tw/$arch<br />
</nowiki>}}<br />
<br />
==== suckless ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' suckless.org packages<br />
<br />
{{bc|<nowiki><br />
[suckless]<br />
Server = http://dl.suckless.org/arch/$arch<br />
</nowiki>}}<br />
<br />
==== unity ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' unity packages for Arch<br />
<br />
{{bc|<nowiki><br />
[unity]<br />
Server = http://unity.xe-xe.org/$arch<br />
</nowiki>}}<br />
<br />
==== unity-extra ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' unity extra packages for Arch<br />
<br />
{{bc|<nowiki><br />
[unity-extra]<br />
Server = http://unity.xe-xe.org/extra/$arch<br />
</nowiki>}}<br />
<br />
==== home_tarakbumba_archlinux_Arch_Extra_standard ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Contains a few pre-built AUR packages (zemberek, firefox-kde-opensuse, etc.)<br />
<br />
{{bc|<nowiki><br />
[home_tarakbumba_archlinux_Arch_Extra_standard]<br />
Server = http://download.opensuse.org/repositories/home:/tarakbumba:/archlinux/Arch_Extra_standard/$arch<br />
</nowiki>}}<br />
<br />
== i686 only ==<br />
<br />
=== Signed ===<br />
<br />
==== eee-ck ====<br />
<br />
* '''Maintainer:''' Gruppenpest<br />
* '''Description:''' Kernel and modules optimized for Asus Eee PC 701, with -ck patchset.<br />
* '''Key-ID:''' 27D4A19A<br />
* '''Keyfile''' http://zembla.frozenslumber.com/repo/gruppenpest.gpg<br />
<br />
{{bc|<nowiki><br />
[eee-ck]<br />
Server = http://zembla.frozenslumber.com/repo<br />
</nowiki>}}<br />
<br />
==== phillid ====<br />
<br />
* '''Maintainer:''' Phillid<br />
* '''Description:''' Various GCC-s and matching binutils-es which target bare-bones formats (for OS dev). The GCC toolchains are shrunk to ~8&nbsp;MiB each by disabling NLS and everything but the C front-end. Thrown in there is some ham-related stuff I use such as hamlib, xastir, qsstv. Also a couple of legacy packages which are a bit lengthy to build for most people (kdelibs3, qt3).<br />
* '''Key-ID:''' 28F1E6CE<br />
<br />
{{bc|<nowiki><br />
[phillid]<br />
Server = http://phillid.tk/r/i686/<br />
</nowiki>}}<br />
<br />
==== xyne-i686 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "i686" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-i686]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' each program I'm using on x86_64 is compiled for i686 too<br />
* '''Upstream page:''' http://andrwe.org/linux/repository<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/i686<br />
</nowiki>}}<br />
<br />
==== esclinux ====<br />
<br />
{{Note|Off-line since 2014-07-02.}}<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Mostly games, interactive fiction, and abc notation stuff already on the AUR.<br />
<br />
{{bc|<nowiki><br />
[esclinux]<br />
Server = http://download.tuxfamily.org/esclinuxcd/ressources/repo/i686/<br />
</nowiki>}}<br />
<br />
==== kpiche ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Stable OpenSync packages.<br />
<br />
{{bc|<nowiki><br />
[kpiche]<br />
Server = http://kpiche.archlinux.ca/repo<br />
</nowiki>}}<br />
<br />
==== kernel26-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 2.6.39<br />
<br />
{{bc|<nowiki><br />
[kernel26-pae]<br />
Server = http://kernel26-pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== linux-pae ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' PAE-enabled 32-bit kernel 3.0<br />
<br />
{{bc|<nowiki><br />
[linux-pae]<br />
Server = http://pae.archlinux.ca/<br />
</nowiki>}}<br />
<br />
==== rfad ====<br />
<br />
* '''Maintainer:''' requiem [at] archlinux.us<br />
* '''Description:''' Repository made by haxit<br />
<br />
{{bc|<nowiki><br />
[rfad]<br />
Server = http://web.ncf.ca/ey723/archlinux/repo/<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/i686<br />
</nowiki>}}<br />
<br />
== x86_64 only ==<br />
<br />
=== Signed ===<br />
<br />
==== apathism ====<br />
<br />
* '''Maintainer:''' Koryabkin Ivan ([https://aur.archlinux.org/account/apathism/ apathism])<br />
* '''Upstream page:''' https://apathism.net/<br />
* '''Description:''' AUR packages that would take long to build, such as {{AUR|firefox-kde-opensuse}}.<br />
* '''Key-ID:''' 3E37398D<br />
* '''Keyfile:''' http://apathism.net/archlinux/apathism.key<br />
<br />
{{bc|<nowiki><br />
[apathism]<br />
Server = http://apathism.net/archlinux/<br />
</nowiki>}}<br />
<br />
==== bioinformatics ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/decryptedepsilon/ decryptedepsilon]<br />
* '''Description:''' A repository containing some software tools for Bioinformatics<br />
* '''Key-ID:''' 60442BA4<br />
<br />
{{bc|<nowiki><br />
[bioinformatics]<br />
Server = http://decryptedepsilon.bl.ee/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== boyska64 ====<br />
<br />
* '''Maintainer:''' boyska<br />
* '''Description:''' Personal repository: cryptography, sdr, mail handling and misc<br />
* '''Key-ID:''' 0x7395DCAE58289CA9<br />
<br />
{{bc|<nowiki><br />
[boyska64]<br />
Server = http://boyska.s.pt-labs.net/archrepo<br />
</nowiki>}}<br />
<br />
==== coderkun-aur ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with random software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-audio ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with audio-related (realtime kernels, lv2-plugins, …) software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-audio]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-java ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with java related software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-java]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== coderkun-aur-nonfree ====<br />
<br />
* '''Maintainer:''' [https://aur.archlinux.org/account/coderkun/ coderkun]<br />
* '''Description:''' AUR packages with proprietary (dropbox, nvidia, …) software. Supporting package deltas and package and database signing.<br />
* '''Upstream page:''' https://arch.coderkun.de<br />
* '''Key-ID:''' A6BEE374<br />
* '''Keyfile:''' [http://arch.coderkun.de/coderkun.asc http://arch.coderkun.de/coderkun.asc]<br />
<br />
{{bc|<nowiki><br />
[coderkun-aur-nonfree]<br />
Server = http://arch.coderkun.de/$repo/$arch/<br />
</nowiki>}}<br />
<br />
==== freifunk-rheinland ====<br />
<br />
* '''Maintainer:''' nomaster<br />
* '''Description:''' Packages for the Freifunk project: batman-adv, batctl, fastd and dependencies.<br />
<br />
{{bc|<nowiki><br />
[freifunk-rheinland]<br />
Server = http://mirror.fluxent.de/archlinux-custom/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== gustawho ====<br />
<br />
* '''Maintainer:''' [https://twitter.com/gustawho Gustavo Castro]<br />
* '''Description:''' Scientific tools (mostly physics/math, e.g. {{AUR|quantum-espresso}} and {{AUR|geant4}}) and AUR packages that would take long to build, such as {{AUR|firefox-gtk3}}, {{AUR|firefox-kde-opensuse}} and {{AUR|jdk7-openjdk-infinality}} ([http://gustawho.com/recent-updates/ package list]).<br />
* '''Upstream page:''' http://gustawho.com<br />
* '''Key-ID:''' 2C575D76<br />
<br />
{{bc|<nowiki><br />
[gustawho]<br />
Server = http://gustawho.com/repo/x86_64<br />
</nowiki>}}<br />
<br />
==== Linux-pf ====<br />
<br />
* '''Maintainer:''' [[User:Thaodan|Thaodan]]<br />
* '''Description:''' Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, Aufs3; i.e. linux-pf, just like nous but addioally optimized for all intel cpu from sandybridge and generic of couse, and some extra packages<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox).<br />
<br />
{{bc|<nowiki><br />
[Linux-pf]<br />
https://dl.dropboxusercontent.com/u/172590784/Linux-pf/$arch<br />
</nowiki>}}<br />
<br />
==== infinality-bundle-multilib ====<br />
<br />
* '''Maintainer:''' [http://bohoomil.com/ bohoomil]<br />
* '''Description:''' infinality-bundle multilib repository.<br />
* '''Upstream page:''' [http://bohoomil.com/ Infinality bundle & fonts]<br />
* '''Key-ID:''' 962DDE58<br />
<br />
{{bc|<nowiki><br />
[infinality-bundle-multilib]<br />
Server = http://bohoomil.com/repo/multilib/$arch<br />
</nowiki>}}<br />
<br />
==== kc9ydn ====<br />
<br />
* '''Maintainer:''' [http://kc9ydn.us KC9YDN]<br />
* '''Description:''' Consists mostly of amateur radio related apps<br />
* '''Key-ID:''' 7DA25A0F<br />
<br />
{{bc|<nowiki><br />
[kc9ydn]<br />
Server = http://kc9ydn.us/repo/<br />
</nowiki>}}<br />
<br />
==== linux-lts-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current ArchLinux LTS kernel with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/x86_64/index.html or start at http://tiny.cc/linux-lts-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch)<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x/x86_64/index.html or start at http://tiny.cc/linux-lts31x<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x/$arch<br />
</nowiki>}}<br />
<br />
==== linux-lts31x-ck ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Older LTS kernels (3.10 and 3.12 branch) with the CK patch<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/x86_64/index.html or start at http://tiny.cc/linux-lts31x-ck<br />
<br />
{{bc|<nowiki><br />
[linux-lts31x-ck]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-lts31x-ck/$arch<br />
</nowiki>}}<br />
<br />
==== linux-ck-pax ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Current Arch Kernel with the CK and PaX security patchsets<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/x86_64/index.html or start at http://tiny.cc/linux-ck-pax<br />
<br />
{{bc|<nowiki><br />
[linux-ck-pax]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-ck-pax/$arch<br />
</nowiki>}}<br />
<br />
==== linux-tresor ====<br />
<br />
* '''Maintainer:''' Claire Farron [https://aur.archlinux.org/account/clfarron4 clfarron4]<br />
* '''Description:''' Arch Current and LTS kernels with TRESOR<br />
* '''Key-ID:''' E6366A92<br />
* '''Note:''' To browse through the repository, one needs to append {{ic|index.html}} after the server URL (this is an intentional quirk of Dropbox). For example, for x86_64, point your browser to http://dl.dropbox.com/u/298301785/arch/linux-tresor/x86_64/index.html or start at http://tiny.cc/linux-tresor<br />
<br />
{{bc|<nowiki><br />
[linux-tresor]<br />
Server = http://dl.dropbox.com/u/298301785/arch/linux-tresor/$arch<br />
</nowiki>}}<br />
<br />
==== qt-debug ====<br />
<br />
* '''Maintainer:''' [http://blog.the-compiler.org/?page_id=36 The Compiler]<br />
* '''Description:''' Qt/PyQt builds with debug symbols<br />
* '''Upstream page:''' https://github.com/The-Compiler/qt-debug-pkgbuild<br />
* '''Key-ID:''' D6A1C70FE80A0C82<br />
<br />
{{bc|<nowiki><br />
[qt-debug]<br />
Server = http://qutebrowser.org/qt-debug/$arch<br />
</nowiki>}}<br />
<br />
==== quarry ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/developers/#anatolik anatolik]<br />
* '''Description:''' Arch binary repository for [http://rubygems.org/ Rubygems] packages. See [https://bbs.archlinux.org/viewtopic.php?id=182729 forum announcement] for more information.<br />
* '''Sources:''' https://github.com/anatol/quarry<br />
* '''Key-ID:''' Not needed, as maintainer is a developer<br />
<br />
{{bc|<nowiki><br />
[quarry]<br />
# report issues at https://github.com/anatol/quarry<br />
Server = http://pkgbuild.com/~anatolik/quarry/x86_64/<br />
</nowiki>}}<br />
<br />
==== siosm-aur ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages also available in the Arch User Repository, sometimes with minor fixes<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-aur]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== siosm-selinux ====<br />
<br />
* '''Maintainer:''' [https://tim.siosm.fr/about/ Timothee Ravier]<br />
* '''Description:''' packages required for SELinux support – work in progress (notably, missing an Arch Linux-compatible SELinux policy). See the [[SELinux]] page for details.<br />
* '''Upstream page:''' https://tim.siosm.fr/repositories/<br />
* '''Key-ID:''' 78688F83<br />
<br />
{{bc|<nowiki><br />
[siosm-selinux]<br />
Server = http://siosm.fr/repo/$repo/<br />
</nowiki>}}<br />
<br />
==== subtitlecomposer ====<br />
<br />
* '''Maintainer:''' Mladen Milinkovic (maxrd2)<br />
* '''Description:''' Subtitle Composer stable and nightly builds<br />
* '''Upstream page:''' https://github.com/maxrd2/subtitlecomposer<br />
* '''Key-ID:''' EA8CEBEE<br />
<br />
{{bc|<nowiki><br />
[subtitlecomposer]<br />
Server = http://smoothware.net/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== xyne-x86_64 ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#xyne Xyne]<br />
* '''Description:''' A repository for Xyne's own projects containing packages for the "x86_64" architecture.<br />
* '''Upstream page:''' http://xyne.archlinux.ca/projects/<br />
* '''Key-ID:''' Not required, as maintainer is a TU<br />
<br />
{{Note|This includes all packages in [[#xyne-any|<nowiki>[xyne-any]</nowiki>]].}}<br />
<br />
{{bc|<nowiki><br />
[xyne-x86_64]<br />
Server = http://xyne.archlinux.ca/repos/xyne<br />
</nowiki>}}<br />
<br />
=== Unsigned ===<br />
<br />
{{Note|Users will need to add the following to these entries: {{ic|1=SigLevel = PackageOptional}}}}<br />
<br />
==== alucryd ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages Maxime Gauduin maintains (or not) in the AUR.<br />
<br />
{{bc|<nowiki><br />
[alucryd]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== alucryd-multilib ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#alucryd Maxime Gauduin]<br />
* '''Description:''' Various packages needed to run Steam without its runtime environment.<br />
<br />
{{bc|<nowiki><br />
[alucryd-multilib]<br />
Server = http://pkgbuild.com/~alucryd/$repo/x86_64<br />
</nowiki>}}<br />
<br />
==== andrwe ====<br />
<br />
* '''Maintainer:''' Andrwe Lord Weber<br />
* '''Description:''' contains programs I'm using on many systems<br />
* '''Upstream page:''' http://andrwe.dyndns.org/doku.php/blog/repository {{Dead link|2013|11|30}}<br />
<br />
{{bc|<nowiki><br />
[andrwe]<br />
Server = http://repo.andrwe.org/x86_64<br />
</nowiki>}}<br />
<br />
==== archstudio ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Audio and Music Packages optimized for Intel Core i3, i5, and i7.<br />
* '''Upstream page:''' http://www.xsounds.org/~archstudio<br />
<br />
{{bc|<nowiki><br />
[archstudio]<br />
Server = http://www.xsounds.org/~archstudio/x86_64<br />
</nowiki>}}<br />
<br />
==== brtln ====<br />
<br />
* '''Maintainer:''' [https://www.archlinux.org/trustedusers/#bpiotrowski Bartłomiej Piotrowski]<br />
* '''Description:''' Some VCS packages.<br />
<br />
{{bc|<nowiki><br />
[brtln]<br />
Server = http://pkgbuild.com/~barthalion/brtln/$arch/<br />
</nowiki>}}<br />
<br />
==== hawaii ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' hawaii Qt5/Wayland-based desktop environment<br />
* '''Upstream page:''' http://www.maui-project.org/<br />
<br />
{{bc|<nowiki><br />
[hawaii]<br />
Server = http://archive.maui-project.org/archlinux/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== kps ====<br />
<br />
* '''Maintainer:''' kps<br />
* '''Description:''' gmt, catalyst-test, ttf-ms-win8, rstudio, meshlab, gcc-gcj, vlc-git, ffmpeg-git (k10 & intel opt.), docear, maperitive, libressl, bkchem ...<br />
<br />
{{bc|<nowiki><br />
[kps]<br />
Server = http://kps.bplaced.net/repo/$arch<br />
</nowiki>}}<br />
<br />
==== miusystem ====<br />
<br />
* '''Maintainer:''' Theodore Keloglou <theodorekeloglou@gmail.com><br />
* '''Description:''' Packages that I use and might interest others<br />
<br />
{{bc|<nowiki><br />
[miusystem]<br />
Server = http://oke.miusystem.com/archlinux-repo<br />
</nowiki>}}<br />
<br />
==== pnsft-pur ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Japanese input method packages Mozc (vanilla) and libkkc<br />
<br />
{{bc|<nowiki><br />
[pnsft-pur]<br />
Server = http://downloads.sourceforge.net/project/pnsft-aur/pur/x86_64<br />
</nowiki>}}<br />
<br />
==== mingw-w64 ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Almost all mingw-w64 packages in the AUR updated every 8 hours.<br />
* '''Upstream page:''' http://arch.linuxx.org<br />
<br />
{{bc|<nowiki><br />
[mingw-w64]<br />
Server = http://downloads.sourceforge.net/project/mingw-w64-archlinux/$arch<br />
# in 2014-12-24 it seems no one worked<br />
#Server = http://arch.linuxx.org/archlinux/$repo/os/$arch<br />
#Server = http://amr.linuxd.org/archlinux/$repo/os/$arch<br />
</nowiki>}}<br />
<br />
==== rakudo ====<br />
<br />
* '''Maintainer:''' spider-mario <spidermario@free.fr><br />
* '''Description:''' Rakudo Perl6<br />
<br />
{{bc|<nowiki><br />
[rakudo]<br />
Server = http://spidermario.free.fr/archlinux/$repo/$arch<br />
</nowiki>}}<br />
<br />
==== rightscale ====<br />
<br />
* '''Maintainer:''' Chris Fordham <chris@fordham-nagy.id.au><br />
* '''Description:''' Packages for RightScale including the RightLink cloud instance agent. Install the package, rightscale-agent.<br />
<br />
{{bc|<nowiki><br />
[rightscale]<br />
Server = https://s3-us-west-1.amazonaws.com/archlinux-rightscale/$arch<br />
</nowiki>}}<br />
<br />
==== seiichiro ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' VDR and some plugins, mms, foo2zjs-drivers<br />
<br />
{{bc|<nowiki><br />
[seiichiro]<br />
Server = http://repo.seiichiro0185.org/x86_64<br />
</nowiki>}}<br />
<br />
==== studioidefix ====<br />
<br />
* '''Maintainer:'''<br />
* '''Description:''' Precompiled boxee packages.<br />
<br />
{{bc|<nowiki><br />
[studioidefix]<br />
Server = http://studioidefix.googlecode.com/hg/repo/x86_64<br />
</nowiki>}}<br />
<br />
== armv6h only ==<br />
<br />
=== Unsigned ===<br />
<br />
==== arch-fook-armv6h ====<br />
<br />
* '''Maintainer:''' Jaska Kivelä <jaska@kivela.net><br />
* '''Description:''' Stuff that I have compiled for my Raspberry PI. Including Enlightenment and home automation stuff.<br />
<br />
{{bc|<nowiki><br />
[arch-fook-armv6h]<br />
Server = http://kivela.net/jaska/arch-fook-armv6h<br />
</nowiki>}}</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364247OpenRC2015-03-06T22:35:50Z<p>Nous: /* artoo's way */ Add openrc-eudev repo</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Two unofficial repositories exist with precompiled packages of the github sources: [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#openrc-eudev <nowiki>[openrc-eudev]</nowiki>] and [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel <nowiki>[pfkernel]</nowiki>].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow. Also, {{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. Read [[Init#Replacing_the_systemd_package]] and [[Eudev]] for more information.<br />
<br />
Note: in the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Add your users to the groups you want them to have access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
* You should now reboot. However, since '''systemd''' is still running but its files no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} in succession to sync, remount all disks read-only and reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=364242Talk:OpenRC2015-03-06T22:32:05Z<p>Nous: /* Quick migration from systemd */</p>
<hr />
<div>== Alternative way to install OpenRC and eudev (artoo's way) ==<br />
<br />
Instead of the AUR, one can simply build from [https://github.com/udeved/pkgbuilds artoo's git repo], add all the packages to a local repo, and install from that.<br />
<br />
Steps include:<br />
<br />
# One time<br />
mkdir -p ~/builds && cd ~/builds<br />
git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
<br />
# To keep up to date<br />
cd ~/builds/openrc-eudev<br />
git pull<br />
cd sysvinit && makepkg -s<br />
cd ..<br />
cd openrc-core && makepkg -d # to ignore sysvinit dependency<br />
cd ..<br />
cd openrc-base && makepkg -s<br />
cd ..<br />
cd openrc-desktop && makepkg -s<br />
cd ..<br />
cd polkit-consolekit && makepkg -s<br />
cd ..<br />
cd consolekit && makepkg -s<br />
cd ..<br />
cd eudev && makepkg -s<br />
cd ..<br />
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency<br />
cd ..<br />
cd upower-pm-utils && makepkg -d<br />
cd ..<br />
<br />
# Copying built packages in one place<br />
mkdir -p ~/builds/openrc-eudev/packages<br />
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages<br />
<br />
This probably takes care of the base. The built packages could be added to a [[Pacman_Tips#Custom_local_repository | pacman local repo]].<br />
<br />
After that the built packages could be installed as:<br />
<br />
sudo pacman -S openrc-base<br />
sudo pacman -S openrc-desktop<br />
sudo pacman -S eudev-base<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:Here's a "slightly" more complex script to automate this:<br />
<br />
{{bc|<nowiki><br />
#/usr/bin/env bash<br />
<br />
[[ -d openrc-eudev ]] || git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
cd openrc-eudev || exit 1<br />
<br />
_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)<br />
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)<br />
_fail() { echo "$i failed to build." > ../fail.log; }<br />
<br />
for i in "${_dep[@]}"; do<br />
(cd "$i" && { makepkg -sr || _fail; })<br />
done<br />
<br />
for i in "${_nodep[@]}"; do<br />
(cd "$i" && { makepkg -d || _fail; })<br />
done<br />
<br />
mkdir -p packages && cp */*.pkg.tar.xz packages/<br />
</nowiki>}}<br />
<br />
:-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 13:30, 28 January 2015 (UTC)<br />
<br />
:: Interesting script, I did not know about ''pushd'' and ''popd'', thx. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:::Yep, and edited to remove it. :P -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 20:52, 23 February 2015 (UTC)<br />
<br />
== Clarification ==<br />
<br />
In<br />
:Here the main package is openrc-core (and corresponding set of scripts belonging to the openrc-base group). <br />
it's needed a clarification: it implies that we have to install openrc-core only? openrc-core plus openrc-base? Is the installation of openrc-base optional? If we install openrc-base, then we also install openrc-core?<br />
<br />
Please clarify it. Overall for people installing it from AUR.--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 17:52, 24 January 2015 (UTC)<br />
<br />
:: openrc core + openrc base (openrc-core is a dependency of openrc-base), I will clarify that point [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 03:39, 26 January 2015 (UTC)<br />
::: Thanks--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 07:59, 26 January 2015 (UTC)<br />
<br />
== Why delete webpage and repo ==<br />
<br />
Hi,<br />
<br />
Why do you delete tips and tricks? Why it's not available?--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 15:55, 27 January 2015 (UTC)<br />
<br />
: Hi Xan, I felt I was unable to keep the repo up to date due to increased efforts, but I will see if I can bring it back, with perhaps less effort from my side. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 16:12, 27 January 2015 (UTC)<br />
:: But it works for me now. I've just updated my packages right now (openrc 0.13.8).--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:58, 29 January 2015 (UTC)<br />
::: Yes, after reading your post, I realised that maybe I could let the repo be and update it when I got the time (like yesterday). [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 14:42, 29 January 2015 (UTC)<br />
:::: Thanks a lot. I think maintain a repo with OpenRC is a good idea. With this, we will attrack more people --[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:35, 30 January 2015 (UTC)<br />
<br />
== Quick migration from systemd ==<br />
<br />
Hey [[User:Alad|Alad]],<br />
<br />
Some of the stuff in [[OpenRC#Quick_migration_from_systemd]] is unique too, like how to reboot after removing systemd, preserving the daemons used with systemd, etc..<br />
<br />
Do you think we can accommodate it somehow?<br />
<br />
Also maybe it makes sense to have a list of what to do after removing systemd, which could link to headings under the [[Init]] page.<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 12:10, 6 March 2015 (UTC)<br />
<br />
:A section with easy to follow steps is useful, however redundant and overlapping. True, many parts can be found in other wiki articles, but very few articles can be truly original anyway.<br />
:Moreover, unofficial repos are used in several pages of our wiki (e.g. [[AMD_Catalyst#Installing_from_the_unofficial_repository]], [[VirtualBox#Extension_pack]]) and I've been dilligently maintaining [pfkernel] since 2011; it might not be a very popular one but it's not a nova either. [[Yaourt]] is clearly suggested as an alternative way too.<br />
:[[User:Alad|Alad]], do you think it would be better to move it to the end of [[OpenRC]], as a summary perhaps of the entire article? -- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 12:21, 6 March 2015 (UTC)<br />
<br />
::Here's some steps (don't have the time to implement them):<br />
::#[[Yaourt]] should not be mentioned outside [[Yaourt]] itself, as users are expected to use and understand ''makepkg''. It is customary to link to the [[AUR]] article instead.<br />
::#I would mention the repo in [[OpenRC#artoo's way]].<br />
::#Removing systemd is an optional but highly invasive step; it is however handled in [[Init#Replacing_the_systemd_package]] and to some extent in [[eudev]]. sysrq steps could be merged. I don't see the actual benefit of "Remove stystemd cruft", and besides, the users are part of {{Pkg|filesystem}}.<br />
::#{{ic|systemctl list units | ...}} is more an installation, rather than troubleshooting step, so this could be left here.<br />
::#ConsoleKit is in no way "mandatory" for desktop users; see [[Init#Group_permissions]] (the usermod command with common groups could be merged there). Related packages like {{AUR|upower-pm-utils}} could be mentioned in [[Init]] as well (I've thought on a "power management" section).<br />
::-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 19:24, 6 March 2015 (UTC)<br />
<br />
:::#[[Yaourt]] section removed.<br />
:::#Unofficial repos moved to [[OpenRC#artoo's way]].<br />
:::#I agree about the invasiveness, but it can't be helped; eudev conflicts with systemd and without udev there's no hotplugging. Since it's a default in systemd it should also be so in openrc...<br />
:::#I also agree about the systemd-users cruft, it's totally indifferent whether it stays or goes. Removed.<br />
:::#Re-worded consolekit.<br />
:::#To-do: figure out how to merge consolekit, upower, permissions and SysRq steps. My intention is to keep all steps in one place for easier reference, instead of scattering them across different (albeit more relevant) articles. What about keeping them as steps here and adding pertinent bits of information to their respective wiki pages?<br />
:::-- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 22:14, 6 March 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364239OpenRC2015-03-06T22:29:51Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Precompiled packages from the github sources are hosted in the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow. Also, {{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. Read [[Init#Replacing_the_systemd_package]] and [[Eudev]] for more information.<br />
<br />
Note: in the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Add your users to the groups you want them to have access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
* You should now reboot. However, since '''systemd''' is still running but its files no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} in succession to sync, remount all disks read-only and reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364237OpenRC2015-03-06T22:28:21Z<p>Nous: /* Quick migration from {{ic|systemd}} */ clarify sysrq</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Precompiled packages from the github sources are hosted in the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow. Also, {{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. Read [[Init#Replacing_the_systemd_package]] and [[Eudev]] for more information.<br />
<br />
Note: in the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Add your users to the groups you want them to have access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} in succession to sync, remount all disks read-only and reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364234OpenRC2015-03-06T22:24:58Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Precompiled packages from the github sources are hosted in the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow. Also, {{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. Read [[Init#Replacing_the_systemd_package]] and [[Eudev]] for more information.<br />
<br />
Note: in the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Add your users to the groups you want them to have access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
* Keep reading for additional configuration steps.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364233OpenRC2015-03-06T22:19:34Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Precompiled packages from the github sources are hosted in the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow. Also, {{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. Read [[Init#Replacing_the_systemd_package]] and [[Eudev]] for more information.<br />
<br />
Note: in the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Add your users to the groups you want them to have access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
* Keep reading for additional configuration steps.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364232OpenRC2015-03-06T22:19:01Z<p>Nous: /* Quick migration from {{ic|systemd}} */ Rework section</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Precompiled packages from the github sources are hosted in the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
TL;DR: This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow. Also, {{ic|eudev}} and {{ic|eudev-systemdcompat}} provide {{ic|udev}} and conflict with {{ic|systemd}} and {{ic|libsystemd}}, which will be removed. Read [[Init#Replacing_the_systemd_package]] and [[Eudev]] for more information.<br />
<br />
Note: in the installation steps that follow, {{ic|pacman}} is used in conjunction with an unofficial repository. This is just for illustrating the procedure. You are expected to download the packages from the [[AUR]] and build them with {{ic|makepkg}}.<br />
<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
* Install openrc and family: {{ic|pacman -Sdd openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
You will be warned of conflicts with {{ic|systemd}} and {{ic|libsystemd}}; answer 'yes' to remove them. This will also pull {{ic|sysvinit}}.<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Optional packages for desktop users session management: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Add your users to the groups you want them to have access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
* Keep reading for additional configuration steps.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=364231Talk:OpenRC2015-03-06T22:15:15Z<p>Nous: /* Quick migration from systemd */</p>
<hr />
<div>== Alternative way to install OpenRC and eudev (artoo's way) ==<br />
<br />
Instead of the AUR, one can simply build from [https://github.com/udeved/pkgbuilds artoo's git repo], add all the packages to a local repo, and install from that.<br />
<br />
Steps include:<br />
<br />
# One time<br />
mkdir -p ~/builds && cd ~/builds<br />
git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
<br />
# To keep up to date<br />
cd ~/builds/openrc-eudev<br />
git pull<br />
cd sysvinit && makepkg -s<br />
cd ..<br />
cd openrc-core && makepkg -d # to ignore sysvinit dependency<br />
cd ..<br />
cd openrc-base && makepkg -s<br />
cd ..<br />
cd openrc-desktop && makepkg -s<br />
cd ..<br />
cd polkit-consolekit && makepkg -s<br />
cd ..<br />
cd consolekit && makepkg -s<br />
cd ..<br />
cd eudev && makepkg -s<br />
cd ..<br />
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency<br />
cd ..<br />
cd upower-pm-utils && makepkg -d<br />
cd ..<br />
<br />
# Copying built packages in one place<br />
mkdir -p ~/builds/openrc-eudev/packages<br />
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages<br />
<br />
This probably takes care of the base. The built packages could be added to a [[Pacman_Tips#Custom_local_repository | pacman local repo]].<br />
<br />
After that the built packages could be installed as:<br />
<br />
sudo pacman -S openrc-base<br />
sudo pacman -S openrc-desktop<br />
sudo pacman -S eudev-base<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:Here's a "slightly" more complex script to automate this:<br />
<br />
{{bc|<nowiki><br />
#/usr/bin/env bash<br />
<br />
[[ -d openrc-eudev ]] || git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
cd openrc-eudev || exit 1<br />
<br />
_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)<br />
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)<br />
_fail() { echo "$i failed to build." > ../fail.log; }<br />
<br />
for i in "${_dep[@]}"; do<br />
(cd "$i" && { makepkg -sr || _fail; })<br />
done<br />
<br />
for i in "${_nodep[@]}"; do<br />
(cd "$i" && { makepkg -d || _fail; })<br />
done<br />
<br />
mkdir -p packages && cp */*.pkg.tar.xz packages/<br />
</nowiki>}}<br />
<br />
:-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 13:30, 28 January 2015 (UTC)<br />
<br />
:: Interesting script, I did not know about ''pushd'' and ''popd'', thx. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:::Yep, and edited to remove it. :P -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 20:52, 23 February 2015 (UTC)<br />
<br />
== Clarification ==<br />
<br />
In<br />
:Here the main package is openrc-core (and corresponding set of scripts belonging to the openrc-base group). <br />
it's needed a clarification: it implies that we have to install openrc-core only? openrc-core plus openrc-base? Is the installation of openrc-base optional? If we install openrc-base, then we also install openrc-core?<br />
<br />
Please clarify it. Overall for people installing it from AUR.--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 17:52, 24 January 2015 (UTC)<br />
<br />
:: openrc core + openrc base (openrc-core is a dependency of openrc-base), I will clarify that point [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 03:39, 26 January 2015 (UTC)<br />
::: Thanks--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 07:59, 26 January 2015 (UTC)<br />
<br />
== Why delete webpage and repo ==<br />
<br />
Hi,<br />
<br />
Why do you delete tips and tricks? Why it's not available?--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 15:55, 27 January 2015 (UTC)<br />
<br />
: Hi Xan, I felt I was unable to keep the repo up to date due to increased efforts, but I will see if I can bring it back, with perhaps less effort from my side. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 16:12, 27 January 2015 (UTC)<br />
:: But it works for me now. I've just updated my packages right now (openrc 0.13.8).--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:58, 29 January 2015 (UTC)<br />
::: Yes, after reading your post, I realised that maybe I could let the repo be and update it when I got the time (like yesterday). [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 14:42, 29 January 2015 (UTC)<br />
:::: Thanks a lot. I think maintain a repo with OpenRC is a good idea. With this, we will attrack more people --[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:35, 30 January 2015 (UTC)<br />
<br />
== Quick migration from systemd ==<br />
<br />
Hey [[User:Alad|Alad]],<br />
<br />
Some of the stuff in [[OpenRC#Quick_migration_from_systemd]] is unique too, like how to reboot after removing systemd, preserving the daemons used with systemd, etc..<br />
<br />
Do you think we can accommodate it somehow?<br />
<br />
Also maybe it makes sense to have a list of what to do after removing systemd, which could link to headings under the [[Init]] page.<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 12:10, 6 March 2015 (UTC)<br />
<br />
:A section with easy to follow steps is useful, however redundant and overlapping. True, many parts can be found in other wiki articles, but very few articles can be truly original anyway.<br />
:Moreover, unofficial repos are used in several pages of our wiki (e.g. [[AMD_Catalyst#Installing_from_the_unofficial_repository]], [[VirtualBox#Extension_pack]]) and I've been dilligently maintaining [pfkernel] since 2011; it might not be a very popular one but it's not a nova either. [[Yaourt]] is clearly suggested as an alternative way too.<br />
:[[User:Alad|Alad]], do you think it would be better to move it to the end of [[OpenRC]], as a summary perhaps of the entire article? -- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 12:21, 6 March 2015 (UTC)<br />
<br />
::Here's some steps (don't have the time to implement them):<br />
::#[[Yaourt]] should not be mentioned outside [[Yaourt]] itself, as users are expected to use and understand ''makepkg''. It is customary to link to the [[AUR]] article instead.<br />
::#I would mention the repo in [[OpenRC#artoo's way]].<br />
::#Removing systemd is an optional but highly invasive step; it is however handled in [[Init#Replacing_the_systemd_package]] and to some extent in [[eudev]]. sysrq steps could be merged. I don't see the actual benefit of "Remove stystemd cruft", and besides, the users are part of {{Pkg|filesystem}}.<br />
::#{{ic|systemctl list units | ...}} is more an installation, rather than troubleshooting step, so this could be left here.<br />
::#ConsoleKit is in no way "mandatory" for desktop users; see [[Init#Group_permissions]] (the usermod command with common groups could be merged there). Related packages like {{AUR|upower-pm-utils}} could be mentioned in [[Init]] as well (I've thought on a "power management" section).<br />
::-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 19:24, 6 March 2015 (UTC)<br />
<br />
:::#[[Yaourt]] section removed.<br />
:::#Unofficial repos moved to [[OpenRC#artoo's way]].<br />
:::#I agree about the invasiveness, but it can't be helped; eudev conflicts with systemd and without udev there's no hotplugging. Since it's a default in systemd it should also be so in openrc...<br />
:::#I also agree about the systemd-users cruft, it's totally indifferent whether it stays or goes. Removed.<br />
:::#Re-worded consolekit.<br />
:::#To-do: figure out how to merge consolekit, upower, permissions and SysRq steps. My intention is to keep all steps in one place for easier reference, instead of scattering them across different (albeit more relevant) articles. What about keeping them as steps here and adding pertinent information to its respective wiki page?<br />
:::-- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 22:14, 6 March 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=364230Talk:OpenRC2015-03-06T22:14:08Z<p>Nous: /* Quick migration from systemd */</p>
<hr />
<div>== Alternative way to install OpenRC and eudev (artoo's way) ==<br />
<br />
Instead of the AUR, one can simply build from [https://github.com/udeved/pkgbuilds artoo's git repo], add all the packages to a local repo, and install from that.<br />
<br />
Steps include:<br />
<br />
# One time<br />
mkdir -p ~/builds && cd ~/builds<br />
git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
<br />
# To keep up to date<br />
cd ~/builds/openrc-eudev<br />
git pull<br />
cd sysvinit && makepkg -s<br />
cd ..<br />
cd openrc-core && makepkg -d # to ignore sysvinit dependency<br />
cd ..<br />
cd openrc-base && makepkg -s<br />
cd ..<br />
cd openrc-desktop && makepkg -s<br />
cd ..<br />
cd polkit-consolekit && makepkg -s<br />
cd ..<br />
cd consolekit && makepkg -s<br />
cd ..<br />
cd eudev && makepkg -s<br />
cd ..<br />
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency<br />
cd ..<br />
cd upower-pm-utils && makepkg -d<br />
cd ..<br />
<br />
# Copying built packages in one place<br />
mkdir -p ~/builds/openrc-eudev/packages<br />
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages<br />
<br />
This probably takes care of the base. The built packages could be added to a [[Pacman_Tips#Custom_local_repository | pacman local repo]].<br />
<br />
After that the built packages could be installed as:<br />
<br />
sudo pacman -S openrc-base<br />
sudo pacman -S openrc-desktop<br />
sudo pacman -S eudev-base<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:Here's a "slightly" more complex script to automate this:<br />
<br />
{{bc|<nowiki><br />
#/usr/bin/env bash<br />
<br />
[[ -d openrc-eudev ]] || git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
cd openrc-eudev || exit 1<br />
<br />
_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)<br />
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)<br />
_fail() { echo "$i failed to build." > ../fail.log; }<br />
<br />
for i in "${_dep[@]}"; do<br />
(cd "$i" && { makepkg -sr || _fail; })<br />
done<br />
<br />
for i in "${_nodep[@]}"; do<br />
(cd "$i" && { makepkg -d || _fail; })<br />
done<br />
<br />
mkdir -p packages && cp */*.pkg.tar.xz packages/<br />
</nowiki>}}<br />
<br />
:-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 13:30, 28 January 2015 (UTC)<br />
<br />
:: Interesting script, I did not know about ''pushd'' and ''popd'', thx. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:::Yep, and edited to remove it. :P -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 20:52, 23 February 2015 (UTC)<br />
<br />
== Clarification ==<br />
<br />
In<br />
:Here the main package is openrc-core (and corresponding set of scripts belonging to the openrc-base group). <br />
it's needed a clarification: it implies that we have to install openrc-core only? openrc-core plus openrc-base? Is the installation of openrc-base optional? If we install openrc-base, then we also install openrc-core?<br />
<br />
Please clarify it. Overall for people installing it from AUR.--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 17:52, 24 January 2015 (UTC)<br />
<br />
:: openrc core + openrc base (openrc-core is a dependency of openrc-base), I will clarify that point [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 03:39, 26 January 2015 (UTC)<br />
::: Thanks--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 07:59, 26 January 2015 (UTC)<br />
<br />
== Why delete webpage and repo ==<br />
<br />
Hi,<br />
<br />
Why do you delete tips and tricks? Why it's not available?--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 15:55, 27 January 2015 (UTC)<br />
<br />
: Hi Xan, I felt I was unable to keep the repo up to date due to increased efforts, but I will see if I can bring it back, with perhaps less effort from my side. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 16:12, 27 January 2015 (UTC)<br />
:: But it works for me now. I've just updated my packages right now (openrc 0.13.8).--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:58, 29 January 2015 (UTC)<br />
::: Yes, after reading your post, I realised that maybe I could let the repo be and update it when I got the time (like yesterday). [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 14:42, 29 January 2015 (UTC)<br />
:::: Thanks a lot. I think maintain a repo with OpenRC is a good idea. With this, we will attrack more people --[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:35, 30 January 2015 (UTC)<br />
<br />
== Quick migration from systemd ==<br />
<br />
Hey [[User:Alad|Alad]],<br />
<br />
Some of the stuff in [[OpenRC#Quick_migration_from_systemd]] is unique too, like how to reboot after removing systemd, preserving the daemons used with systemd, etc..<br />
<br />
Do you think we can accommodate it somehow?<br />
<br />
Also maybe it makes sense to have a list of what to do after removing systemd, which could link to headings under the [[Init]] page.<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 12:10, 6 March 2015 (UTC)<br />
<br />
:A section with easy to follow steps is useful, however redundant and overlapping. True, many parts can be found in other wiki articles, but very few articles can be truly original anyway.<br />
:Moreover, unofficial repos are used in several pages of our wiki (e.g. [[AMD_Catalyst#Installing_from_the_unofficial_repository]], [[VirtualBox#Extension_pack]]) and I've been dilligently maintaining [pfkernel] since 2011; it might not be a very popular one but it's not a nova either. [[Yaourt]] is clearly suggested as an alternative way too.<br />
:[[User:Alad|Alad]], do you think it would be better to move it to the end of [[OpenRC]], as a summary perhaps of the entire article? -- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 12:21, 6 March 2015 (UTC)<br />
<br />
::Here's some steps (don't have the time to implement them):<br />
::#[[Yaourt]] should not be mentioned outside [[Yaourt]] itself, as users are expected to use and understand ''makepkg''. It is customary to link to the [[AUR]] article instead.<br />
::#I would mention the repo in [[OpenRC#artoo's way]].<br />
::#Removing systemd is an optional but highly invasive step; it is however handled in [[Init#Replacing_the_systemd_package]] and to some extent in [[eudev]]. sysrq steps could be merged. I don't see the actual benefit of "Remove stystemd cruft", and besides, the users are part of {{Pkg|filesystem}}.<br />
::#{{ic|systemctl list units | ...}} is more an installation, rather than troubleshooting step, so this could be left here.<br />
::#ConsoleKit is in no way "mandatory" for desktop users; see [[Init#Group_permissions]] (the usermod command with common groups could be merged there). Related packages like {{AUR|upower-pm-utils}} could be mentioned in [[Init]] as well (I've thought on a "power management" section).<br />
::-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 19:24, 6 March 2015 (UTC)<br />
<br />
:::#[[Yaourt]] section removed.<br />
:::#Unofficial repos moved to [[OpenRC#artoo's way]].<br />
:::#I agree about the invasiveness, but it can't be helped; eudev conflicts with systemd and without udev there's no hotplugging. Since it's a default in systemd it should also be so in openrc...<br />
:::#I also agree about the systemd-users cruft, it's totally indifferent whether it stays or goes. Removed.<br />
:::#Re-worded consolekit.<br />
:::#To-do: figure out how to merge consolekit, upower, permissions and SysRq steps. My intention is to keep all steps in one place for easier reference, instead of scattering them across different (albeit more relevant) articles. What about keeping them as steps here and adding pertinent information to its respective wiki page?<br />
[[User:Nous|Nous]] ([[User talk:Nous|talk]]) 22:14, 6 March 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=364229Talk:OpenRC2015-03-06T22:13:46Z<p>Nous: /* Quick migration from systemd */</p>
<hr />
<div>== Alternative way to install OpenRC and eudev (artoo's way) ==<br />
<br />
Instead of the AUR, one can simply build from [https://github.com/udeved/pkgbuilds artoo's git repo], add all the packages to a local repo, and install from that.<br />
<br />
Steps include:<br />
<br />
# One time<br />
mkdir -p ~/builds && cd ~/builds<br />
git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
<br />
# To keep up to date<br />
cd ~/builds/openrc-eudev<br />
git pull<br />
cd sysvinit && makepkg -s<br />
cd ..<br />
cd openrc-core && makepkg -d # to ignore sysvinit dependency<br />
cd ..<br />
cd openrc-base && makepkg -s<br />
cd ..<br />
cd openrc-desktop && makepkg -s<br />
cd ..<br />
cd polkit-consolekit && makepkg -s<br />
cd ..<br />
cd consolekit && makepkg -s<br />
cd ..<br />
cd eudev && makepkg -s<br />
cd ..<br />
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency<br />
cd ..<br />
cd upower-pm-utils && makepkg -d<br />
cd ..<br />
<br />
# Copying built packages in one place<br />
mkdir -p ~/builds/openrc-eudev/packages<br />
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages<br />
<br />
This probably takes care of the base. The built packages could be added to a [[Pacman_Tips#Custom_local_repository | pacman local repo]].<br />
<br />
After that the built packages could be installed as:<br />
<br />
sudo pacman -S openrc-base<br />
sudo pacman -S openrc-desktop<br />
sudo pacman -S eudev-base<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:Here's a "slightly" more complex script to automate this:<br />
<br />
{{bc|<nowiki><br />
#/usr/bin/env bash<br />
<br />
[[ -d openrc-eudev ]] || git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
cd openrc-eudev || exit 1<br />
<br />
_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)<br />
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)<br />
_fail() { echo "$i failed to build." > ../fail.log; }<br />
<br />
for i in "${_dep[@]}"; do<br />
(cd "$i" && { makepkg -sr || _fail; })<br />
done<br />
<br />
for i in "${_nodep[@]}"; do<br />
(cd "$i" && { makepkg -d || _fail; })<br />
done<br />
<br />
mkdir -p packages && cp */*.pkg.tar.xz packages/<br />
</nowiki>}}<br />
<br />
:-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 13:30, 28 January 2015 (UTC)<br />
<br />
:: Interesting script, I did not know about ''pushd'' and ''popd'', thx. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:::Yep, and edited to remove it. :P -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 20:52, 23 February 2015 (UTC)<br />
<br />
== Clarification ==<br />
<br />
In<br />
:Here the main package is openrc-core (and corresponding set of scripts belonging to the openrc-base group). <br />
it's needed a clarification: it implies that we have to install openrc-core only? openrc-core plus openrc-base? Is the installation of openrc-base optional? If we install openrc-base, then we also install openrc-core?<br />
<br />
Please clarify it. Overall for people installing it from AUR.--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 17:52, 24 January 2015 (UTC)<br />
<br />
:: openrc core + openrc base (openrc-core is a dependency of openrc-base), I will clarify that point [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 03:39, 26 January 2015 (UTC)<br />
::: Thanks--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 07:59, 26 January 2015 (UTC)<br />
<br />
== Why delete webpage and repo ==<br />
<br />
Hi,<br />
<br />
Why do you delete tips and tricks? Why it's not available?--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 15:55, 27 January 2015 (UTC)<br />
<br />
: Hi Xan, I felt I was unable to keep the repo up to date due to increased efforts, but I will see if I can bring it back, with perhaps less effort from my side. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 16:12, 27 January 2015 (UTC)<br />
:: But it works for me now. I've just updated my packages right now (openrc 0.13.8).--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:58, 29 January 2015 (UTC)<br />
::: Yes, after reading your post, I realised that maybe I could let the repo be and update it when I got the time (like yesterday). [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 14:42, 29 January 2015 (UTC)<br />
:::: Thanks a lot. I think maintain a repo with OpenRC is a good idea. With this, we will attrack more people --[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:35, 30 January 2015 (UTC)<br />
<br />
== Quick migration from systemd ==<br />
<br />
Hey [[User:Alad|Alad]],<br />
<br />
Some of the stuff in [[OpenRC#Quick_migration_from_systemd]] is unique too, like how to reboot after removing systemd, preserving the daemons used with systemd, etc..<br />
<br />
Do you think we can accommodate it somehow?<br />
<br />
Also maybe it makes sense to have a list of what to do after removing systemd, which could link to headings under the [[Init]] page.<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 12:10, 6 March 2015 (UTC)<br />
<br />
:A section with easy to follow steps is useful, however redundant and overlapping. True, many parts can be found in other wiki articles, but very few articles can be truly original anyway.<br />
:Moreover, unofficial repos are used in several pages of our wiki (e.g. [[AMD_Catalyst#Installing_from_the_unofficial_repository]], [[VirtualBox#Extension_pack]]) and I've been dilligently maintaining [pfkernel] since 2011; it might not be a very popular one but it's not a nova either. [[Yaourt]] is clearly suggested as an alternative way too.<br />
:[[User:Alad|Alad]], do you think it would be better to move it to the end of [[OpenRC]], as a summary perhaps of the entire article? -- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 12:21, 6 March 2015 (UTC)<br />
<br />
::Here's some steps (don't have the time to implement them):<br />
::#[[Yaourt]] should not be mentioned outside [[Yaourt]] itself, as users are expected to use and understand ''makepkg''. It is customary to link to the [[AUR]] article instead.<br />
::#I would mention the repo in [[OpenRC#artoo's way]].<br />
::#Removing systemd is an optional but highly invasive step; it is however handled in [[Init#Replacing_the_systemd_package]] and to some extent in [[eudev]]. sysrq steps could be merged. I don't see the actual benefit of "Remove stystemd cruft", and besides, the users are part of {{Pkg|filesystem}}.<br />
::#{{ic|systemctl list units | ...}} is more an installation, rather than troubleshooting step, so this could be left here.<br />
::#ConsoleKit is in no way "mandatory" for desktop users; see [[Init#Group_permissions]] (the usermod command with common groups could be merged there). Related packages like {{AUR|upower-pm-utils}} could be mentioned in [[Init]] as well (I've thought on a "power management" section).<br />
::-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 19:24, 6 March 2015 (UTC)<br />
<br />
:::#[[Yaourt]] section removed.<br />
:::#Unofficial repos moved to [[OpenRC#artoo's way]].<br />
:::#I agree about the invasiveness, but it can't be helped; eudev conflicts with systemd and without udev there's no hotplugging. Since it's a default in systemd it should also be so in openrc...<br />
:::#I also agree about the systemd-users cruft, it's totally indifferent whether it stays or goes. Removed.<br />
:::#Re-worded consolekit.<br />
:::#To-do: figure out how to merge consolekit, upower, permissions and SysRq steps. My intention is to keep all steps in one place for easier reference, instead of scattering them across different (albeit more relevant) articles. What about keeping them as steps here and adding pertinent information to its respective wiki page?</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364224OpenRC2015-03-06T20:54:35Z<p>Nous: /* artoo's way */ Move unofficial repo in artoo's method</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
Precompiled packages from the github sources are hosted in the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
TL;DR: This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow.<br />
<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository] to {{ic|/etc/pacman.conf}} and refresh the package database with {{ic|pacman -Sy}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
(This will also pull {{ic|sysvinit}}. {{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages (mandatory for desktop users; do install): {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
* Add your users to the groups you want them having access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, don't add the [pfkernel] repo to {{ic|/etc/pacman.conf}} and replace above {{ic|pacman -S}} commands with {{ic|yaourt -Sa}}. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
<br />
* Keep reading for additional configuration steps.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364223OpenRC2015-03-06T20:45:28Z<p>Nous: /* Mate */ mdm quirk</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
=== Quick migration from {{ic|systemd}} ===<br />
<br />
{{Deletion|This is completely out of scope for this article, and most important steps are already covered in [[Init]]. There's also the subjective steps, mandatory use of an unoffical repo, and poor writing style.}}<br />
<br />
TL;DR: This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow.<br />
<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository] to {{ic|/etc/pacman.conf}} and refresh the package database with {{ic|pacman -Sy}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
(This will also pull {{ic|sysvinit}}. {{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages (mandatory for desktop users; do install): {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
* Add your users to the groups you want them having access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, don't add the [pfkernel] repo to {{ic|/etc/pacman.conf}} and replace above {{ic|pacman -S}} commands with {{ic|yaourt -Sa}}. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
<br />
* Keep reading for additional configuration steps.<br />
<br />
=== Post Installation ===<br />
<br />
See [[Init#Troubleshooting]].<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]]. If you use {{AUR|mdm-display-manager}} as a login manager and have trouble logging in, edit {{ic|/etc/pam.d/mdm}}, comment out {{ic|session optional pam_systemd.so}} and restart {{ic|mdm}}. Additionally append {{ic|session optional pam_ck_connector.so nox11}} if you have {{AUR|consolekit}} installed.<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower}} is available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=Talk:OpenRC&diff=364176Talk:OpenRC2015-03-06T12:21:41Z<p>Nous: /* Quick migration from systemd */</p>
<hr />
<div>== Alternative way to install OpenRC and eudev (artoo's way) ==<br />
<br />
Instead of the AUR, one can simply build from [https://github.com/udeved/pkgbuilds artoo's git repo], add all the packages to a local repo, and install from that.<br />
<br />
Steps include:<br />
<br />
# One time<br />
mkdir -p ~/builds && cd ~/builds<br />
git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
<br />
# To keep up to date<br />
cd ~/builds/openrc-eudev<br />
git pull<br />
cd sysvinit && makepkg -s<br />
cd ..<br />
cd openrc-core && makepkg -d # to ignore sysvinit dependency<br />
cd ..<br />
cd openrc-base && makepkg -s<br />
cd ..<br />
cd openrc-desktop && makepkg -s<br />
cd ..<br />
cd polkit-consolekit && makepkg -s<br />
cd ..<br />
cd consolekit && makepkg -s<br />
cd ..<br />
cd eudev && makepkg -s<br />
cd ..<br />
cd eudev-systemdcompat && makepkg -d # to ignore eudev dependency<br />
cd ..<br />
cd upower-pm-utils && makepkg -d<br />
cd ..<br />
<br />
# Copying built packages in one place<br />
mkdir -p ~/builds/openrc-eudev/packages<br />
cp ~/builds/openrc-eudev/*/*.pkg.tar.xz ~/builds/openrc-eudev/packages<br />
<br />
This probably takes care of the base. The built packages could be added to a [[Pacman_Tips#Custom_local_repository | pacman local repo]].<br />
<br />
After that the built packages could be installed as:<br />
<br />
sudo pacman -S openrc-base<br />
sudo pacman -S openrc-desktop<br />
sudo pacman -S eudev-base<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:Here's a "slightly" more complex script to automate this:<br />
<br />
{{bc|<nowiki><br />
#/usr/bin/env bash<br />
<br />
[[ -d openrc-eudev ]] || git clone https://github.com/udeved/pkgbuilds openrc-eudev<br />
cd openrc-eudev || exit 1<br />
<br />
_nodep=(openrc-core eudev-systemdcompat upower-pm-utils)<br />
_dep=(sysvinit openrc-base openrc-desktop polkit-consolekit consolekit eudev)<br />
_fail() { echo "$i failed to build." > ../fail.log; }<br />
<br />
for i in "${_dep[@]}"; do<br />
(cd "$i" && { makepkg -sr || _fail; })<br />
done<br />
<br />
for i in "${_nodep[@]}"; do<br />
(cd "$i" && { makepkg -d || _fail; })<br />
done<br />
<br />
mkdir -p packages && cp */*.pkg.tar.xz packages/<br />
</nowiki>}}<br />
<br />
:-- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 13:30, 28 January 2015 (UTC)<br />
<br />
:: Interesting script, I did not know about ''pushd'' and ''popd'', thx. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 17:05, 28 January 2015 (UTC)<br />
<br />
:::Yep, and edited to remove it. :P -- [[User:Alad|Alad]] ([[User talk:Alad|talk]]) 20:52, 23 February 2015 (UTC)<br />
<br />
== Clarification ==<br />
<br />
In<br />
:Here the main package is openrc-core (and corresponding set of scripts belonging to the openrc-base group). <br />
it's needed a clarification: it implies that we have to install openrc-core only? openrc-core plus openrc-base? Is the installation of openrc-base optional? If we install openrc-base, then we also install openrc-core?<br />
<br />
Please clarify it. Overall for people installing it from AUR.--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 17:52, 24 January 2015 (UTC)<br />
<br />
:: openrc core + openrc base (openrc-core is a dependency of openrc-base), I will clarify that point [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 03:39, 26 January 2015 (UTC)<br />
::: Thanks--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 07:59, 26 January 2015 (UTC)<br />
<br />
== Why delete webpage and repo ==<br />
<br />
Hi,<br />
<br />
Why do you delete tips and tricks? Why it's not available?--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 15:55, 27 January 2015 (UTC)<br />
<br />
: Hi Xan, I felt I was unable to keep the repo up to date due to increased efforts, but I will see if I can bring it back, with perhaps less effort from my side. [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 16:12, 27 January 2015 (UTC)<br />
:: But it works for me now. I've just updated my packages right now (openrc 0.13.8).--[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:58, 29 January 2015 (UTC)<br />
::: Yes, after reading your post, I realised that maybe I could let the repo be and update it when I got the time (like yesterday). [[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 14:42, 29 January 2015 (UTC)<br />
:::: Thanks a lot. I think maintain a repo with OpenRC is a good idea. With this, we will attrack more people --[[User:Xan|Xan]] ([[User talk:Xan|talk]]) 08:35, 30 January 2015 (UTC)<br />
<br />
== Quick migration from systemd ==<br />
<br />
Hey [[User:Alad|Alad]],<br />
<br />
Some of the stuff in [[OpenRC#Quick_migration_from_systemd]] is unique too, like how to reboot after removing systemd, preserving the daemons used with systemd, etc..<br />
<br />
Do you think we can accommodate it somehow?<br />
<br />
Also maybe it makes sense to have a list of what to do after removing systemd, which could link to headings under the [[Init]] page.<br />
<br />
[[User:Aaditya|Aaditya]] ([[User talk:Aaditya|talk]]) 12:10, 6 March 2015 (UTC)<br />
<br />
:A section with easy to follow steps is useful, however redundant and overlapping. True, many parts can be found in other wiki articles, but very few articles can be truly original anyway.<br />
:Moreover, unofficial repos are used in several pages of our wiki (e.g. [[AMD_Catalyst#Installing_from_the_unofficial_repository]], [[VirtualBox#Extension_pack]]) and I've been dilligently maintaining [pfkernel] since 2011; it might not be a very popular one but it's not a nova either. [[Yaourt]] is clearly suggested as an alternative way too.<br />
:[[User:Alad|Alad]], do you think it would be better to move it to the end of [[OpenRC]], as a summary perhaps of the entire article? -- [[User:Nous|Nous]] ([[User talk:Nous|talk]]) 12:21, 6 March 2015 (UTC)</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364099OpenRC2015-03-05T18:29:25Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
TL;DR: This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow.<br />
<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository] to {{ic|/etc/pacman.conf}} and refresh the package database with {{ic|pacman -Sy}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
(This will also pull {{ic|sysvinit}}. {{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages (mandatory for desktop users; do install): {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
* Add your users to the groups you want them having access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}}<br />
<br />
(USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan. You should check first which groups USER already belongs to: {{ic|id USER}}.<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, don't add the [pfkernel] repo to {{ic|/etc/pacman.conf}} and replace above {{ic|pacman -S}} commands with {{ic|yaourt -Sa}}. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
<br />
* Keep reading for additional configuration steps.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364098OpenRC2015-03-05T18:25:16Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
TL;DR: This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow.<br />
<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository] to {{ic|/etc/pacman.conf}} and refresh the package database with {{ic|pacman -Sy}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
(This will also pull {{ic|sysvinit}}. {{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages (mandatory for desktop users; do install): {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
* Add your users to the groups you want them having access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}} (USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan)<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, don't add the [pfkernel] repo to {{ic|/etc/pacman.conf}} and replace above {{ic|pacman -S}} commands with {{ic|yaourt -Sa}}. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff). Your system should boot into the login prompt or load your display manager without problem.<br />
<br />
* Keep reading for additional configuration steps.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364097OpenRC2015-03-05T18:22:50Z<p>Nous: Move migration from systemd section to top</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
TL;DR: This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''artoo's''' method. However, you are ''strongly advised'' to read the rest of the wiki page and make an educated decision on which method you should follow.<br />
<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial <nowiki>[pfkernel]</nowiki> repository] to {{ic|/etc/pacman.conf}} and refresh the package database with {{ic|pacman -Sy}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
(This will also pull {{ic|sysvinit}}. {{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages (mandatory for desktop users; do install): {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
* Add your users to the groups you want them having access to:<br />
{{ic|usermod -a -G video,audio,power,disk,storage,optical,lp,scanner <USER>}} (USER can play video, audio, shutdown/reboot/hibernate, access non-system partitions, automount removable or non-persistent storage devices, burn DVDs, print and scan)<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, don't add the [pfkernel] repo to {{ic|/etc/pacman.conf}} and replace above {{ic|pacman -S}} commands with {{ic|yaourt -Sa}}. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff).<br />
<br />
* Keep reading for additional configuration steps.<br />
<br />
== Installation ==<br />
<br />
OpenRC and accompanying packages are available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364096OpenRC2015-03-05T18:02:06Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''rtoo's''' method.<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial pfkernel repository] to {{ic|/etc/pacman.conf}} and refresh the package database with {{ic|pacman -Sy}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
({{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
* Add your users to the groups you want them having access to: {{ic|usermod -a -G video,audio,power,storage <USER>}} (USER can play video, audio, shutdown/reboot/hibernate and automount removable or non-persistent storage devices)<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, replace above {{ic|pacman -S}} commands with {{ic|yaourt -Sa}}. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364092OpenRC2015-03-05T17:40:04Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''rtoo's''' method.<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial pfkernel repository] to {{ic|/etc/pacman.conf}} and refresh the package database with {{ic|pacman -Sy}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
({{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, replace above {{ic|pacman -S}} commands with {{ic|yaourt -Sa}}. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364091OpenRC2015-03-05T17:38:03Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''rtoo's''' method.<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial pfkernel repository] to {{ic|/etc/pacman.conf}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
({{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd)<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, replace above '{{ic|pacman -S}}' commands with '{{ic|yaourt -Sa}}'. Since yaourt can't build packages as root anymore, you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364090OpenRC2015-03-05T17:35:42Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''rtoo's''' method.<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial pfkernel repository] to {{ic|/etc/pacman.conf}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
{{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd.<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
<br />
If you prefer to perform the installation from the [[AUR]] instead of the [pfkernel] repository, replace above '{{ic|pacman -S}}' commands with '{{ic|yaourt -Sa}}'. However, yaourt can't build packages as root anymore; therefore you must run it as a regular user.<br />
<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364089OpenRC2015-03-05T17:33:17Z<p>Nous: /* Quick migration from {{ic|systemd}} */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''rtoo's''' method.<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial pfkernel repository] to {{ic|/etc/pacman.conf}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}}. Answer 'yes' to all '''pacman''' questions.)<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
{{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd.<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm') and run {{ic|rc-update add xdm default}}.<br />
* If you prefer to perform the installation from the [[AUR]], replace above '{{ic|pacman -S}}' commands with '{{ic|yaourt -Sa}}'. However, yaourt can't build packages as root anymore; therefore you must run it as a regular user.<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364078OpenRC2015-03-05T15:18:20Z<p>Nous: Quick migration from systemd</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== Quick migration from {{ic|systemd}} ==<br />
<br />
This is a step-by-step guide for a quick migration from systemd, which should be quite fail-safe. It follows the '''rtoo's''' method.<br />
* Append the [https://wiki.archlinux.org/index.php/Unofficial_user_repositories#pfkernel unofficial pfkernel repository] to {{ic|/etc/pacman.conf}}<br />
* Save a list of your running daemons:<br />
systemctl list-units | grep service | grep running | awk '{print $1}' > daemons.list<br />
(Note: all commands below must be executed as root or with {{ic|sudo}})<br />
* Remove systemd and family: {{ic|pacman -Rdd systemd libsystemd}}<br />
* Install openrc and family: {{ic|pacman -S openrc-core eudev eudev-openrc eudev-systemdcompat}}<br />
{{ic|eudev-systemdcompat}} provides {{ic|systemd}} and {{ic|libsystemd}} dependencies for packages that are linked against systemd.<br />
* Remove some systemd cruft: {{ic|for user in systemd-journal systemd-journal-gateway systemd-timesync systemd-network systemd-bus-proxy systemd-journal-remote systemd-journal-upload; do userdel $user; done}}<br />
* Optional packages: {{ic|pacman -S consolekit polkit-consolekit upower-pm-utils udisks2-nosystemd}}<br />
* Install the openrc scripts for your daemons from the previous step: {{ic|pacman -S acpid-openrc alsa-utils-openrc autofs-openrc consolekit consolekit-openrc cronie-openrc dbus-openrc cups-openrc displaymanager-openrc fuse-openrc haveged-openrc hdparm-openrc openssh-openrc samba-openrc syslog-ng-openrc avahi-openrc}} (edit accordingly)<br />
To enable {{ic|sshd}}, run {{ic|rc-update add sshd default}}. Do this for each daemon you want.<br />
* Edit {{ic|/etc/rc.conf}} to your liking and {{ic|/etc/conf.d/hostname}} to set your hostname. If you want to boot into X, edit /etc/conf.d/xdm and replace 'xdm' with your display manager (e.g. 'lxdm' or 'mdm')<br />
* If you prefer to perform the installation from the [[AUR]], replace above '{{ic|pacman -S}}' commands with '{{ic|yaourt -Sa}}'. However, yaourt can't build packages as root anymore; therefore you must run it as a regular user.<br />
* You should now reboot. However, since '''systemd''' is no longer present, this is not possible from the command line. Run {{ic|sync}}, {{ic|sysctl kernel.sysrq<nowiki>=</nowiki>1}} and press {{ic|Alt-SysRq-S}}, {{ic|Alt-SysRq-U}} and {{ic|Alt-SysRq-B}} to reboot (in some machines reboot is not possible with the latter, so you must press {{ic|Alt-SysRq-O}} to poweroff).<br />
<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=364075OpenRC2015-03-05T13:57:42Z<p>Nous: Resolve freezes with ATI Catalyst</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Your net devices will follow the pre-systemd pattern: from example {{ic|wlp1s0}} should be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Your files in {{ic|/etc/sysctl.d/}} might disappear after removing the {{ic|systemd}} package. OpenRC reads {{ic|/etc/sysctl.conf}}.<br />
<br />
If you own an ATI Radeon card and experience freezes with X (blank screen, non-resposive keyboard etc), appending {{ic|nomodeset}} to the kernel boot command line should help. This is especially true with the closed source driver ({{AUR|catalyst}}).<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=363064OpenRC2015-02-28T14:17:11Z<p>Nous: /* Mate */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Probably your net devices will be renamed: from example {{ic|wlp1s0}} could be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Probably, you experiment that the files in {{ic|/etc/sysctl.d/}} have been disappeared after removing {{ic|systemd}} package.<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=363063OpenRC2015-02-28T14:16:33Z<p>Nous: /* Mate */</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR||mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Probably your net devices will be renamed: from example {{ic|wlp1s0}} could be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Probably, you experiment that the files in {{ic|/etc/sysctl.d/}} have been disappeared after removing {{ic|systemd}} package.<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=OpenRC&diff=363062OpenRC2015-02-28T14:16:09Z<p>Nous: /* Using OpenRC with a Desktop Environment */ Add Mate</p>
<hr />
<div>[[Category:Boot process]]<br />
[[ja:OpenRC]]<br />
{{Related articles start}}<br />
{{Related|init}}<br />
{{Related|init Rosetta}}<br />
{{Related articles end}}<br />
<br />
{{Note|Arch uses [[systemd]] by default. If you use OpenRC, please mention so while asking for help.}}<br />
<br />
[https://wiki.gentoo.org/wiki/OpenRC OpenRC] is an rc system maintained by the Gentoo developers. OpenRC is dependency based and works with the system provided init program, normally sysvinit. It is not a replacement for sysvinit.<br />
<br />
== Installation ==<br />
<br />
OpenRC is available in the [[AUR]].<br />
<br />
=== apg's way ===<br />
<br />
You can choose to install either {{AUR|openrc}} or {{AUR|openrc-git}}. You will also need to install {{AUR|openrc-arch-services-git}} (provides service files for use with openrc on arch) and {{AUR|openrc-sysvinit}} (a slightly patched version of traditional sysvinit). For the sake of compatibility with initscripts, {{AUR|openrc-sysvinit}} installs the sysvinit init binary as {{ic|/usr/bin/init-openrc}}.<br />
<br />
The packages will be installed under {{Ic|/etc/openrc}} instead of the default location of {{Ic|/etc}}, so that users can switch to initscripts or [[systemd]] when desired.<br />
<br />
=== artoo's way ===<br />
<br />
Here you will need to install {{AUR|openrc-core}} and the packages in [https://aur.archlinux.org/packages/?O=0&C=0&SeB=b&K=openrc-base&outdated=&SB=n&SO=a&PP=50&do_Search=Go openrc-base].<br />
<br />
Some other packages of note are {{AUR|displaymanager-openrc}} and {{AUR|alsa-utils-openrc}} (both grouped under the [https://aur.archlinux.org/pkgbase/openrc-desktop/ openrc-desktop] group), and {{AUR|networkmanager-openrc}}.<br />
<br />
For the list of packages, look at the [https://aur.archlinux.org/packages/?O=0&K=openrc openrc] packages maintained by [https://aur.archlinux.org/packages/?O=0&C=0&SeB=m&K=artoo&outdated=&SB=n&SO=a&PP=50&do_Search=Go artoo] in the [[AUR]].<br />
<br />
A summary as well as the source for these package groups can be found at [https://github.com/udeved/pkgbuilds github].<br />
<br />
[[#Using OpenRC with eudev|eudev]] can also be used as udev provider instead of systemd.<br />
<br />
=== Difference between the approaches ===<br />
<br />
'''apg's''' version:<br />
* uses a special directory {{Ic|/etc/openrc}} so that {{AUR|initscripts-fork}} can be used instead of OpenRC.<br />
* uses {{ic|newnet}} for network configuration.<br />
* follows a monolithic pattern, with one package that contains the base openrc system, and another containing the rc scripts<br />
<br />
'''artoo's''' version:<br />
* uses the default {{Ic|/etc}} directory to maintain compatibility with the Gentoo version (thus {{AUR|initscripts-fork}} cannot be used.).<br />
* uses {{ic|netifrc}} for network [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=3 (Gentoo default)].<br />
* are split packages, which are greater in number, but allow more control in modifying the individual components.<br />
<br />
== Configuration ==<br />
<br />
For more information on configuring OpenRC, [http://www.calculate-linux.org/main/en/openrc_manuals man pages] are available; you can also visit the [http://www.gentoo.org/doc/en/openrc-migration.xml gentoo guide] and the [http://wiki.gentoo.org/wiki/OpenRC gentoo wiki].<br />
<br />
See also [[Init#Troubleshooting]].<br />
<br />
=== Booting ===<br />
<br />
==== apg's way ====<br />
<br />
For booting with OpenRC add {{Ic|1=init=/usr/bin/init-openrc}} to the kernel line in your bootloader configuration. If you want to switch back to systemd, change it to {{ic|1=init=/usr/lib/systemd/systemd}}.<br />
<br />
The {{Ic|1=/etc/openrc/conf.d}} directory, and the {{Ic|1=/etc/openrc/rc.d}} file is used for configuration.<br />
<br />
It is worth noting that the udev service is not enabled by default. In order to enable it, do:<br />
<br />
# rc-update add udev sysinit<br />
<br />
==== artoo's way ====<br />
<br />
OpenRC is booted by default.<br />
<br />
To boot with systemd, add {{Ic|1=init=/usr/lib/systemd/systemd}} to the kernel line in your bootloader configuration.<br />
<br />
The files in the {{Ic|1=/etc/conf.d}} directory are used for configuration.<br />
<br />
Here [[udev]] is enabled by default.<br />
<br />
=== Network ===<br />
<br />
See [[Network configuration]] for a detailed look at networking in general.<br />
<br />
==== apg's way ====<br />
<br />
There are multiple ways to get a network up and running. One way is by configuring the {{ic|/etc/openrc/conf.d/network}} file. Both the {{ic|ip}} ({{Pkg|iproute2}}) and the {{ic|ifconfig}} ({{Pkg|net-tools}}) commands are supported. <br />
<br />
Below is an example configuration using {{ic|ip}}.<br />
<br />
{{bc|<br />
<nowiki>ip_eth0="192.168.1.2/24"<br />
defaultiproute="via 192.168.1.1"<br />
ifup_eth0="ip link set \$int mtu 1500"</nowiki>}}<br />
<br />
The network service is added to the boot runlevel by default, so no further action is required.<br />
<br />
You can also use [[NetworkManager]], [[dhcpcd]] or {{AUR|netcfg}} by enabling the respective services.<br />
<br />
==== artoo's way ====<br />
<br />
[[dhcpcd]] is enabled by default.<br />
<br />
For network configuration, look at the {{ic|/etc/conf.d/net}} file. By default it uses netifrc, which defaults to dhcpcd if not specified differently in {{ic|/etc/conf.d/net}}<br />
<br />
The {{AUR|dhcpcd-openrc}} package provides a specific dhcpcd script, not to be confused with netifrc default. It will start {{ic|/etc/init.d/dhcpcd}}<br />
<br />
To use a static route you need to create a symlink of {{ic|net.lo}} that reflects your device's name:<br />
<br />
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0<br />
<br />
See [https://wiki.gentoo.org/wiki/Handbook:X86/Networking/Modular] for details.<br />
<br />
For having a graphical network manager, {{AUR|networkmanager-openrc}} can be installed. Other options are available, like [[connman]] via {{AUR|connman-openrc}}.<br />
<br />
Other option is {{AUR|netcfg}} which mimetizes the [[netctl]] behaviour (see [https://bbs.archlinux.org/viewtopic.php?pid=1489283#p1489283 1] if you want to enable profiles connection on booting - requires {{ic|wpa_actiond}}). You could consult the [https://www.archlinux.org/netcfg/features.html official documentation] or [https://wiki.archlinux.org/index.php?title=Netcfg&oldid=243178 old wiki documentation] (be aware of consulting version later than [https://www.archlinux.org/news/netcfg-282-release/ 2012-05-13])<br />
<br />
=== Logging ===<br />
<br />
==== apg's way ====<br />
<br />
See [[Init#Cron_functionality]].<br />
<br />
==== artoo's way ====<br />
<br />
Different loggers are available, like {{AUR|syslog-ng-openrc}}, {{AUR|metalog-openrc}}, and {{AUR|rsyslog-openrc}}. These loggers may conflict with each other, hence using only a single logger is recommended.<br />
<br />
=== Boot logging ===<br />
<br />
==== apg's way ====<br />
<br />
OpenRC's boot logging is disabled by default. To enable it, uncomment the following line in {{ic|/etc/openrc/rc.conf}}<br />
<br />
#rc_logger="YES"<br />
<br />
==== artoo's way ====<br />
<br />
Boot logging is enabled by default. To disable it, comment out the ''rc_logger="YES"'' line in {{ic|/etc/rc.conf}}<br />
<br />
{{Tip|Boot logs are stored in {{ic|/var/log/rc.log}}}}<br />
<br />
=== Hostname ===<br />
<br />
OpenRC sets the hostname from {{ic|/etc/openrc/conf.d/hostname}} ('''apg's way''') or {{ic|/etc/conf.d/hostname}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
<br />
{{bc|# Set to the hostname of this machine<br />
hostname<nowiki>=</nowiki>"myhostname"}}<br />
<br />
=== Module autoloading ===<br />
<br />
OpenRC does not use /etc/modules-load.d/ folder, instead it uses {{ic|/etc/openrc/conf.d/modules}} ('''apg's''' way) or {{ic|/etc/conf.d/modules}} ('''artoo's''' way).<br />
<br />
It looks like the following:<br />
{{bc|# You should consult your kernel documentation and configuration<br />
# for a list of modules and their options.<br />
<br />
<nowiki>modules="vboxdrv acpi_cpufreq"</nowiki>}}<br />
<br />
=== Locale ===<br />
<br />
Keyboard layout can be configured via {{ic|/etc/conf.d/keymaps}} and {{ic|/etc/conf.d/consolefont}} ('''artoo's''' way). You can also configure the settings through the {{ic|/etc/locale.conf}} file, which is sourced via {{ic|/etc/profile.d/locale.sh}}. <br />
<br />
See [http://wiki.gentoo.org/wiki/Localization/HOWTO#Keyboard_layout_for_the_console] and [[Locale]] for details.<br />
<br />
== Troubleshooting ==<br />
<br />
=== Error while unmounting /tmp ===<br />
<br />
When shutting the system down, you might get an error message such as <br />
<br />
{{bc|* Unmounting /tmp ... <br />
* in use but fuser finds nothing [ !! ]}}<br />
<br />
This can be fixed by adding <br />
no_umounts="/tmp"<br />
<br />
to {{ic|/etc/openrc/conf.d/localmount}}<br />
<br />
{{Note|This problem occurs only if your tmp is mounted as a tmpfs.}}<br />
<br />
=== Disabling IPv6 does not work ===<br />
<br />
If you have OpenRC installed under the {{Ic|/etc/openrc}} sysconf directory.<br />
<br />
One fix for this is to put <br />
# Disable ipv6<br />
net.ipv6.conf.all.disable_ipv6 = 1<br />
in a file (with a .conf extension) under {{Ic|/etc/openrc/sysctl.d}}<br />
<br />
=== During shutdown remounting root as read-only fails ===<br />
<br />
If the above happens, edit the {{ic|/etc/openrc/init.d/mount-ro}} file and put:<br />
telinit u<br />
<br />
after the following line:<br />
# Flush all pending disk writes now<br />
sync; sync<br />
<br />
=== Error about /etc/sysctl.conf not found ===<br />
<br />
It can be created by running as root:<br />
<br />
touch /etc/sysctl.conf<br />
<br />
== Using OpenRC with a Desktop Environment ==<br />
<br />
If using ''OpenRC'' with a desktop environment, {{AUR|consolekit-openrc}} and related [https://aur.archlinux.org/packages/?O=0&K=consolekit consolekit] packages in the AUR may help.<br />
<br />
For more info on consolekit, have a look at the [https://wiki.gentoo.org/wiki/ConsoleKit Gentoo wiki] and the [https://wiki.manjaro.org/index.php?title=Openrc#Using_Consolekit Manjaro wiki].<br />
<br />
=== Xfce ===<br />
<br />
The xfce4-session package has been compiled with logind support; {{AUR|xfce4-session-consolekit}} from the [[AUR]] can be used.<br />
<br />
For a login manager, {{AUR|lxdm-consolekit}} (from the AUR), or [[lightdm]] (from the repos) could be used.<br />
<br />
=== Mate ===<br />
<br />
Install {{AUR|mate-session-manager-upower}} and {{AUR|| mate-power-manager-upower}} from the [[AUR]].<br />
<br />
=== KDE ===<br />
<br />
The kdebase-workspace package needs to be recompiled for use with consolekit ({{AUR|kdebase-workspace-consolekit}} is available from the AUR).<br />
<br />
=== ALSA ===<br />
<br />
You have to enable {{ic|alsa}}: {{ic|rc-update add alsasound default}}<br />
<br />
== Using OpenRC with eudev ==<br />
<br />
With OpenRC being used as init system, the role of systemd is reduced to that of a udev provider, and for compatibility reasons.<br />
<br />
[[eudev]] is a fork of [[udev]] started by the Gentoo project, with the goal of isolation from any particular flavor of system initialization, such as [[systemd]] or [[sysvinit]].<br />
<br />
=== Installation ===<br />
<br />
{{Note|This method may not work with '''apg's''' packages.}}<br />
<br />
{{AUR|eudev}} is available in the [[AUR]]. It basically serves a drop-in replacement for the [[udev]] provided by [[systemd]].<br />
<br />
Three packages are needed in order to install eudev: {{AUR|eudev-systemdcompat}}, {{AUR|eudev}}, and {{AUR|eudev-openrc}}.<br />
<br />
The '''eudev-systemdcompat''' package ''conflicts'' with '''systemd''' and '''libsystemd''', and requires the {{AUR|eudev}} package. {{AUR|upower-pm-utils}} is an optional dependency.<br />
<br />
{{Note|One may not be able to install the eudev packages directly from the AUR due to conflicts when installing; to circumvent it, {{AUR|eudev}} (along with {{AUR|eudev-openrc}}) can be built and added to a [[Pacman tips#Custom_local_repository | local repository]], and then {{AUR|eudev-systemdcompat}} can be built and installed from the AUR using: {{bc|makepkg -di}} ('''-d''' to ignore build dependencies), which pulls in eudev as package dependency. <br />
<br />
After that {{AUR|eudev-openrc}} can be installed from the local repo created earlier.<br />
<br />
{{AUR|upower-pm-utils}} can be installed for suspend / hibernate support.}}<br />
<br />
=== Troubleshooting ===<br />
<br />
If your unmounted partitions are not being displayed, then that is probably due to [[gvfs]] being compiled for systemd; using {{AUR|gvfs-nosystemd}} from the [[AUR]] may fix it (probably not required if using {{AUR|eudev-systemdcompat}}).<br />
<br />
Some packages from the offical repos, like xfce4-power-manager, are compiled with the newer upower; for use with {{AUR|upower-pm-utils}}, they need to be compiled against it ({{AUR|xfce4-power-manager-upower0}} and {{AUR|xfce4-power-manager-pmu}} are available in the AUR).<br />
<br />
Probably your net devices will be renamed: from example {{ic|wlp1s0}} could be renamed to {{ic|wlan0}}. You have to set your net configuration properly.<br />
<br />
Probably, you experiment that the files in {{ic|/etc/sysctl.d/}} have been disappeared after removing {{ic|systemd}} package.<br />
<br />
== See also ==<br />
* [[Wikipedia:OpenRC]]<br />
* [https://wiki.gentoo.org/wiki/OpenRC Gentoo wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=152606 Forum thread about OpenRC in Arch]<br />
* [http://blog.notfoss.com/posts/openrc-on-arch-linux/ Blog: OpenRC on Arch Linux]<br />
* [https://wiki.manjaro.org/index.php?title=OpenRC,_an_alternative_to_systemd Manjaro wiki]</div>Noushttps://wiki.archlinux.org/index.php?title=Linux-pf&diff=362525Linux-pf2015-02-24T09:46:39Z<p>Nous: /* Tips and tricks */ Update dvb.h compilation issue</p>
<hr />
<div>[[Category:Kernel]]<br />
[http://pf.natalenko.name/ Linux-pf] is a kernel package based on the stock -ARCH kernel, patched with a row of significant patches:<br />
* [http://ck-hack.blogspot.com/ The latest Con Kolivas' -ck patchset, including BFS]<br />
* [[TuxOnIce]]<br />
* [http://algo.ing.unimo.it/people/paolo/disk_sched/ BFQ] (as default I/O scheduler)<br />
* [http://kerneldedup.org/projects/uksm/ UKSM]<br />
* [http://aufs.sourceforge.net/ AUFS3]<br />
<br />
== Installation ==<br />
<br />
Install {{AUR|linux-pf}} from the [[AUR]]. A long-term support version of linux-pf is available with {{AUR|linux-pf-lts}}.<br />
<br />
=== From the unofficial repository (recommended) ===<br />
<br />
Precompiled packages, generic and CPU-family optimized are uploaded at the [http://dl.dropbox.com/u/11734958/index.html pfkernel unofficial repository], usually within 6 hours of the AUR update for x86_64 and 12 hours for i686. Append the following to {{ic|/etc/pacman.conf}} to activate the pfkernel repo:<br />
:{{bc|<nowiki><br />
[pfkernel]<br />
# Generic and optimized binaries of the ARCH kernel patched with BFS, TuxOnIce, BFQ, IMQ, Aufs3<br />
# linux-pf, kernel26-pf, gdm-old, nvidia-pf, nvidia-96xx, xchat-greek, arora-git<br />
Server = http://dl.dropbox.com/u/11734958/$arch<br />
SigLevel = Optional<br />
</nowiki>}}<br />
Packages in the unofficial repository are not signed, so you will need to set SigLevel to Optional or Never. Running {{ic|$ pacman -Syyl pfkernel}} will update all repos and show the available packages from pfkernel. Afterwards, just install {{AUR|linux-pf}} {{AUR|linux-pf-headers}} (for generic binaries - platform-specific binaries are also available and will be listed in the output from the aforementioned pacman command), but additional configuration steps must be performed; see the [[#Installation|Installation]] section.<br />
<br />
=== Manual compilation ===<br />
<br />
There's a number of options a user is asked to choose from, should he/she select to compile from the PKGBUILD:<br />
{{bc|<nowiki><br />
==> Hit <Y> to use your running kernel's config<br />
(needs IKCONFIG and IKCONFIG_PROC)<br />
==> Hit <L> to run 'make localmodconfig'<br />
==> Hit <N> (or just <ENTER>) to build an all-inclusive kernel like stock -ARCH<br />
(warning: it can take a looong time)<br />
</nowiki>}}<br />
The <Y> option is for users who have already compiled and are running a custom kernel. The PKGBUILD reads the running kernel's configuration and uses it for the subsequent compilation.<br />
The <L> option tries some kind of autodetection of the user's hardware: it first tries to use the [[modprobed_db]] module database, then falls back to the linux kernel's '''''make localmodconfig''''' functionality. The last option is self-explanatory.<br />
<br />
{{bc|<nowiki><br />
==> Kernel configuration options before build:<br />
<M> make menuconfig (console menu)<br />
<N> make nconfig (newer alternative to menuconfig)<br />
<G> make gconfig (needs gtk)<br />
<X> make xconfig (needs qt)<br />
<O> make oldconfig<br />
<ENTER> to skip configuration and start compiling<br />
</nowiki>}}<br />
Choose one of these to use your favourite user interface for configuring the kernel. Note that the last option might still prompt with unresolved/new configuration options, if you have selected <Y> or <L> in the previous step.<br />
<br />
{{bc|<nowiki><br />
==> An non-generic CPU was selected for this kernel.<br />
==> Hit <G> : to create a generic package named linux-pf<br />
==> Hit <ENTER> : to create a package named after the selected CPU<br />
(e.g. linux-pf-core2 - recommended)<br />
==> This option affects ONLY the package name. Whether or not the<br />
==> kernel is optimized was determined at the previous config step.<br />
</nowiki>}}<br />
If you have selected a specific CPU optimization for your kernel in the previous step, the default action is to append the CPU to the package name. This way, a subsequent package update from the repository will pull the optimized package and not the generic one. This also will help better compatibility with 3rd party precompiled modules (e.g. nvidia-pf), which might break things if loaded on optimized linux-pf kernels.<br />
<br />
==== Install compiled package ====<br />
<br />
After the compilation finishes, an additional ''linux-pf-headers[-cpu]'' package will be created. Don't forget to install it too, if you plan on using additional modules like [[nvidia]] or [[virtualbox]].<br />
<br />
# pacman -U linux-pf-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz linux-pf-headers-core2-3.3.2-1-$CPUTYPE.pkg.tar.xz<br />
<br />
During the kernel installation, [[mkinitcpio]] will be called by the install script to recreate the initramfs.<br />
{{Note|If you make any changes to {{ic|/etc/mkinitcpio.conf}} after the installation, you must run '''''mkinitcpio -p linux-pf''''' to have the initial ramdisk recreated.}}<br />
<br />
== Configuration ==<br />
<br />
Then, you need to add a boot entry in [[Boot Loader#Configuration files|boot loader configuration file]] which points to linux-pf (the following example is from one of the maintainer's boxes):<br />
{{bc|<nowiki><br />
title Linux-pf 3.2<br />
root (hd0,4)<br />
kernel (hd0,0)/vmlinuz-linux-pf root=/dev/disk/by-label/ROOT ro vga=0x318 lapic resume=/dev/disk/by-label/SWAP video=vesafb:ywrap,mtrr:3 fastboot quiet<br />
initrd (hd0,0)/initramfs-linux-pf.img<br />
</nowiki>}}<br />
<br />
If you intend to use TuxOnIce for hibernation, make sure you have added the necessary modules to the MODULES array of {{ic|/etc/mkinitcpio.conf}} and at least the ''resume'' hook to the HOOKS array:<br />
{{bc|<nowiki><br />
MODULES="... lzo tuxonice_compress tuxonice_swap tuxonice_userui ..."<br />
HOOKS="... block userui resume filesystems ..."<br />
</nowiki>}}<br />
In the example above, TuxOnIce is setup to use a swap partition as the suspended image allocator. The ''resume'' hook must be placed before ''filesystems''. Also, a progress indicator is requested with ''userui''. Please read the [[TuxOnIce]] wiki page for more detailed information.<br />
<br />
Last, you must choose whether you want to suspend using [[pm-utils]] or the [[hibernate-script]]. Please, refer to the respective wiki pages for more details. [[TuxOnIce]] offers the option for a text mode or an even nicer [[fbsplash|framebuffer splash]] progress indicator.<br />
<br />
== Tips and tricks ==<br />
<br />
* If you notice disk-related performance problems or occational hickups, it might be an I/O scheduler issue. Try a different one than the linux-pf default (BFQ) by echoing to {{ic|/sys/block/sda/queue/scheduler}} ''cfq'', ''noop'' or ''deadline'': {{ic|# echo noop >| /sys/block/sda/queue/scheduler}}. Note, the aforementioned command only sets the I/O scheduler for the 1st hard drive and additional ''echoes'' will be needed if you have more. If the situation improves, then append "''elevator''='''''cfq'''''" (or '''''noop''''' or '''''deadline''''') to the linux-pf command line in {{ic|/boot/grub/menu.lst}}, to make the change permanent.<br />
* For people who build their own tailored kernels and compilation aborts with with an error about "missing include/config/dvb/*.h files", setting ''[*] Digital TV support'' at ''Device Drivers / <M> Multimedia support'' and leaving everything else out, creates just the necessary dvb.h, which allows the compilation to continue.<br />
<br />
== Forum thread for linux-pf ==<br />
<br />
There's a [https://bbs.archlinux.org/viewtopic.php?id=103462 discussion thread] at the BBS for reporting errors, impressions, ideas and requests.<br />
<br />
== See also ==<br />
<br />
* [https://bitbucket.org/nous/linux-pf/ linux-pf mercurial repository]<br />
* [http://pf.natalenko.name/ Patchset homepage]<br />
* [http://pf.natalenko.name/forum Patchset community forum]<br />
* [http://freecode.com/projects/pf-kernel Patchset changelog]</div>Nous