DEV Community

Discussion on: Why I always recommend Arch Linux

Collapse
 
ysgard profile image
Jan Van Uytven

Arch is great until it breaks, and it will break. If you want to deepen your Linux skills at debugging and repair, or just deepen your knowledge, there's no better distribution. But if you're just looking to get things done, Debian/Ubuntu/Fedora is a more stable option.

Collapse
 
wpdevvy profile image
wpdevvy

This is from my experience.

I have a laptop with Arch and RPi with Raspbian.

RPi - There are breaking changes if I directly upgrade from jessie to stretch and a clean install is recommended

Arch - The only time I broke my installation was when I accidentally switched off the machine during an upgrade. It was easy to fix too. One more time, GTK broke the sliders. A bug report was submitted and was fixed within a week upstream.

I think Arch is fair enough, if one has time to maintain one's system in case it breaks.

Collapse
 
ysgard profile image
Jan Van Uytven

That is a fair assessment. Arch requires commitment. That's why I didn't agree with the statement that Arch is for everybody.

Collapse
 
mnlwldr profile image
manuel • Edited

I'm on Arch at my workplace since 6 years and it never breaks. Same for my ThinkPad. But my colleagues with Ubuntu have every dist-upgrade problems ..

Collapse
 
jvanbruegge profile image
Jan van Brügge

The point I am making is that Arch does not break. In two years of daily Arch usage, it never failed on me.

Ubuntu on the other hand was hell to upgrade from 14.04 to 16.04. Plus the annoying old versions.

Collapse
 
gaz082 profile image
Gabriel • Edited

The point I am making is that Arch does not break. In two years of daily Arch usage, it never failed on me.

laughs in twice-a-year-chroot to restore system

I actually found this thread when looking the instructions for chrooting to reinstall the kernel. Had to come back here to reply once my system is working. So, three years passed since and still no issues with Arch? Mmm? :D

Thread Thread
 
jvanbruegge profile image
Jan van Brügge

No, not really, two or three inconveniences maybe, but those were quickly resolved.

I had more issued back when I used gnome, because a gnome update would break most of my extensions. But I've since moved to a tiling window manager

Thread Thread
 
gaz082 profile image
Gabriel

Gnome breaking extensions is part of every Gnome update in Arch experience, is a feature, not a bug, LOL. :D

Collapse
 
5chdn profile image
Afri Schoedon

Running Arch for three years without any breaks I could not recover without a quick look-up on Google! <3

Collapse
 
ysgard profile image
Jan Van Uytven

Our experiences differ vastly then. Upgrading from 14 to 16 was very smooth for me the few times I tried it. Arch, however, would inevitably fail some months down the road after a world update. It's not a criticism of Arch per se - any rolling distro (Gentoo, etc...) is risky. The last time it was Xorg that got borked because the proprietary nvidia driver couldn't compile cleanly with the new kernel headers. After that I decided no more gratuitous kernel upgrades, and switched to something more stable.

I agree that the old versions of some of the software available in the 'static' distros is annoying, but it's easily overcome by installing from source, using vendor repos or the cutting edge releases available in repos such as Debian's backports.

When you run at the bleeding edge of everything, something will break. It's inevitable - it's the cost of living with the state of the art. Consider yourself fortunate it hasn't happened to you yet. It has for me, multiple times, and thus I can't recommend it for non-experts.

Thread Thread
 
leob profile image
leob

That's why I argued that beginners should choose something stable like Ubuntu ... great docs and resources and it just works. Did anyone ever try to install ArchLinux on a Mac? With Ubuntu it works and it's not even that hard.

Thread Thread
 
ysgard profile image
Jan Van Uytven

I'd be curious to hear about that as well. I'm trying to install linux on an old macbook pro, but the dual-gpu frustrates me. I can get it running with the nvidia driver, which consumes power and generates a lot of heat, but when I remove the nvidia drivers to force it to use the internal intel GPU, the nvidia card remains powered. Bumblebee/Primus doesn't work in any of the distros I tried: Fedora, Debian or Ubuntu. Maybe I'd have better luck with Arch.

Thread Thread
 
leob profile image
leob • Edited

I did it two times, first on my Mac Mini, second time on my Macbook.

Second time went a LOT easier:

  • first time I used reFIND (boot manager), second time skipped that, just using the Mac book manager (pressing Alt while booting) works fine, the extra hassle of reFIND isn't worth it (first time I messaged around a lot also with creating the partitions). First time lots of fussing with reFIND, grub, "bios" installation and so on and so on (trial and error).

  • first time I had some trouble with video as well (not sure how I fixed that but it was a lot of hassle) and the network (Airport) didn't work out of the box, I had to manually download/compile a driver. Second time (Macbook) all of that was not a problem, PROBABLY because I used a much newer Ubuntu version.

