On switching to Arch Linux
mikethecoder.com
mikethecoder.com
The install phase is a pain if you want to get a full-blown plug-and-play ready-to-go desktop experience that rivals Ubuntu, OS X, or Windows.
It's actually really easy if you just want a bare-bones system that boots into a shell and doesn't install any packages other than what it needs to do just that.
Switch to Arch if you're a minimalist.
My rig only runs Stumpwm on Xorg. I only use xterm, emacs, and the usual GNU toolchain. A couple of interpreters. I have installed GTK so I can use Firefox (and so I can hack on Firefox), but nothing else. I don't have a crap load of applications running in the background waiting to notify me of crap I don't care about or services that I never use. I know exactly what runs on my system and it does no more than that and no less.
I think Arch fills a very nice niche and I'm so happy it exists.
The only "minimalist" Linux install I've ever wanted was one so stripped down it would boot off of a 3.5" floppy. It's amazing what you can do with a kernel, a baked in read-only filesystem and a tiny loopback device for storing configuration files.
Less is more.
My Arch system doesn't inundate me with pop-ups to update my system with out-of-date libraries. It doesn't integrate "the social web" into my "desktop." In fact it doesn't do anything unless I specifically want it to.
Some people are happy with everything and the kitchen sink. I don't need all of that, so why have it? It takes up resources, clutters my space, requires maintenance, and often just gets in the way for no good reason. I don't need that and Arch serves me well.
All these things are also true with Ubuntu.
(Windows is probably a worse offender with its Windows Live integration, though.)
I don't see that on my Window Maker desktop.
(People either forget or have never been told that Ubuntu is still actually Linux, and can run all the same software Arch and Slackware and CentOS can run. That's the charitable explanation, anyway.)
At some point you have to make a distinction between the desktop environment, and the increasingly meaningless term "operating system"; once you stray from the defaults, there's no point distinguishing between distros at all.
You can remove some of the defaults and not all of them. For example, I still use the default Ubuntu package repos. I'm still getting value out of the default Ubuntu system without needing to run every single default.
There's a finite distance you can run this train of thought, but i'll continue: At what point does your system stop being Ubuntu, and start being identical to someone's WindowMaker distro, customised to use ubuntu repos? (Lots of desktop debian users add ubuntu repos for the occasional package.)
On a complex system I don't know what is installed and how it's installed. It's just too big to apprehend, I will never hold all this in memory. For instance I used Ubuntu for years before discovering that I do not use 'GNU bash' at all, it was a fork called 'dash'. It may be silly and won't make a big difference, but the fact remains that I didn't know for so long. If I had bash and 10 other binaries in total on my system, I would have realized earlier. A lot earlier.
Even root has /bin/bash as its log in shell.
/bin/dash is more like the original bourne shell which helps people write more portable shell scripts and it's faster(especially for startup).
Dash is also /bin/sh in Debian.
I'm pretty sure even unix V6 had > 11 binaries, http://man.cat-v.org/unix-6th/1/
maybe some systems using busbyox may have < 11 binaries.
If I'm reading this right, you must be one of the very few people on Earth to use dash when you have the option to use bash.
Anyway, I don't use bash, either, but that's because I moved to zsh before Ubuntu even existed. I think I was using Slackware then.
I think you misread that. It sounds to me that he didn't realise he was using dash because it was bundled with Ubuntu and Ubuntu being a large distro with lots of defaults, it took him a long time to find this out. Your comment just validates his point because he didn't want to use dash at all, he just didn't know he was using it until a lot later (possibly after the differences already wasted his time).
For my desktop, I still value 'just works' over minimalism. Things like Spotify just work out of the box. And any software I may want to play with in the future that has to choose which distro to target will most likely target Ubuntu and Fedora first.
Also, the Debian repo is extensive, and the Ubuntu PPA system almost always compensates for when the Debian package is too outdated.
I also like where Ubuntu is going with the UI/UX. At first I hated the idea of the sidebar, but after trying it and realizing it autohides and stays out of your way most of the time, I switched my opinion. And I'm really looking forward to HUD in 12.04. I've been wanting an integrated Gnome-Do/Synapse for a long time now.
Finally, I get my minimalism fix where it's most important - on the servers. I can set up a local dev environment using vm's that mirrors production - database server on one vm, app server on another vm, and Nginx running on the desktop and pointing to the app server vm.
It does annoy me to start up htop on the desktop, and compare the plethora of stuff I see there with what htop on the servers displays. But I just accept it for now.
Compared to that best-of-both-worlds setup, Arch seems like it would require more compromises than is worth the time and effort to deal with it. I still intend to learn it, just because I value things that will help me learn Linux (or any of my primary tools) better. But I don't see fully making the switch to Arch.
Thoughts?
What's fascinating is that AUR packages get voted up. Packages past a certain threshold get the choice to become a main repository package. Creating and maintaining community packages is a snap with their build system (though I've never done it personally, but understand the mechanism).
On top of that, re-building your kernel, should you ever need to (I did), is dead simple.
So to your main argument of more compromise, I believe it to be false. It's less compromise to me. I feel I have to compromise with an Ubuntu distro that has made all the choices for me (and for a client-services company at least, you'll come to the day where you need to know what those choices were). Now I have the power and ability to make the decisions I want to make, especially following the extensive wiki and super helpful forums (I feel like you could compare the helpful responses there with the type of intelligence that this community possesses).
To your final point, of the "just because I value things that help me learn Linux", this will absolutely help you learn Linux. And once you know it the Arch way, most of the other ways seem completely opaque. The standards of packages in Arch allow you to find all the important bits of all the software you installed. My company uses Arch for our servers as well because we know we can count on the standards and have up to date software that, for us, "just works".
Spotify doesn't work for me in Mint. In Arch worked flawlessly. Anyway, YMMV.
Now I'm willing to have time to switch back to Arch and enjoy the minimalist (and speedy) desktop experience and the easy way to use bleeding-edge software in a (almost) safe way.
But all isn't bad in Mint. I like the performance of its kernel with the 200-lines patch scheduler. For any archer: any idea of some AUR kernel with that? Or does it get in mainstream kernel already?
This is admittedly my first day of not being just a lurker here, so forgive me if I shouldn't ask this here, but what is your setup and environment like?
I've considered running VMs for each client I work on, but am unsure if it'd just be a hassle or not.
1. I have a rule - never install server software on my base machine. Servers and server frameworks (like Rails, Jetty, PostgreSQL, etc.) are only allowed on server OS's (Ubuntu Server) running in a virtual machine. That keeps a lot of cruft and extraneous processes out of my base install, while also quarantining them into easily clonable virtual machines, should I want to recreate the vm for something. I only break that rule with one thing - I run Nginx on my host OS, and just point it at different vm appservers.
2. It helps separate your work for multiple clients. So you could setup three vm's for client 1 and three for client 2 like so - client1-webserver.vdi, client1-appserver.vdi, client1-dbserver.vdi; client2-webserver.vdi, client2-appserver.vdi, client2-dbserver.vdi.
3. It lets you more accurately simulate the production environment of an n-tier application locally, so your dev environment will be closer to prod than if you ran all these server apps directly on your base machine.
Only caveat is you need the hardware to support this. Enough disk space for multiple ~10GB vm's, enough RAM to hold them in memory, and a CPU with VT-x (and VT-d if possible) and lots of cores. I particularly like Intel's Sandy Bridge chips for this, since every core is hyperthreaded, making it appear to the OS to have twice as many cores as it actually does. Each vm can be assigned one more more core.
That's about it. Try it with Virtual Box and see what you think.
I think I'm a convert. Now, if I could get OSX to boot in a VM, and dedicate the entire HDD to Arch, that would be perfect. For some reason my Macbook won't boot the 64bit Archboot iso. But I'll wrestle that demon another day, heh.
Thanks for sharing your experience.
Just about every Linux distribution offers this, because the distro-makers create none of the window managers, etc. Which other distributions have you tried?
Slackware's package management tools doesn't do dependencies. In Arch you can easily remove a package and everything that is no longer required.
pacman -Rsn package-to-remove
2) AUR (see #1)
But Arch seems really cool if you want to rebuild Linux systems for fun & knowledge!
Sometimes updated drivers are needed, but not released for months, and the developers have to make the choice between holding back the kernel update for that small minority or releasing it to the benefit of everyone not using that driver.
Now I just want something that works, gets updates and gets out of my way so I can build stuff. Ubuntu FTW.
I tried Mac, but nothing, and I do mean nothing, beats apt. Lenovo X220 running Ubuntu 12.04 seems about perfect to me at the moment.
There's a tremendous amount of creativity that goes into customizing an OS to meet every need you have --- and ONLY those needs.
edit: Please understand that I'm not saying a fully customizable Linux doesn't have its place. It absolutely does. But when you're trying to crank stuff out, having to stop and tweak/fix your system simply gets in the way. Well, it gets in my way, at least. :-)
The truth is, the OS is not supposed to be a black box that lets you run your IDE on top. That leads to extremely redundant systems with multiple failure points. Idiotic as it may sound, proper manipulation of your OS will make you "one" with the machine, and simplify your thoughts greatly.
I'll leave you with a quote found all over the Web: "Those who don't understand UNIX are doomed to reinvent it, poorly".
Similarly for increasing boot speed, I really like knowing exactly what I need to be running at any one time.
I appreciate it's not for everyone, but I imagine most coders around here who run a Linux system would benefit a lot by taking the time to set up an install and having it work how they like.
After I swithced to Arch, I found it much easier to configure, and it required almost no maintenance. It is a great balance between ease of use and full power.
20:20 <dash> well that confirms my impression that arch was invented by a bunch of guys who thought gentoo was too stable and easy to use
And that's when I realized that while it's fun to tweak and fiddle, I have real work to do and doing things like fighting with a package manager and installing drivers is not very high on my to-do list. I ended up rolling back to 11.04, which I'll probably stick with for some time.
If you do want something from the AUR, are customizing one of the official packages, or are trying your hand at packaging something else, editing PKGBUILD files and using makepkg manually is pretty straight forward once you've done it once or twice.
The community is very helpful and responsive...on the forums, mailing list, and on IRC. Feel free to stop by if you ever want to give it another shot and get stuck.
#> vim /etc/pacman.conf [archlinuxfr] Server = http://repo.archlinux.fr/$arch #> pacman -Sy yaourt
If you don't like the way Ubuntu went, go with Debian (sid if you like the warm feeling of having the newest stuff).
I can do this with Arch Linux. I can't imagine what you could've had so much trouble with.
That said, I won't argue that it's still a good bit more work than setting up other distros.
Debian has lots of sensible well thought out defaults. Arch has lots of disparate defaults each provided by the package vendor (as they don't customise packages).
It's not a criticism, but a difference to bear in mind.
I also reported a major security vulnerability in the default configuration of an Arch package but I had to reopen it because the maintainer said something stupid like "people who install this package should operate on trusted networks". What?
Many people look at a particular OS, decide that it's not right for what they need or want, and jump straight to "that OS sucks because it doesn't meet my needs." It should be fairly obvious how that is just a silly thing to think.
Different OSs meet different needs. We should strive to understand our own needs and to understand our options so we can make the optimal choice for our particular situation.
As an arch user myself, I like (and can afford the time) to tweak and fiddle with my setup so that it's just right for my workflow. Another reason I use it, is that it's a great way to learn more about linux.
Arch probably is not right for people who need lots of stability or don't have the time to fiddle and tweak the OS. And that's ok. There are many other options they can use. It sounds like Debian is the right fit for you and that's awesome.
Glancing through the instructions, it looks like things might have got better than when I installed arch linux around 6 months ago. At the point I felt like installation involved a lot of carefully designed "busy work", which I couldn't imagine not wanting to do, but which had to be done exactly.
The reason I left is because of their incredibly bizarre choice to make /usr/bin/python run python3, and messing headers around so much you couldn't build gcc from source. Between these two features, it made the system basically unusable for me.
Arch is awesome because it's basically FreeBSD-like packaging and something not unlike FreeBSD's service configuration on a Linux box. Things are in a predictable place, rather than in /usr/local OR /usr/, and installing source packages is something that is very customizable and very easy. It yields the responsibility to be careful about your versions to you, but in doing so gives you an immense amount of power to be the master of your system.
For minimal systems, where you know what you're doing, it's fantastic. Running Xorg is a bit of a pain, but I hardly blame Arch, and if something that "just works" were what I was going for, I wouldn't run Arch. I wouldn't use it on my MBP, but it's been running great on my home server for quite some time.
My main issue is that the rolling release thing didn't actually solve the problem that I expected it to - which is that I didn't want to need to install a new release every 6 months to keep up with changes. While Arch makes it so that you don't need to frequently re-install, if you don't update often enough, you can get into situations where upgrading will break your system.
At this point, I'm afraid to do the upgrade on my server for a number of reasons, first is that I might run out of disk space on root part-way through (I should mount something else to /tmp for this). And, the other reason, as mentioned above, is that the upgrade might bork my system, and that's just something that I can't afford on my server.
I realize now that this was a really poor choice as a server distro, but I am happy that Arch does not get in your way with system config stuff and you can find just about anything you want to install in either the base or community repos.
Also I use some esoteric software that is more difficult to get on Ubuntu.
I'm a developer though that's been using Linux as my main OS since the days of red hat 4 in 1996 so I'm quite used to it. Arch focuses more towards seasoned users that want to do their configuration this way. The rolling release schedule can introduce some issues for me but they typically are fixed within hours to a few days as new packages come in.
All in all I'm very happy with it as my primary OS for both work (within a creative agency) and at home. Certainly as a developer I've found it far easier to get things to work on it than other linux flavours.
Different strokes for different folks really. I still continue to recommend Ubuntu and Fedora to friends looking a more friendly and "out of the box" experience. Arch is not there to fill that niche.
Cynically I suppose that the people involved in making this software aren't encouraged to improve ease of use because then they couldn't be "helpful" in the IRC channel used for support.
Is something like this the reason so many open-source projects so vehemently opposed to usability?
Whether I'm an "outcast" or a "neckbeard" is entirely for others to decide. What I can tell you is that based on your comment, you simply have never experienced the joy of building something from scratch.
Rather than defend Arch explicitly, I'd like to use an example.
I like bicycles. I cycle 20 miles daily on my work commute and use my bike as my only form of transportation for running errands and getting around town.
The most "usable" route of transitioning to a car-free lifestyle would have to be going to a bike shop and buying one that fits. Now of course there's nothing wrong with this approach.
However, using this approach, when something goes wrong (as inevitably will happen with all machines, mechanical or digital) my reaction would most likely be be to look down at the problem, scratch my head, then walk my ass to the bike shop.
The approach I prefer is to build my bike from scratch. Acquire the perfect frame, the ideal wheelset, a rack that saves me some extra grams over what comes default on most transpo bikes.
Then all the tools.
When something goes wrong with my bike, I know exactly what's wrong. I know what shortcuts I took, what configuration I chose, and most importantly, I've got all the tools necessary to fix the problem.
Further, I know my bike is as fast and efficient as possible (given all necessary trade offs) because I was able to choose the ideal components.
tl;dr: I use Arch because time spent tinkering is time spent learning and optimizing. For more info I suggest anyone interested read The Arch Way: https://wiki.archlinux.org/index.php/The_Arch_Way
VERY happy Arch user for 2 years now. And also planning on building my own bicycle from scratch for the same reasons you named.
I wonder if this is one of those spectrums like Introvert ←→ Extrovert.
People who study the roots ←→ People who just pick the fruit.
From Wikipedia: "In the book, the Narrator describes the "Romantic" approach to life of his friend John Sutherland, who chooses not to learn how to maintain his expensive new motorcycle. John simply hopes for the best with his bike, and when problems do occur he often becomes frustrated, and is forced to rely on professional mechanics to repair it. In contrast, the "classical" Narrator has an older motorcycle which he is usually able to diagnose and repair himself through the use of rational problem solving skills."
http://en.wikipedia.org/wiki/Zen_and_the_Art_of_Motorcycle_M...
You could just learn to maintain/repair the store bike, which has after all been designed to work by someone, and probably does most of the time. I've ridden bikes for years and only replaced things as they wear. Not that there's anything wrong with building your bike from scratch, but it's not an automatic guarantee of superiority.
Personally, I find Ubuntu like a store-bought bike that uses a bunch of non-standard parts. You may have a complete tool kit, but you don't have the right tool for this bike.
Or: when I troubleshoot Ubuntu, I learn Ubuntu. When I troubleshoot Arch, I learn Linux.
In actuality, there's no superior way of learning, and no superior way of getting into cycling! Take the tone of my comment as a reaction.
Also, you do get more vanilla software from these distro. It's a lot less likely that someone modified the software to work with their distro idiosyncrasies. Sometimes that's a big plus.
I used Gentoo around 2002-2005 or so and I learn a great deal of what I know about Linux through the experience. I now run Ubuntu or Debian cause there are other things I want to learn about ;p
I've found the Arch community to be EXTREMELY helpful because they are encouraged by people who want to know what's going on and not just taking whatever is pre-packaged into the distro and shoved down their throats.
The beauty of Linux is that there's something for everyone. We could speak with equal pejoratives about distributions that do everything for the user but the reality is that Arch is around because there is a community who wants it --- and they're not the "necbeard crowd."
What OS do you use? I'm sure we could hurl insults at you, too. That wouldn't be a constructive conversation, though.
Here I go again ... feeding trolls. Sorry folks.
Like you said, most people using Arch are those who want a great deal of control over their desktop machine, but without the compilation and general cruft of Gentoo. And those will be the ones putting Arch on servers, I believe.
http://google.com/search?q=zen+and+the+art+of+motorcycle+mai...
Most arch users attempt to solve their own problems before asking another.
What do you expect to get out of your system? Maybe Arch just isn't tailored for your needs (but you could certainly configure it to meet your needs with a pinch of effort).
Maybe it is more likely that they use arch because it's the tool that meets their needs and that they enjoy using...
Everything written here is true re: learning about Linux, having more control, straightforward architecture, bleeding edge software, etc.
But the instability factor eventually will bite you in the ass, and per Murphy's Law, often at the worst possible time. It's happened to me twice in this time span.
My solution is to use a separate data partition for all my files and install Arch and a more stable distro (Mint in my case) in different partitions. Both OSs link to the data partition and grab dotfiles and things from a git repo.
Arch is my preferred environment, with a tiling WM and everything painstakingly set up for my preferred workflow. But when it crashes, I can still use my workstation to get stuff done, and go about troubleshooting when I have free time.
It's a one-time expense, too, in terms of time. And there's the added benefit that you learn how to partition, how to mount, link, etc.
I Arch Linux for my last semester of school and didn't have any problems, I didn't find it unstable at all.
Speaking from experience, life is just too short to run arch on a laptop. Heck, I have a hp pavilion dv7 with switching graphics and even that was a pita to get stable on ubuntu.
IMO its best to stay the hell away from switchable graphics period if you intend to use linux.
However I work with developers who don't want to tweak every little thing they just want their OS to work and let them be passionate about development. They should stick to OSX, or if they are feeling adventurous try Ubuntu. I also would not suggest Arch if you have not used another more friendly Linux distro for a while and had the "opportunity" to troubleshoot some issues and enjoyed it.
To enjoy Arch you really have to be passionate about Linux and tweaking your machine, otherwise you will just be frustrated. For those that are I cannot recommend Arch enough.
The package manager Arch uses, pacman, recently introduced package signing (albeit with a few bugs to iron out.) I wonder if more people will start to use Arch as a server OS now.
In Ubuntu, 'stability' means that you can run apt-get upgrade all (I think that's the command), press 'y' a few times (or, better yet, just pipe 'yes' to it) and then forget about it, knowing that your system may not have the latest version of every package, but the latest version in the Ubuntu repos, which is presumably 'stable' with the rest of the system.
With Arch, you have to think before you -Syu. Running pacman -Syu will upgrade all packages to the latest version in the Arch repos, which are usually updated much more quickly, as it's a rolling-release distribution. This means that you may want to check the mailing lists before upgrading important packages, or wait until a later time to upgrade. Or not upgrade at all, which is 'stable' by virtue of the fact that you haven't changed anything. The choice is yours. You can decide what to do on a per-package or system-wide basis, depending on your use case (Personal user & tinkerer? Luddite personal user? Large-scale server? There's no 'one-size-fits-all' approach to keeping a system up-to-date, but Arch is a 'one-size-fits-all' distro in that it allows people to make these decisions for themselves very easily).
Rolling release isn't for everyone - I'll agree. But that's the main difference between Arch and other distributions. (That, and it's highly minimalist by default, whereas Ubuntu and Mint are 'everything and the kitchen sink' by default). But I certainly wouldn't say that Arch is any more or less stable than other Linux distributions (I can't compare to BSD), because it's really just as stable as you want it to be, given your definition of 'stable'.
> Arch is incredibly stable - you just have to rethink your idea of what stability means in an Arch context.
I don't understand what your definition of stable is. Obviously anyone can not upgrade any distribution or software. If I want to upgrade I have to check the mailing lists to see if there are any major issues. That sounds like a source of instability.How can I update Arch, on a semi-regular basis (at least yearly), without having to worry about upgrade issues? If I can't, then I don't think you can call it 'incredibly stable'. Of course, you can accept the trade-offs, but don't try to 'rethink stability'.
You can - in fact, it's best to do it more often than yearly.
> without having to worry about upgrade issues?
Compared to someone who's coming from Ubuntu, Arch isn't a distro that you can just upgrade all in one go, without thinking twice, and then forget about it. Or, to quote the Arch Wiki, pacman is not a 'fire and forget' package manager.
If your definition of 'stability' is 'I can run a full system upgrade as often as I want, without thinking about what I'm doing', then no, Arch isn't 'stable'.
If your definition of 'stability' is 'My system will run with minimal errors and above-average security as long as I carefully consider each package before I update it', then Arch is incredibly stable.
The concept of stability, in the context of a personal user, comes with an implicit assumption of how much choice will be presented to the user, which affects how much mental effort the user will have to provide. Ubuntu will make a set of choices on behalf of the user, which can result in bloated software packages, serious security concerns and bugs that persist for the six-month release cycle or longer. Arch will require the user to make some of those choices for himself or herself, which ends up by providing the user with a more modular set of packages, a much faster upgrade cycle, and a more (easily) configurable system.
For example, there was a bug in X that affected pretty much every distro a few weeks ago, allowing the screen lock to be bypassed trivially. If I remember correctly, Arch had that fixed within a few hours (the advantages of rolling-release). I'm not sure when (or even if) Ubuntu fixed that bug, but it ends up taking much longer, because they have to provide official support for those packages, and something as widespread as X needs to be tested against a variety of configurations before releasing a patch. With Arch, I can decide if the patch is important enough to update now, or if I should wait, and I can make a reasonable judgement as to whether it s compatible with my system -- something Ubuntu users will have a harder time doing, because they didn't go through the process of building their operating system from scratch when they installed it, so they may not understand it under the surface as well.
To put it another way, using a rolling-release system like Arch is no less stable than a fixed-release cycle, because nobody is forcing you to upgrade a package when it comes out.
(The other difference is that Arch provides community support, whereas Ubuntu provides corporate support, but at that point you're starting to compare apples and oranges).
The main thing Arch has over FreeBSD is you get easy access to lots of shiny toys. Pacman repos update much more frequently and the process of updating packages is much faster. If your favorite text editor drops a new version, it will be available in Arch repos in minutes/hours; it may be months before it makes it to FreeBSD ports. And things like audio, video drivers, wireless are pretty painless in Arch compared to FreeBSD.
The biggest downside of Arch is that it sits on the complete opposite side of the security spectrum. FreeBSD makes sure you start with a secure machine and anything you do to cheapen the security is your bag; most of the time it'll try to let you know you when you're doing it wrong. The BSDs in general have a really healthy culture of security paranoia. You don't get that with Arch. Signed packages have only recently made their way into pacman and I'm not sure if they're even required yet. So a lot of the time, it feels like you just have to cross your fingers and trust that the repos you're hitting haven't been compromised. And you're constantly installing software from them.
Also, occasionally you'll need to spend 5 or 10 minutes recovering from a wonky upgrade (upgrading often is better than not).
Arch is an excellent, if not secure, desktop/laptop environment and you'd be crazy to run a production server on it.
After struggling a little with the initial setup, I got everything in place, and it has just worked since then. Breakage from upgrades has been no worse than Ubuntu, and my Python work hasn't been disturbed at all.
For those who don't mind rolling up their sleeves and just RTFM'ing it, this is a great distro.
Since you always have the latest packets ready your code is going to be often broken by changes in the libraries (damn Boost!). Other problem, if you leave your computer untouched for 1 months you'll have 1 Gb of updates to do.
But it's still a very good distribution, just be careful about what to use.
In hindsight, the learning phase of having to set everything up taught me a lot about using Linux, bash, etc. Switching to a tiling WM (dwm rocked) was a great experience when I had been using Windows all my life.
Having said that - it was resolved quickly by some friends in the community.
I've been using Arch for a number of years and I don't see why the author thinks it's so difficult to set up.
During installation I only set up partitioning and /etc/rc.conf which is the main configuration file. I'd set up partitions and change some default settings (like keymap, locale, etc) on any computer, so it's not a problem. I also make sure wicd is installed for painless Wifi configuration.
After the first boot, I install most of the stuff I use with a one-liner, something like this:
pacman -S xorg xfce4 chromium-browser pidgin gdm thunderbird mc skype htop vim gcc ruby
and that's my base system.Plus, being a rolling release distro means that you don't have to do major upgrades (which tend to break things more often than not). The installation I'm currently using on my main computer is about 20 months old and I've even changed my machine since then.
My video card works after installing xorg, sound works out of the box, wifi works out of the box, etc.
Literally everything mentioned here worked out of the box for me when I installed Arch (except for USB headphones, which I do not own).
[1] https://wiki.archlinux.org/index.php/Beginners_Guide#Install...
[2] https://wiki.archlinux.org/index.php/Beginners_Guide#Sound
[3] https://wiki.archlinux.org/index.php/Beginners_Guide#Install...
- The arch way tends to attract users with strong|alternative ideas, IMHO they're a big part in the revival of tiling wm.
- Today I switched to nixos though.
Absolutely correct on the wm comment. However, I am an organized, messy person and prefer stacking wm. Currently in favor of openbox, but it may be something else tomorrow.(Note: not archbang, but I am not entirely opposed to archbang as some are. Archbang turned out to be really great for my old laptop that I use primarily as a browser, but nothing beats the real deal when it comes to my everyday-everything machine)
That nixos looks interesting, possibly something to consider for one of my personal machines.
The former has filled the 'out of the box' niche sort of, now you have a minimalist yet ready to use system.
# note aside, about nixos, I can't tell how it's gonna turn out, but for once it's a linux system with a real paradigm shift. Funny how non-mutable ideas are spreading these days, btrfs, nix, even git.
# second note, have you seen this http://www.youtube.com/watch?v=8jULGE0rq8M ? makes me wanna say 'tiling' is the only 'management' right now, stacking doesn't do sh*t.
Then I discovered wms. I'm probably more attracted to openbox because the stacking is closer to the sort of window management that you would get in any de.
However, I so very rarely have a bunch of windows open at once that I need to see all at once. And I can also easily open, close, move, resize, switch screens, etc. with the keyboard. I'll give it a try before I say that it's not for me though. Who knows, maybe I'll use one for when I'm working on projects.
Which tiling one do you use? awesome?
I found those peaceful to use, you just forget they're here even though they lay things for you.
Should start a Tiling WM thread :D
I'm sure there are quite a few wm/de threads on the arch forums. They get a little repetitive though. Maybe a thread about the less obvious subtleties and tricks for your favorite wm.
For sound, the best solution that worked for me was ALSA + esd. I could never get PulseAudio to work properly.
On arch after installing gnome 3 my sound just works flawlessly, even my usb headphones.
I did have issues with pulse when I used XFCE though.
I would probably say something like, "isn't available after initial install" and that "you need to install all the packages you want to use".
It is one of the Arch philosophies that you don't need any packages on your system that you don't want to use.
That said, Arch does have very sane defaults, so I'm sure after using pacman to install your DE or graphics drivers, it worked fine.
I stopped there http://xkcd.com/963/
In Archs defense though, setting up xorg is simply installing the packages which is trivially easy with pacman. I love it to death.
I have a T420 with Intel graphics.
You have to select a driver from a comprehensive list of which drivers work for which cards, and you don't have to make any (non-trivial) changes to xorg.conf, unless you want to set up multiple monitors. (And even then, I was able to avoid that for a long time by using XFCE, which apparently doesn't mind when xorg.conf settings are unspecified/improperly specified).
Yes, everything has to be set up manually on an Arch system, but that's a feature - you know where everything on your system is, and you know that there's nothing you didn't add yourself.
And with the wiki, setup may take some time (again, by design), but the process is incredibly straightforward.
Being forced to make all those choices was the best part about it for me. I'm sure it's possible to customize Ubuntu to look like my arch set up, but if I hadn't been forced I likely wouldn't have tried. I'm currently running i3 as my window manager and I love it. I use a macbook pro at work, and It's nice but going back to a non-tiling window manager after getting used to i3 is pretty painful.
TLDR: I love Arch, I feel that I don't lose time on it because I made the switch from Gentoo.
Arch is easy to set up with the installer. You get a minimal shell system which is good for focusing on code. Most things work out of the box if you just pacman -S the-package-you-need.
The hard stuff (wireless) is very well documented on http://wiki.archlinux.org/. Failing that, community on #archlinux is very helpful.
I'm sure it's not for everybody, but I like to spend my time creating things in code, and not arguing about what's the best environment to create things in.
From personal experience, don't try to install Arch on your machine unless you have another internet-capable device in hand. You're going to reach for ArchWiki several times.
Of course, ArchWiki is an incredible resource with great examples, so as long as you have it, the process is mostly painless.
Arch is kind of an intermediate Linux in terms of how much it will rely on your configuration. Not quite Gentoo, but far, far, far away from Ubuntu.
http://www.archlinux.org/packages/community/any/arch-wiki-do...
I played around with Slackware a few years ago and it was a good learning experience doing things like trying to get wifi to work and configuring xmonad. Arch does appear to have more extensive/organized documentation compared to Slackware though, which would make the learning process go smoother.
Also it has a very rich Arch Linux User-community Repository (AUR) + some AUR PKGBUILDs even install from Ubuntu's PPAs
Writing new PKGBUILDs is also very straightforward.
4 hours into install, I realized how much Ubuntu had spoiled me and remembered installing Linux for the first time as a kid and how confusing setting up X had been. I also remembered I had stuff to do so I installed Debian and called it a day. Cuda and nvidia drivers are frustrating enough, figured I'd pick my battles.
I suppose I liked the idea of arch much more than the practice.
Generally Arch doesn't install something until you ask it to.
I started back at about Redhat 5.0, used a lot of distros over the years, currently I use ubuntu because it 'mostly worked' from install, although it didn't really. I've ended up doing make/make install a few times for packages I needed configured like I wanted them. I might go back to Slackware when I get around to it, not really a big fan of Ubuntu at this point for what I do (programming).
On the other hand, at this rate http://funroll-loops.info/ will need to be re-written for Arch ;)
Most things are close to Arch Linux, so it's pretty straight forward to switch between them without having to get used to another distribution again.
In short I think it can be a better alternative for people who don't like to hack (so much) on their systems.