<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-61185669380314388</id><updated>2011-04-21T18:19:56.304-07:00</updated><category term='review'/><title type='text'>archlinux propaganda</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://archpropaganda.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/61185669380314388/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://archpropaganda.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>propaganda</name><uri>http://www.blogger.com/profile/00820360647932281752</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-61185669380314388.post-2852693169216212961</id><published>2008-07-17T18:15:00.000-07:00</published><updated>2008-07-17T22:33:22.921-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='review'/><title type='text'>Arch linux is good, quite good</title><content type='html'>&lt;p&gt;Most of the times, the linux reviews I read begins with the installation. This is not the case: tipically the time it takes to INSTALL some linux distribution is nothing compared to the time you actually USE your distribution, unless you are a gentoo user, of course.&lt;/p&gt;&lt;p&gt;What is more is that in the Arch reviews I read they tend to post so many pictures of the installation program, it seems they have some sort of ncurses fetish. While I actually enjoy the norton commander blue, I think there is no reason to talk so thoroughly about the installation.&lt;/p&gt;&lt;p&gt;tl;dr If you get stuck there is the guide. If you still can't make it, think about all the people who installed Arch before you and begin to ponder whether it's YOU to be wrong; you'd be surprised.&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;What I would like to talk about is rc.conf.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;The BSD style init&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:78%;"&gt; (whatever the hell it means)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;While it has BSD in the name, it is not necessarily evil. The file rc.conf is a centralized place where most of the basic system configuration is placed.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;I'm talking about this:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;LOCALE="en_EN.utf8"&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;HARDWARECLOCK="localtime"&lt;br /&gt;USEDIRECTISA="no"&lt;br /&gt;TIMEZONE="Europe/London"&lt;br /&gt;KEYMAP="en"&lt;br /&gt;CONSOLEFONT="ter-v16n"&lt;br /&gt;CONSOLEMAP=""&lt;br /&gt;USECOLOR="yes"&lt;br /&gt;MOD_AUTOLOAD="yes"&lt;br /&gt;MODULES=(!8139cp 8139too !pcspkr fuse loop)&lt;br /&gt;USELVM="no"&lt;br /&gt;HOSTNAME="echelon"&lt;br /&gt;eth0="dhcp"&lt;br /&gt;INTERFACES=(eth0)&lt;br /&gt;gateway="default gw 192.168.0.1"&lt;br /&gt;ROUTES=(!gateway)&lt;br /&gt;DAEMONS=(syslog-ng hal network !netfs @crond @alsa !gpm !fam @sensors !kdm)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;Of course the real one is filled with comments which explain all the fields and all the options. As you can see, the daemons to run at boot along with their order is specified here. As you might be thinking, there is no way of having different lists of daemons to run per runlevel. Not that we normal people care, but if you really need this, the feature is just a link &lt;a href="http://wiki.archlinux.org/index.php/Adding_Runlevels"&gt;away&lt;/a&gt;. The kind of solution proposed in the link is is accordance to the &lt;a href="http://wiki.archlinux.org/index.php/The_Arch_Way"&gt;ideas&lt;/a&gt; behind Arch: &lt;em&gt;you are always encouraged to solve your problems and share your solutions, while the distribution itself tries to stay as clean and vanilla as possible&lt;/em&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;And the solution to the problem goes from the dumb sed command in the above-mentioned link to really great stuff like the KDEmod project or FaunOS.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;KDEmod&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="font-size:78%;"&gt; &lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:78%;"&gt;or "The greatest reason is to do the right thing for the wrong reason"&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://kdemod.ath.cx/"&gt;KDEmod&lt;/a&gt; is the reason I tried Arch in the first place. At the time I tried and replaced many linux distributions dating back to Mandrake 8.0, but never satisfied I kept the 8 year old Windows 2000 as my OS of choice. Then I heard about this modified, patched version of KDE which was &lt;em&gt;"the most bestest kde ever, with ubergraphics, ultrafast" &lt;/em&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;which you could have at the cost of installing this never heard before distribution.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;In fact, KDEmod is "just" a splitted KDE with a fresh and dandy theme and a couple of patches for eyecandy (the 3.5.9 branch): splitted means that you can choose what programs to install, one by one, without the need to follow the dumb way KDE ships.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;At the moment the KDEmod project mantains both KDE 3.5 and KDE 4.1: yes, you can install KDE4 with a single command and leave your worries and problems to the KDEmod developers.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;If you are a noob coming from &lt;a href="http://ubuntuforums.org/forumdisplay.php?f=321"&gt;Ubuntu&lt;/a&gt; you will get your shitty Gnome, if you are a nerdy programmer you will want your tiling window manager, but if you are a great guy with an attitude like me you should really &lt;a href="http://kdemod.ath.cx/installation.html"&gt;install KDEmod&lt;/a&gt;. Plus Funkyou is a nice man, even if he is a &lt;a href="http://209.85.135.104/search?q=cache:5rFnPX-eDnIJ:bbs.archlinux.org/viewtopic.php%3Fpid%3D260654#p260654+funkyou+zeitgeist&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;cd=1&amp;amp;client=opera"&gt;conspiracy theorist&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;How would you install something though? Well, with&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Pacman&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;em&gt;&lt;span style="font-size:78%;"&gt; &lt;/span&gt;&lt;/em&gt;&lt;/strong&gt;&lt;span style="font-size:78%;"&gt;sed -e "s/^\[options\]/&amp;amp;\nILoveCandy/" pacman.conf&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;Pacman is the &lt;strong&gt;pac&lt;/strong&gt;ket &lt;strong&gt;man&lt;/strong&gt;ager. Personally I don't get why people say it's great, I mean it just installs binary packets and solve dependencies... oh wait, ~maybe that's why it's so great.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;Pacman does the job and does it good. He doesn't bring you coffee, he doesn't wear fancy clothes, he is not a PR expert. He is a fucking computer program. Once this is clear we are all set. Go!&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;You search with pacman -Ss, you install with pacman -S, you remove with pacman -R, you list what you have installed with -Q. You upgrade your installation with pacman -Syu. That's it.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;Complimentary part on the &lt;a href="http://en.wikipedia.org/wiki/Rolling_release"&gt;rolling release system&lt;/a&gt;: I don't think so.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;What I want to spend some quality time dealing with is the format of the database pacman relies to.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;The packets database &lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:78%;"&gt;it is not&lt;/span&gt;&lt;/p&gt;&lt;p&gt;There is none. There is a hierarchy of directories and files in /var/lib/pacman/local. for each packet installed there is a directory called "packetname-packetversion" with a bunch of files inside: &lt;em&gt;desc&lt;/em&gt; with the human valueable data, &lt;em&gt;depends&lt;/em&gt; with the dependency valueable data, &lt;em&gt;files&lt;/em&gt; with the removal valueable data, plus eventually &lt;em&gt;install&lt;/em&gt;, &lt;em&gt;changelog&lt;/em&gt; and &lt;em&gt;license.&lt;/em&gt; All the files are human readable, which make accessing the database with homemade scripts pretty straightforward.&lt;/p&gt;&lt;p&gt;The biggest drawback to this approach is that the time it takes to access the database depends on your filesystem speed with small files and fragmentation. There are a couple of solutions to this problem: reiserfs for /var, &lt;a href="http://bbs.archlinux.org/viewtopic.php?id=38560"&gt;tupac&lt;/a&gt; - A pacman cached implementation (written in php... ), &lt;a href="http://bbs.archlinux.org/viewtopic.php?id=20385"&gt;pacman-cage&lt;/a&gt; which mounts the database with a loopback device. As you can see the Arch community found different solutions to this problem. To me and to the vast majority of users who don't like destroying their database, &lt;strong&gt;p&lt;/strong&gt;ersonal &lt;strong&gt;h&lt;/strong&gt;ome &lt;strong&gt;p&lt;/strong&gt;age, or &lt;a href="http://en.wikipedia.org/w/index.php?title=Comparison_of_file_systems&amp;amp;oldid=220529437#Features"&gt;getting their wife killed&lt;/a&gt;, pacman is fast enough. It really is.&lt;/p&gt;&lt;p&gt;There are, of course, a number of &lt;strong&gt;graphical frontends&lt;/strong&gt; to pacman which spawned over time: I feel like an hacker using the shell to install the programs, so I don't really care about them; I will mention two of them though: Pactrac which is the &lt;a href="http://www.faunos.com/"&gt;FaunOS&lt;/a&gt; default and Shaman which will become the default installer in some new kdemod4 based distro called &lt;a href="http://drfav.wordpress.com/2008/05/29/tribe-updates-and-something-else/"&gt;Chakra&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;ABS &lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:78%;"&gt;or Arch Best-kept Secret&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;A package installable with pacman is just a tar.gz with the directory tree where the files have to be installed and a file named .PKGINFO with various information on the packet inside. The format is so easy you could create a package by hand with just a little effort. Well, the purpose of makepkg and the PKGBUILDs files is to make the process even easier and more streamlined.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;This is the PKGBUILD file for patch:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;# $Id: PKGBUILD 1438 2008-05-08 17:11:21Z andyrtr $&lt;br /&gt;# Maintainer: judd &lt;jvinet org=""&gt;&lt;br /&gt;pkgname=patch&lt;br /&gt;pkgver=2.5.9&lt;br /&gt;pkgrel=1&lt;br /&gt;pkgdesc="A utility to apply patch files to original sources"&lt;br /&gt;arch=('i686' 'x86_64')&lt;br /&gt;url="http://www.gnu.org/software/patch/patch.html"&lt;br /&gt;license=('GPL')&lt;br /&gt;groups=('base-devel')&lt;br /&gt;depends=('glibc' 'ed')&lt;br /&gt;source=(ftp://alpha.gnu.org/gnu/diffutils/$pkgname-$pkgver.tar.gz)&lt;br /&gt; #ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz)&lt;br /&gt;md5sums=('dacfb618082f8d3a2194601193cf8716')&lt;br /&gt;&lt;br /&gt;build() {&lt;br /&gt;  cd $startdir/src/$pkgname-$pkgver&lt;br /&gt;  ./configure --prefix=/usr --mandir=/usr/share/man&lt;br /&gt;  make || return 1&lt;br /&gt;  make prefix=$startdir/pkg/usr mandir=$startdir/pkg/usr/share/man install || return 1&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;makepkg will read these instructions and build the package, which then can be installed through pacman.&lt;br /&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;The Arch Build System is only the collection of the PKGBUILDs the developers write in order to build the packages which pacman then downloads from the repositories and installs. With a simple command, abs, you rsync all the PKGBUILDs which you can use in order to build your own versions of the packages, or with &lt;a href="http://bbs.archlinux.org/viewtopic.php?id=48957"&gt;pac-builder&lt;/a&gt; to rebuild all the packages you have installed (happy gentoo users? happy?)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;ABS is really one of the best features of Arch:&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;a new version of the program came out and the developer is on holiday? I just modify pkgver inside the PKGBUILD and build my own package;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;I need to enable a particular feature with compile flags? I just need to modify the building procedure in the PKGBUILD&lt;/li&gt;&lt;li&gt;I need a program which Archlinux doesn't support? I &lt;s&gt;write my own PKGBUILD&lt;/s&gt; go to AUR&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;AUR &lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size:78%;"&gt;you write it AUR, you read it our&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://aur.archlinux.org/packages.php"&gt;AUR&lt;/a&gt; is the repository of user made PKGBUILDs. If you made a PKGBUILD and you want to share the results of your effort, AUR is the way to go: inside this sandbox, you can feel the same frustration of a distribution developer &lt;/span&gt;&lt;span style="font-size:100%;"&gt;without being eligible to an @archlinux.org mail and especially without the e-penis satisfaction of being an actual developer. Even though AUR packages made by particolar users known as Trusted users, or TA, makes into the community section of the pacman officia&lt;/span&gt;&lt;span style="font-size:100%;"&gt;l package repository.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;Well, that's it for the review. &lt;/span&gt;&lt;span style="font-size:78%;"&gt;Probably I will add some pictures and some text tomorrow, that is today ;_;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/61185669380314388-2852693169216212961?l=archpropaganda.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://archpropaganda.blogspot.com/feeds/2852693169216212961/comments/default' title='Commenti sul post'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=61185669380314388&amp;postID=2852693169216212961' title='0 Commenti'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/61185669380314388/posts/default/2852693169216212961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/61185669380314388/posts/default/2852693169216212961'/><link rel='alternate' type='text/html' href='http://archpropaganda.blogspot.com/2008/07/arch-linux-is-good-quite-good.html' title='Arch linux is good, quite good'/><author><name>propaganda</name><uri>http://www.blogger.com/profile/00820360647932281752</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