(I think first time I used Ubuntu 12, second time Ubuntu 16)

  • first time I had to install the "LTS hardware enablement stack" (wiki.ubuntu.com/Kernel/LTSEnablementStack) to get proper hardware support (I also had the problem that CPU temperature/fan control wasn't working). Second time, not needed because I used Ubuntu 16 LTS.

I assume you've read the official guide:
help.ubuntu.com/community/MactelSu...

Don't have my macbook model/brand handy but I could give that to you.

All in all the second time things went 10 times easier than the first time.

At the bottom I pasted the notes ("installation instructions") I put together the first time (actually I did the whole process 2 times, talking about "get a life", haha), to illustrate how complicated it was. It was a terrible experience in fact but by now it runs just fine.

Some other links that might be useful:

frozenindustries.com/2012/11/04/ub...

askubuntu.com/questions/43939/macb...

lifehacker.com/5934942/how-to-dual...


My "first time" installation notes:

Mac mini 6.2

PREPARATIONS AND 'BIOS' INSTALLATION

  • preparations:

    • install reFIND
    • download 'ubuntu 12.03 amd-64+mac' iso and burn it on cd (using OSX diskutil)
    • in OSX disk-util:
    • resize HFS+ partition
    • create empty partition 490 GB
    • create FAT32 partition 32 GB
  • boot from CD 'ubuntu 12.03 amd-64+mac':

    • press C while booting mac
    • press SHIFT when setup entering graphics mode, then:
    • press F6, choose 'noapic'
    • choose 'try ubuntu'
  • once ubuntu is booted from live-cd:

    • sudo gparted -> create ext4 partition (disk04) + 2 GB swap partition (disk05)
    • install broadcom ethernet driver (wired):
    • get linux driver (zip file, download beforehand and put on USB)
    • mkdir ~/broadcom ; cd ~/broadcom
    • unzip linux driver file from USB to ~/broadcom
    • unpack source tar
    • 'make'
    • sudo insmod tg3.ko
    • install ubuntu using 'other' option (format the ext4 partition, mount it on /)
    • after install, do NOT boot immediately but edit /boot/grub/grub.cfg: add 'noapic' option at the end of linux boot command for the 'recovery' menu option
    • reboot Ubuntu, and in the reFIND menu choose 'linux' (Tux logo)
    • grub menu now appears; within 10 seconds, choose the 'ubuntu recovery mode' option (which has noapic)

CONVERSION TO EFI BOOT

  • once back in Ubuntu (now started from harddisk):
    • follow item 21-28 from Rod's "mac uefi" page to install EFI-grub (creates a file /EFI/ubuntu/grubx64.efi in the EFI partition)
    • reboot and choose first item from reFIND menu (grubx64.efi)
    • grub menu appears, choose 'recovery' or 'normal' option from the grub menu
    • once back in Ubuntu, check that it's booted in EFI mode: check that /sys/firmware/efi exists

POST-INSTALLATION CONFIGURATION

  • grub config:

    • edit /etc/default/grub and add 'noapic' to it
    • sudo update-grub
  • broadcom ethernet driver (wired):

    • activate with 'sudo insmod tg3.ko'
    • make permanent:
    • copy tg3.ko to /lib/modules/$(uname -r)/kernel/drivers/net
    • add a line containing just 'tg3' to /etc/modules
    • sudo update-initramfs -u
  • add wireless driver (broadcom/AirPort):

    • use System Settings -> Hardware -> Additional Drivers to add the 'Broadcom STA Wireless' driver
    • the option will display 'driver activated but not currently in use', fix: techdc.blogspot.nl/2011/02/ubuntu-...
    • then after reboot it still doesn't work, solution: ubuntuforums.org/showthread.php?t=... i.e.: sudo apt-get update sudo modprobe -r wl sudo modprobe b43
    • then the following is also necessary: sudo apt-get install linux-firmware-nonfree
  • add "Fan Control" to control the temperature of the CPU, as follows:

    sudo add-apt-repository ppa:mactel-support/ppa

    sudo apt-get update

    sudo apt-get install macfanctld

    sudo apt-get install applesmc-dkms

Before installing these packages, you will see messages like these in /var/log/syslog:
applesmc: : read arg fail
After installing the packages, this message should not be there anymore.

NOTE: if you don't install fan/temperature control, then you can get system freezes due to overheating of the CPU.
(indeed this happened to me at least once per day before I installed the above!)

For background see:
frozenindustries.com/2012/11/04/ub...
askubuntu.com/questions/43939/macb...

  • ubuntu classic:

    • sudo apt-get install gnome-session-fallback
    • login -> 'Gnome classic (no effects)
  • install "vim" (sudo apt-get install vim)

  • install "gvim":

    • sudo apt-get install vim-gnome
    • run gvim like this: "UBUNTU_MENUPROXY= gvim" to prevent the error message: ** (gvim:13236): WARNING **: Unable to create Ubuntu Menu Proxy: Timeout was reached
  • passwordless sudo:

    • run "sudo visudo"
    • add line: user ALL=(ALL) NOPASSWD:ALL ('user' is your user)
  • create application/task shortcuts on panels (taskbar/menubar), 2 methods:

    • right-click panel while holding ALT key and select 'Add to panel ..' - you can then e.g. add "show desktop"
    • drag & drop an application from the 'Applications' or 'Places' menu to the desktop or directly to the panel
  • keyboard: System settings -> Layout -> English (US)

  • workaround for bad screen colors/dithering: use "suspend" option (make a keyboard shortcut for it)

    (this problem is not present under BIOS boots but only under EFI boots)

  • fix screen resolutions/displays (note: this is only needed when using EFI boot -
    when using BIOS boot the resolutions were okay already):

    • use "cvt" to generate 'xrandr' parameters for the desired resolution
    • use "xrandr --newmode" with the cvt-generated parameters to add the new mode xrandr --newmode "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
    • use "xrandr --addmode DP1 1680x1050_60.00" to add/activate the new display mode
    • create /etc/X11/xorg.conf (contents: see xorg.conf.dp1 file) according to: wiki.ubuntu.com/X/Config/Resolutio...

PROBLEMS AFTER UBUNTU KERNEL UPDATE (Linux kernel updated from 3.2.0-29 to 3.2.0-38 by automated update)

After this kernel update, the Broadcom wired (Ethernet) AND wireless drivers both stopped working.

  • solution for wired (ethernet) driver:

    • moved two 'other' tg3.ko-drivers away (necessary?): $ sudo mv 3.2.0-29-generic/kernel/drivers/net/ethernet/broadcom/tg3.ko ~/lib_modules/3.2.0-29-generic/kernel/drivers/net/ethernet/broadcom/ $ sudo mv 3.2.0-38-generic/kernel/drivers/net/ethernet/broadcom/tg3.ko ~/lib_modules/3.2.0-38-generic/kernel/drivers/net/ethernet/broadcom/
    • recompile and reinstall driver into 3.2.0-38 kernel: cd broadcom/Server/Linux/Driver/tg3-3.124c/ make sudo cp tg3.ko /lib/modules/3.2.0-38-generic/kernel/drivers/net/ethernet/broadcom/tg3.ko sudo update-initramfs -u
  • solution for wireless driver:

    • uninstall, then reinstall the Broadcom STA driver via System Settings -> Additional Drivers
    • reboot system and re-enable wireless networking

NOTE: this needs to be done after every kernel update!! An automated solution using "dkms" is described here:

frozenindustries.com/2012/11/04/ub...

and consists of executing the following commands (see the above web page for details):

sudo mkdir -p /usr/src/tg3-3.124c/src
cd /usr/src/tg3-3.124c/src
sudo tar xvfz ~/broadcom/Server/Linux/Driver/tg3-3.124c.tar.gz
sudo vim /usr/src/tg3-3.124c/dkms.conf
........
sudo dkms add -m tg3 -v 3.124c
#sudo dkms build -m tg3 -v 3.124c
#sudo dkms install -m tg3 -v 3.124c

(last two commands commented out - not necessary at this time?)

However when executing the last 2 commands ("sudo dkms build -m tg3 -v 3.124c" and "sudo dkms install -m tg3 -v 3.124c"),
they failed (see the error messages in: broadcom_tg3_dkms_errors.txt), so I'm not sure if this really works - check when the next kernel update arrives!

FINISHING TOUCHES

  • Install LTS Hardware Enablement Stack (wiki.ubuntu.com/Kernel/LTSEnableme...
    sudo apt-get install --install-recommends linux-generic-lts-quantal xserver-xorg-lts-quantal libgl1-mesa-glx-lts-quantal
    then change and recompile Broadcom ethernet driver:
    ubuntuforums.org/showthread.php?t=...
    (see also changed sources under: setup_notes/broadcom/tg3-3.124c_changed_sources - note: tg3_flags.h is auto-generated by "make")

  • install Microsoft fonts, from Ubuntu software center or using:
    sudo apt-get install ttf-mscorefonts-installer

  • Desktop configuration:

    • see: help.ubuntu.com/community/PreciseG...
    • install the Gnome Tweak Tool: sudo apt-get install gnome-tweak-tool and access it via the Applications menu: Applications -> System Tools -> Preferences -> Advanced Settings
    • optionally install Gnome conf editor: sudo apt-get install gconf-editor
    • bring back the Thrash icon on the desktop: gsettings set org.gnome.desktop.background show-desktop-icons true gsettings set org.gnome.nautilus.desktop trash-icon-visible true [OR simply do this through the Gnome Tweak Tool]
    • disable overlay scrollbars:
    • type the command: echo export LIBOVERLAY_SCROLLBAR=0 >> ~/.xprofile
    • logout and login
    • make window borders thicker to make window resize easier:
      ubuntuforums.org/showthread.php?t=...
      -> use Applications -> System Tools -> Preferences -> Advanced Settings (Gnome Tweak Tool) to see which Window Theme is used
      -> edit the XML file for the theme under /usr/share/themes (make a backup first), e.g:
      sudo cp /usr/share/themes/Ambiance/metacity-1/metacity-theme-1.xml /usr/share/themes/Ambiance/metacity-1/metacity-theme-1.xml.backup
      sudo vim /usr/share/themes/Ambiance/metacity-1/metacity-theme-1.xml

      -> logout and login

As I said, crazy stuff, just to get a dual boot Mac working.

Thread Thread
 
databasesponge profile image
MetaDave 🇪🇺

It sounds like an interesting hobby, I guess. I found that nothing I had to do on any form of Linux actually helped me to develop software, though.

Thread Thread
 
leob profile image
leob

I wouldn't really call it a hobby, it was something I undertook and which in hindsight consumed way to much time, especially the first time around ... second time it was a piece of cake though.

What's your point about Linux? In my opinion Linux makes for an ideal developer system, unless you have no choice but to run OSX or Windows (i.e. you need to develop OSX/iOS or Windows software).

Thread Thread
 
databasesponge profile image
MetaDave 🇪🇺

Well I guess it's ideal if you don't mind spending so much of your time on it.

As a developer, I feel like working on Linux is a bit like being a taxi driver who has to spend time continually tweaking and maintaining their car, and every now and then the car won't start in the morning and you need to spend 15 minutes on doing something to it. That's not what taxi driving is about.

I used it (Ubuntu I think) until I was told I had to edit a text file in order to be able to increase the size of a grab point on a window in order to be able to resize it to make it usable, and the text file just didn't exist. At that point, I thought "I do not have time for this shit", and bought a Mac.

Thread Thread
 
leob profile image
leob • Edited

Haha, I like that analogy, a taxi driver who has to fix their own car.

In my experience it doesn't have to cost so much time ... system maintenance on a mainstream distro like Ubuntu is simple and does not need to take more time than on Windows or OSX. You can customize if you want but you don't have to babysit it.

I recognize your story about the border width, I tweaked that same file to make the border draggable for a mere mortal (I think it was called something like X-Windows/Metacity).

Flipside of the coin is that you CAN customize everything about the OS, with OSX or Windows if there's something about the OS that you don't like then you're out of luck. Hate the "Metro" interface on Windows 10 ? You're stuck with it. Don't like "Unity" on Ubuntu? Just dump it and install Gnome (takes less than 15 minutes, if your connection is slow).

Nowadays I'm mainly using OSX primarily because for one client I had to develop/test an iOS app, so you have no choice really ... I'm used to OSX now but there are still a few things that annoy me and that in Linux I would just have tweaked so that it works the way I want.

Last but not least it's a fast and efficient OS, and the Ubuntu package manager (installing software) is superb (although nowadays on OSX there's Homebrew, which works quite well).

Most important for me is that we have choices, that's a good thing.

Thread Thread
 
webreflection profile image
Andrea Giammarchi

You have ArchLinux everywhere or archibold.io to install ArchLinux pretty much wherever you want.

medium.freecodecamp.org/installing...

Thread Thread
 
leob profile image
leob

Okay cool, glad to hear that ArchLinux has so many fans.

Thread Thread
 
webreflection profile image
Andrea Giammarchi

Mine was just a hint on how to install on a Mac with just an ISO or a single bash line.

I've used most distros but ArchLinux has greater freedom thanks to AUR.

I can write (and I did) software for my own OS, and it's on GitHub, how cool is that?

Everything else is the same and the usual boring fan-boys comments I'm not interested in.

Ubuntu works for you? Good, I'm happily in ArchLinux since 2014 and I'd never change it, combined with GNOME.

Have a nice weekend.

Thread Thread
 
leob profile image
leob

You're right, if you're happy with something and it works for you, then why change. Besides, there's almost never a situation where you can say "XYZ is the best", it always depends on the situation and on one's preferences (and on what you're used to).

Collapse
 
richjdsmith profile image
Rich Smith

I'd make the argument that you're just lucky then. But I think it is fairly safe to say, it breaks for a lot of people - it certainly did for me. Things were going just fine, and then they wern't.

I've never had that experience with Ubuntu.

Collapse
 
omidmamadi profile image
Omid

when i installed arch after few year of using debian base distro's i feel in love with arch, literally it doesn't break it's much more cooler than ubuntu, installing stuff and configuring it is easy, but installation part it's little bit tricky