Also, if you want to use Arch in a dependable way, subscribing to arch-announce is important[1]. It's a low traffic mailing list that notifies you of any manual steps you may need to take during a package upgrade.
(I've been using Arch for years, both at home and at work. I love it.)
>There's value in a shorter more targeted tutorial
That's often true, but I was disappointed that this was little more than a rephrased version of what's on the Arch Wiki.
I love the Arch documentation on the Wiki. It's perfect for me– laid out well, easy to follow, arranged in a logical wiki order, and stuffed with insanely useful tips.
The pages on stuff like tmux are fantastic.
Most of the time the information is already in the wiki. And it's nice how the installation guide covers every corner case. I smoothly migrated my laptop from a simple installation to luks+lvm, just by following the guide. You can actually read TFM because it's already there. It's also kinda funny how many google searches that relate with configuration issues on linux link back to the arch wiki. Definitely documentation is one of the stronger parts of arch.
Just wanted to add that if you're not into mailing lists, the official Arch Linux News[1] page seems to be the same thing as arch-announce. It also has an Atom/RSS feed[2].
This deserves to be a visible comment. The arch documentation is pretty phenomenal, and may be some of the best distro-specific documentation I've ever come across.
That said, I've just moved back to mint after about a year with arch. At the end of the day, arch required a little too much of my time and attention. Still a great distro, though.
Shameless plug: I've been trying a list with every issue I encounter while using arch [0], as of today I've had ~10 issues in ~170 days. Each issue has taken me ~5 minutes to solve.
Indeed, the great upside about following the wiki for installation, is that you actually learn how all the pieces fit together - and can actually fix things yourself later on (or diverge slightly from the instructions if you want something different).
I really like Arch, because contrary to the popular belief it is the most hassle-free distro I've encountered. As vanilla and up-to-date as possible, but with the right amount of automation (binary pkgs and great simple utilities) baked in.
That said, some distros like nix and guix are addressing a much needed problem now---how to be able to get reproducible builds. Sadly, they haven't learnt many lessons Arch taught us. Last time I tried nix, installing mutt eventually pulled in python as a dependency!
> I really like Arch, because contrary to the popular belief it is the most hassle free distro I've encountered.
I completely agree. I tried switching to Linux a few times in high school (early-mid '00s), and always had false starts with Fedora or Ubuntu. Usually the package manager would break and everything would fall to pieces. I ended up installing Arch as a Subversion server for some personal projects, and that's what finally made it click.
I use Arch exclusively at work and at home. I do Linux development, which means I have to test out our product on other distros, usually Ubuntu. Eight-plus years later, and Ubuntu's package manager still falls over nine times out of ten. Fedora falls over. Mint falls over. I don't know what I'm doing wrong.
Arch Just Works. It's dead simple, requires very little maintenance, and when something does go wrong (maybe once a year), it's easy to fix or roll back. Arch is just files on a hard drive, not some nebulous set of five different package sources and databases and "releases" and blech.
I've been using Arch on my workstation and on my laptop for several years already. I can sign all the points you gave in here and I really appreciate how easy it is to setup and use the distribution.
Although many years ago I had problems when updating, in the recent years everything just works and I don't need to worry about upgrading the whole distro every 6 months.
Yeah, there were more upgrade conflicts years ago before most system software switched to the "conf.d" directory-style configuration system. Now the Arch-provided config upgrades cleanly as the user configuration is separate. Upgrade conflicts have been very rare lately.
That is good to hear. I used Arch and loved it until that upgrade thing you mentioned a few years ago. It basically made a machine I had unusable so I stopped using Arch altogether. Maybe it is time to go back.
Honestly, I don't know. I'm not really familiar with non-Arch distros, and I only install a different distro maybe once a year, so I've never dug into the problem. The first thing I do when I install a non-rolling-release distro (usually one of Ubuntu, Mint, or Fedora) is update the software using the package manager. The upgrade process almost always fails in some way and leaves me with a broken system. On the odd installation where it does work, it will then inevitably fail on a future update after a few months of dormancy.
I figure it must be something I'm doing, but I don't know what it could be, as updating is literally the first thing I do.
I have a machine that runs debian stable thats been continually upgraded / updated with debian since 2007. Never had any issues. I think one thing to keep in mind with debian and ubuntu is to not use any ppa's / custom repos since most of the time people dont maintain them as dilligently as the main repos. Also dont try to jump back and forth between stable and experimental.
Girlfriends OpenSUSE for example ran fine for a few months and now its stuck in an infinite update/upgrade loop or whatever it is trying to do - I really dont have the time to look into it. But the problem is, zypper cant update but really wants to update. Most likely it is conflicts between different repositories, or unavailable shit from some repository. But how useful would OpenSUSE be without the ability to play mp3 files?
So all her programs are now outdated, getting older and older.
Ive seen the same on most .deb based distros Ive tried - failure to update/upgrade a package or collection of packages - breaks the entire system.
Oh you ran apt-get install something previously? Well now that failed, and I will not let you continue until you resolve the issue, the other package will be REMOVED, and the current package cannot be installed, but for an update is who the fuck cares stfu ragequit* * (installs archlinux).
Well put, that mirrors my experience. A year or two ago (recent history), I had an issue where I tried to install a 32-bit package on a 64-bit system accidentally. apt (or apt-get, or deb, or gdebi, or aptitude, or synaptic, or Software Update, or Software Center, or something else, I forget which one) detected conflicts and the default action had I pressed enter would have been to uninstall every 64-bit package on the system that conflicted with that 32-bit package or any of its many dependencies. That's not sane. Hopefully they've fixed this by now.
I've had apt-related troubles in the past, but they almost always were caused by the use of custom repositories/PPAs.
Further, it might seem arcane to have to type "apt-get install -f" to install dependencies for an autonomous .deb package, but I'm not sure how different that is from having to learn, for example, the myriad switches for pacman.
Pacman doesnt leave me with a broken package-manager when a package fails to install. For example
pacman -S thatprogram
and if it fails, then next time I do pacman -S otherpgoram or pacman -Syu
it goes fine, there is nothing from thatprogram which complains or bugs me. Unlike Ubuntu/Debian where
apt-get install fail
and thus everything I try to do now will fail unless I resolve the fail.
pacman also has far less switches,
at least I know only of -Q -Qs -S -Ss -Sy -U and -Ql | grep for something Im looking for. Thats all I need to know really. Like 4 or 5 switches/commands.
But look at apt,
apt-get {things here but not search!} {ugh so many switchs here}
apt-{what its not really called search!?}
dpkg-{jesus-christ-so-many-options}
> and thus everything I try to do now will fail unless I resolve the fail.
This is exactly why I detest apt.
Our products at my last company ran Ubuntu and Mint. I detested dealing with the package manager.
I wrote so much stuff to get around apt when dealing with software packages. I wrote a Maven-based update system (with user-friendly wrappers) for pulling down updates on customer units, and my boss wrote an SVN-based solution for internal dev work. I wrote our own validation system to determine if a package can be safely installed, and if it passed, it'd get shoved in with dpkg -i --force-all, because I didn't trust dpkg to do it itself. I wrote a meta-package system (basically a tarball of debs + a manifest file) so I could guarantee atomic installation (read the manifest, verify every deb in the metapackage, and abort before installing anything if even a single package fails verification).
> pacman also has far less switches, at least I know only of -Q -Qs -S -Ss -Sy -U and -Ql | grep for something Im looking for. Thats all I need to know really. Like 4 or 5 switches/commands.
> Ive seen the same on most .deb based distros Ive tried - failure to update/upgrade a package or collection of packages - breaks the entire system.
Which means you didn't try Debian stable. deb based or not doesn't matter, all that matters is distribution policies on packaging, migrations and releases.
> Havent tried Debian stable, but then again, I dont live in 1999 either.
> What is the nginx version for Debian stable, is it even in the repositories yet?
It's none of my business to stop you from hating Debian. Just don't blame ".deb based distros" as if them being deb based was the reason of your suffering.
> ... and always had false starts with Fedora or Ubuntu. Usually the package manager would break and everything would fall to pieces. I ended up installing Arch as a Subversion server for some personal projects, and that's what finally made it click.
Glad you've had a good experience with Arch. I've been using Debian and derivatives for years. I've occasionally seen hiccups with apt but I can almost always trace them to network trouble rather than the distro itself. In the other cases, reading the manpages or googling a bit helped unbork the system. It sounds like you didn't exercise your sysadmin/debugging skills.
Yes, part of it is ignorance on my part. I'm not familiar with DEB or RPM package management conventions. For example, on RPM systems, it turns out you can install two RPMs of the same name, but different versions! And this is the default instead of upgrading! Boy, that took ages to debug.
But really, installing a system and using the system-provided package manager to perform a system update should "Just Work." And my experience is that this almost always ends in failure, and usually in a broken system. I dunno.
Arch has been pretty reliable and straightforward for me, but I wish it had a set of packages you could install to get a full-featured desktop. A curated set that included a DE and fonts and programs, or something. I like arch's install process for weird systems where configuring disks and networking would be difficult in most other distros, but once that's done I want to move back to easy street. I don't want to have to customize everything.
Maybe something like that already exists? I can't be the only person who has this "wants custom X but generic Y" problem.
You can try evo/lution installer. I've used it and it lets you install the basic arch OS and then lets you choose a DE which it configures for you. It also install basic things such as a login manager and network manager. It also gives you a vanilla arch install.
I think Antergos is a bit like what you are asking for.
Such an approach is usually looked down upon in the Arch community. I hate that it is. I love Arch. I love the package system, I love the wiki, I love everything about it. What I don't love is redoing everything each time I have a fresh install. Yeah, it probably takes 10 minutes to get a working system up and a day to get everything as I want it, but I hate just knowing I have to do it all again.
I really want a distro based on Arch which gets over those fears. Again, Antergos probably fits and papyros.io looks really interesting, too.
> Such an approach is usually looked down upon in the Arch community.
That's really too bad, because I think a method for sharing curated sets would be great. Maybe the problem isn't so much that sets would be bad, but that it might cause people's expectations of arch to change. Like, if you do everything yourself and it breaks, it's your fault, but if the system does it for you and it breaks, now it's arch's/the maintainer's fault. I don't know if that would happen, but it seems like there might be some danger of a cultural shift.
Anyway, Antergos... It looks like it uses Ubiquity to install, so I'm not sure it seems any better than anything else I've tried, but I'm only just starting to check it out so maybe there's more to it.
[edit] oh, duh, I see now that Antergos is arch-based. It looks nice. I'll have to see what the text-based installer is like.
I think Manjaro is actually the most popular distro based on Arch. Has versions with XFCE or KDE pre-installed, and has packages for many others (Cinnamon, Enlightenment, Fluxbox, Gnome, LXDE, LXQT, MATE, etc). Main difference from Arch is that it maintains its own repositories and adds Arch updates only after they're deemed reliable. (Although if you'd prefer to use Arch repositories I think you can install Manjaro and convert it into plain Arch system.)
I agree that it's hastle-free, vanilla and up-to-date, but as a long-time Arch user, I feel the need to warn other: You will need to read on how things work to use it. There's a price to this huge flexibility, and it's learning how to make use of it.
Once you're past that initial stage, there's really no downside any more.
> The Linux philosophy is 'Laugh in the face of danger'. Oops. Wrong One. 'Do it yourself'. Yes, that's it! -Linus Torvalds
Surprisingly, Linus is actually quite critical of the more technical Linux distributions. Here's another quote from him:
> And when it comes to distributions, ease of installation has actually been one of my main issues - I'm a technical person, but I have a very specific area of interest, and I don't want to fight the rest. So the only distributions I have actively avoided are the ones that are known to be "overly technical" - like the ones that encourage you to compile your own programs etc.
> Yeah, I can do it, but it kind of defeats the whole point of a distribution for me. So I like the ones that have a name of being easy to use. I've never used plain Debian, for example, but I like Ubuntu.
I don't think Linus opinion is necessarily against Arch. I am using Arch precisely because I don't want to fight my OS!
I also found Gentoo, let alone Linux from Scratch, very complicated and time consuming. The nice thing about Arch is that it hits the sweet spot between simplicity, technicality and easiness. In my opinion having vanilla binary up-to-date packages is the way to go.
I completely agree. Arch is one of the more "technical" distributions to get to a desktop. Particularly when compared with Ubuntu and such like. But once the desktop is running, Arch is one of the easiest distros to maintain.
For example:
1) despite the many criticisms levelled at a rolling release model, I've found it to be more reliable and generally less painful than upgrading between Debian / Ubuntu (for example) releases.
2) pacman is, in my personal opinion, a nicer command line tool than apt-get / apt-cache / aptitude / etc. I do quite like some of the RPM-based tools though (yum, zypper, etc).
3) Adding 3rd party repos in Arch is probably on a par with PPAs, however yaourt (AUR) almost makes it completely unnecessary to ever look for another 3rd party repo again.
That's not to say everything is perfect though: Occasionally updates need to be applied manually; being bleeding edge can be a double edged sword sometimes; and I really did prefer the old BSD-inspired rc.conf over the new system of various files scattered around /etc and the much debated systemd. But each to their own on that one.
Arch is awesome and I've used it at home and work for years, but the rolling release cycle means that you must keep on top of upgrades.
I was once a little too slack (no pun intended) and had several hundred packages that needed upgrading and there was simply no easy way of making it work. It was around the time of the systemd introduction, so that may have been a significant complicating factor.
Yes, the systemd introduction was a special time in Arch land. A lot of systems got broken in those days. The only comparable time I can recall right now is when they dropped GRUB Legacy. People who upgraded carelessly were unable to boot.
These are the two single big events in 8 years or so I've been using Arch.
And the /bin symlinking... systemd and GRUB legacy were bigger. But about annually there's something arch land that will break even the most minimal installations if you aren't careful.
I really wish Arch had something similar to Gentoo's "eselect news" system that actually displays these notices alongside system updates and lets you query news articles from your terminal.
Exactly. You're not supposed to pacman -Syu without looking. Part of your duty when you choose to install Arch is to take a few minutes every week to keep on top of what's new. Call it basic hygiene.
Yet none of the setup guides really stress this and there's no preferred method to keep up to date on things. Arch really needs a better system for making it obvious when nontrivial updates are about to happen.
Note, I use pacmatic, which pulls the news feeds, but it took me getting bitten a few times before I learned to do this.
For myself, I appreciate the fact that almost all of the Arch packages are 'un-fooled-around-with'.
Very often, I've run into issues with Ubuntu packages solely because they have their own strange versioning, and roll certain patches into weird versions.
I think it boils down to the management philosophy:
Ubuntu tries to make it 'as easy as possible', whereas Arch says, 'if you have a bug or problem, take it up with that program's developer'.
I've used both, and I recently switched from Gentoo to Arch when I built my new desktop last month.
While I prefer the way Gentoo does certain things (slotting is wonderful, eselect is the best alternatives system I've seen, eselect news beats checking Arch's website for breakage warnings, and Portage overlays beat the pants off of Arch's pacman repos vs. AUR dichotomy), I'm sick to death of compiling everything. I actually got my Arch system up and running in a single night. Gentoo would've taken the whole weekend.
Also, if you forget to update for a while, it's much easier to drag an Arch system into the present day than it is to do the same with a Gentoo system.
Google uses it for ChromeOS, because nothing comes close to it's customizability. you should probably send that link over to those guys. they might not know it isn't cool to use Gentoo.
[] Do you enjoy building everything to the minutest specification, regardless of bins being available?
[] Do you like the idea of building/rebuilding the entire system into your hardware instead of performing a quick fresh installation?
[] Let's say you've been lazy with updates -- would you mind emerge ragging the CPU for 15+ hours?
(Disclosure: I love Arch but (believe it or not) I've been die-hard Gentoo for a couple of years, even got two versions of the same T-Shirt -- which I feel is appropriate)
It was no.3 that eventually killed Gentoo for me. Took a three week holiday and it must've been a busy release period or something, because when I came back I had an unholy hell of packages needing updating.
The worst part was there were multiple dependencies that just wouldn't compile. I fixed the first couple, but when you have a 3hr+ OpenOffice compile fail on you inexplicably... I just want my computer to work without worrying about all that! It used to be that people would say "Then why are you using Linux? go back to Win/Mac", but nowadays a perfectly stable, maintainable and fast Linux is easily achievable. I think this is the major reason behind Gentoo's declining popularity recently.
Having said that, I learnt a huge amount about Linux just by unbreaking all the bizarre things that risky Gentoo emerges did to my system :)
Ultimately, it all comes down to how I'd rather spend my time. Hours and hours every month running a big emerge on Gentoo, or a few seconds in pacman on Arch? I have work to do on my computer and eventually the process of just running the Gentoo updates was occupying too much time that I could be spending on actual work.
This too is why I switched to Arch for my new desktop I built last month.
Forget to update for a while? Good luck getting your system into a sane state ever again. Better yet, if you go a while without updating, you'll wind up with package conflicts in your dependency graph (the worst is the dreaded "package X and package Y both insist on different versions of the same dependency"), and it'll take you forever to manually untangle them.
I've been using Gentoo as my main since 2004 or 2005, though I had some Arch experience from my work desktop at my last job (I installed Arch on it because I wanted something Gentoo-like but wasn't about to risk Compile Hell when I had deadlines to pay attention to). The decision to switch wasn't an easy one, but it's been very rewarding. I'm still of the opinion that portage is the best package management system I've used (it's not just for compiling stuff from source: there's no reason someone can't build a binary distro using portage), but pacman is a pretty damn close second, and I'll take pacman's lack of flexibility over Compile Hell any day.
I still have conflicting thoughts about systemd. I actually ripped it out on my old work computer and replaced it with OpenRC (to fulfil my goal of "something Gentoo-like but without all the compiling"), but on this machine I decided I'd keep systemd around for at least a few weeks because I wanted to get out of my comfort zone and learn something new. Now, I'm not sure what to do. I've discovered there's a bunch of stuff to really like about systemd (in particular, "systemctl status" is amazing), but on the other hand, I really miss OpenRC, and I happen to prefer its idioms over systemd's (I'm sorry, but you will never convince me that INI-style syntax isn't the ugliest thing ever).
Soon to be 10 year gentoo user. I've toyed with various update frequencies, and have found that multiple weekly updates is a good way to stay sane. That said, there are those time where you just have to help an emerge see itself through.
I originally came to learn, but I've stayed for the USE flags. The number of times I have needed or wanted some feature on a package in arch (which I use for my linux vms) and have had to dig through the documentation and set up a compile environment for a package for an hour is absurd when I realize that all this is solved in 30 seconds by setting the right USE flag on gentoo.
Gentoo also has the best/most up to date python support of any distro I have found.
Also I've found PKGBUILDs very simple to tweak if you need something extra. If you do start using the AUR, I recommend getting yaourt and letting it take care of that for you. I rarely use pacman directly, as yaourt takes the same flags and works for the arch repos as well as the AUR, plus it allows you to search for packages by omitting -S.
Personally I'm not a huge fan of Gentoo, I used it on my desktop years ago and ended up breaking things weekly when portage got cranky. Currently I manage a few thousand gentoo servers, and find it tedious and frustrating at the best of times. Clients refuse to upgrade for too long, so upgrades generally mean a reinstall. And as customizable as it is, if you wanna do something outside portage, everything will inevitably break.
Good to hear from such a long term user! I can't really see my enjoyment for the system waning any time soon; feel pretty at home with Gentoo. I hear that a lot about staying for the USE flags, and it's becoming a similar story for me.
I'll keep that in mind about the update frequency.
My latest gentoo discovery: sys-fs/static, took me some time though to setup the system. Server runs for couple of months now without any problems. And completely free of systemd, pulseaudio, and udevd.
Surprised to see a tutorial on Arch linux on front page.
As a sys admin, I appreciate the effort to tune everything to your needs, and Arch has its place there for sure. As a user, I just want things to work. So I usually stay away from tweak-everything-you-can distros.
So now on one hand you have the distros that do pretty much everything for you (ubuntu style), and on the other you have to do the tweaking for yourself(arch, gentoo, slackware, etc). I, for one, would prefer some middle ground - eg, a system being able to predict the most optimal setup for my box, but also allow me to tweak it should I prefer something different.
RHEL/CentOS seems to be slowly getting this, and I enjoy its tools quite a lot (tuned daemon for kernel params optimization, kickstart for package customizations, etc.)
I use arch for few years already and I've found out that actually one does not need to make any tweaks - in 99% of cases, just install the package you want and it just works. The only thing I've replaced is font rendering pipeline -- I use the outstandingly beautiful bohoomil's repository[0].
I recently had to reinstall my arch and was pleased to find this repo. It is much easier than installing everything from AUR and trying to keep it consistent. And my fonts look even better now.
What you described is basically slackware. If you install the whole image (roughly 6 gb) you get a working desktop machine that's easy to keep up to date (just run slackpkg update once in a while). Yet when it comes to tweaking, it's easy, because everything is a shell script or text file, no binary blobs of weird file formats. It actually reminds me a lot of FreeBSD.
Idk, 6gb seems excessive. I'd prefer a small footprint system (eg, my centos VM images take 1GB after installation), and to do the tweaking during installation.
I thought so too, but then I reminded myself that my laptop has a 256 gb solid state drive. 6 gb for a fully loaded system is pretty small in comparison.
For those of you interested in running ArchLinux on Macbook hardware; I find this guide/overview pretty comprehensive: https://gist.github.com/terlar/6143325
Installing Arch Linux is pretty difficult task when you atempt to do it for your
first time if you are not familiar with command line and basics of linux.
But I would suggest you to install Arch Linux as you will gain a very good
insight on how linux works.
then
If you got no idea what dd is, arch ain't for you friend!
Came here to post the same thing. Very strange 180 there. I had no idea what dd was when I first got into Arch, but if I had let that deter me, I never would have gotten past the first step. I also don't think understanding dd is very critical to being able to use Arch as a whole.
I agree—the problem is that it does not logically follow and is contradictory, but he is right that knowledge of the CLI makes things a lot easier. However, I'm with you in that I don't think there should be any pressure not to try it anyway. I have a custom-built desktop machine that I can install anything I want on, so if something breaks or falls over, I can simply reinstall another OS (while getting real work done on my laptop).
That was my reaction, too. Out of curiosity, I searched the beginner's installation guide (https://wiki.archlinux.org/index.php/Beginners%27_guide) for dd, and there's no mention of it. The man page for dd was more informative. It's a standard convert and copy tool that I've never used despite pretty much living in a terminal for the past two years. I still think arch might be for me.
Please add 2014 to the submission title. Also, Since Arch is a rolling release distro, it is encouraged to always refer to the latest documentation over at the Arch Wiki.
LFS is probably as close to DIY as possible, however it still requires you to compile everything. I suppose Arch is DIY while still providing binary packages (faster installation) and a more or less standard linux installation while still allowing you to customise it to you heart's content. Gentoo is probably in-between these two, although I believe Gentoo is a more opinionated distribution than Arch regarding how the system is structured (see custom init, custom udev etc). This is not bad, but different. I am not a Gentoo user so please correct me if my assumptions are wrong. All these 3 options, however, encourage the user to familiarise themselves with the system internals, which is a good option if one wants to dwelve a bit deeper into linux. Arch is probably the most accessible of the lot.
The reason Gentoo forked udev is that they have a commitment to user choice. That is, you as the user gets to decide everything. If you want to use udev, fine, if you want something else, also fine.
So they created eudev because it was becoming more and more of a hassle to dig udev out of systemd for use with non-systemd installs.
And i think LFS has also adopted eudev for their "traditional" book now, because they ran into the same issue.
Something like this should really give pause for thought in the "init" debates, as it is a stark reminder that systemd has gone far beyond being just about init. And thus all those videos demoing systemd vs "random init of the day" boot times end up being a distraction rather than enlightening.
A good Arch alternative is Void Linux. It's almost like if BSD and Linux had a child. I've moved away from the "assembly-required" distros, but I had a lot of good fun playing with them and did learn a lot.
> Gentoo is probably in-between these two, although I believe Gentoo is a more opinionated distribution than Arch regarding how the system is structured (see custom init, custom udev etc).
Gentoo offers even more freedom of customization than Arch. Choose your init system, your udev variant, your main Python version, set around 100 build time options for ffmpeg and so on.
LFS is great for learning and looking under the hood, but for a system that you actually use daily, Gentoo has no rival.
If customization is a goal I'd look into Nix(OS) as well. Source distro with binary caches for the default build options. Oh, and your setup becomes trivial to reproduce (just copy the config files). Oh, and you can easily revert your machine to a previously known working state if you screw something up.
Yes, but at the end of it all, you have a fully supported distro with Arch. And by "supported", I mean that there are regular updates for your packages, very good instructions to learn stuff, an excellent support forum, etc.
The ALFS side-project may be a nice way to bootstrap a new distro though. Basically it automates the process of building a LFS install via the use of scripts that parse the LFS book markup.
I'm following a distro, Gobolinux, that used that to bootstrap their latest release. And supposedly it took more time to get the Consolekit+polkit+whatever rigamarole working so it could offer a desktop.
Yeah, it's the most do-it-yourself but is pretty difficult if your not extremely comfortable with Linux. I tried to do it a few months back (without too much C knowledge) and couldn't figure out how to cross-compile/link libraries I needed. I got it to boot into a shell (without login). At this point, I could probably do it, but I prefer sticking with really minimal distros like CRUX and Void.
So glad to see this on the front-page of HN! Arch is a great distro but, like Linux in general, is struggling for support and promotion.
Now, I'm no believer in "Linux on the Desktop" any time soon (will it finally be 2015? :P), but I'm a firm believer in Linux as a multi-purpose tool that any hacker worth his/her salt should not only have in their toolbox, but also be proficient on. And not just for server usage, which is a bit more common, but on the desktop. I learned a LOT about computers from running distros like Gentoo and Arch, where you have to make decisions and learn the process and components that make things tick.
I highly recommend Arch. It's a super flexible and clean distro, that requires a bit more upfront investment to get installed, but I find it easier to maintain, with the biggest and friendliest support community, and very customizable.
Only tangentially related, but I find it weird that guides like this still suggest seperate root, home, boot and swap partitions.
What is the point of separating / from /home? I know the /boot thing is due to max size stuff on certain modes of boot, but shouldn't be required for UEFI?
And I really don't understand why you'd want to run swap. On a modern machine with huge amounts of RAM, if a process is using enough RAM that you need to start swapping it to disk, I'd rather just invoke the OOM killer and kill the badly behaved process, instead of slowing my system to a crawl while it tries to access memory at disk speeds.
There are a few reasons they split off home and root. It makes recovery simpler, and allows you to share the partition between multiple environments - which is useful if you dual boot.
I personally rarely make a second partition for home, but I always make a separate partition for /boot. GRUB requires an separate EFI partition to install (which is kind of dumb), and if you decide to encrypt your disk, the boot directory cannot be encrypted.
I think the reason they put swap in these tutorials is that many times people install linux on low-powered machines that require the swap because of limited memory. It's not a requirement to install linux, though. I never run it on installation.
I'd say the advantage of seperating / and /home is that it makes a re-install more painless. You can keep your personal data and config without copying it to another drive and just reformat / alone.
And swap is required if you want to use suspend to disk which is the reasoning the article has.
I have managed to switch from a different distro to Arch without losing my /home by deleting everything other than /home. I imagine it would be tougher if the distro I switched to wasn't Arch.
Some time ago I messed around and somehow managed to break my Ubuntu system so that it wouldn't boot. Instead of bothering to work out how to fix it I just re-installed (with a different version number) and kept my old /home partition. It all worked out of the box.
Yeah, what I meant was that I had my /home on / rather than on a separate partition, and managed to install a completely different linux distro anyway without losing it.
> I find it weird that guides like this still suggest seperate root, home, boot and swap partitions.
The classic reason is preventing space / inode exhaustion of / by user accounts and preventing time of check, time of use vulns. Tough the latter have since been addressed in other ways [1]. There's also a certain amount of convenience and cleanliness to separating system and data that way.
I trust Arch far more than other distros, but I can't really use it in a production environment. Unless you take the care to automate the upgrades every 1-3 months, your machine will quickly require a handful of hacks to fix. As a gentoo lover, this isn't very difficult, but when you have, say, a customized digital audio workstation for a client, that needs to "just work" during upgrades (which, debian/KXStudio handles admirably), yaourt -Syu is like rolling the dice whether or not things will continue to build.
AUR aside (even though, as an expert, it's a fantastic resource), the repositories need keys trusted before they can be used, but nowhere in the documentation is this mentioned. When browsing the forums, you are often encouraged to not use keys, and just do everything unsecured.
I no longer trust Debian or Canonical, so I'm trying to migrate to a distribution not registered in (or under the control of) a Nation State involved in Five Eyes agreements, which is pretty much limiting me to Manjaro, Arch and Gentoo.
Most interesting thing I want to see was bash script (or other way) to automate install and configure the post-installed system, like this gist https://gist.github.com/julionc/4162347
I used aui for my recent arch install, and it's helpful for things you might forget (like installing wpa_supplicant, wouldn't have bought an ethernet cable for my very first install...).
I'd recommend figuring out the steps in the FIFO section yourself, as it is largely dependent on how you partition your system, and one would benefit from learning about things like mkinitcpio.
TFA and your blog post both mention SLiM as a login manager, according to the Arch wiki[0]:
"The SliM project has been abandoned (the project homepage is down, leaving a github mirror), and is not fully compatible to systemd, including logind sessions. Consider using a different Display manager or Xinitrc."
Yes officially it is, but notice the date the post was made. It was before the SLiM abandoned :-) I use my self and would recommend LightDM instead of SLiM now. But thank you for pointing this out. I'll post new arch install article one of this days ^_^
I would also like to say that I've been using Arch Linux since 2011 and it works for my development needs. I'm using it with 3-monitors on two separate "GeForce GT 610" video cards. I've tried many other distros including Ubuntu and Fedora both GNOME/KDE. I prefer Arch + XFCE + LightDM my self :-)
I went with Antergos (http://antergos.com/) and I love it. The install is hassle free also. It's fairly light, looks good, and gives you plenty of DE options without getting bloated.
I REALLY wanted to like Manjaro, but it was too buggy. When it was running, it was a smoother, more functional GUI than my barebones Openbox window-manager, which was great.
But... During the past 5+ years, I rarely ever had a problem with Arch Linux that is not 100% my fault. Manjaro... it had some problem every few days; updates DB would become corrupt, random freezes, login GUI would stop functioning...
I suppose my main complaint was that Manjaro could be great it it simply eased the installation and setup of Arch Linux. I do not understand why they use a completely separate repository. Hopefully they continue to improve!
Unfortunately, I've also had a few problems with Manjaro. I still think it is great and would recommend it, but it certainly is a 'plan to move on' distribution for me. I think I'm going to try Antergos next. I'm not quite ready for the Arch install. If I had a laptop with an Internet connection next to me, I'd probably have a go, but being a single comp desktop...will try Antergos for a few months.
I have Ubuntu on one machine, Mint on my work desktop and Manjaro on another.
Manjaro is by far the most stable and problem free. It required a bit of tweaking to set up, and there have been a couple of times when I needed to run a command to reset the package manager to a usable state though.
(To be fair I push the Mint box hardest in terms of installing stuff and tweaking things. Its only been good since I went to XFCE as Cinnamon tended to hog the CPU randomly).
I'd advise against it. There's no point in trying arch just for the sake of it. My advice, based on my own experience:
- keep using the distribution you know
- dig inside its components to understand what they do
- once you understand what they do, try using an alternative...
- ... until you ultimately realize you don't need it that much, or just want to see what it's like without this component, remove it
- once you get deep down in the customization of your distro you start to realize that the top-down approach is interesting but there'll always be something you didn't know. At that point, it makes sense to try the bottom-up approach: start from nothing, and install the components one by one. The point is that since you've already dug inside your previous distro you know what those components are, whether they are needed or not, and what the alternatives are. You won't spend time understanding these and spend more time on the actual building of a distro. This is where Arch comes in.
Also, if you want to use Arch in a dependable way, subscribing to arch-announce is important[1]. It's a low traffic mailing list that notifies you of any manual steps you may need to take during a package upgrade.
(I've been using Arch for years, both at home and at work. I love it.)
[1] - https://lists.archlinux.org/listinfo/arch-announce