I've been using Linux as my main OS for a couple of years now, first on a slightly older Dell Inspiron 15. Last year I upgraded to an Inspiron 15 7510 with i7-11800H and RTX3050. Since purchasing this laptop I've used Manjaro, Debian 11, Pop OS, Void Linux, Fedora Silverblue (37 & 38) and now Debian 12. I need to reinstall soon since I've stuffed up my NVIDIA drivers trying to install CUDA and didn't realise that they changed the default swap size to 1GB.
I use this laptop for everything - development in C/C++, dart/flutter, nodejs and sometimes PHP. I occasionally play games on it through Proton and sometimes need to re-encode videos using Handbrake. I need some amount of reliability since I also use this for University.
I've previously been against trying Arch due to instability issues such as the recent GRUB thing. But I have been reading about BTRFS and snapshots which make me think I can have an up to date system and reliability (by rebooting into a snapshot). What's everyone's perspective on this, is there anything major I should keep an eye on?
Should also note I use GNOME, vscode, Firefox and will need MATLAB to be installed, if there is anything to do with those that is problematic on Arch?
Edit: I went with Arch thanks everyone for the advice
You haven't really identified any of your reasons for leaving the previous distros behind. Did they fall short somewhere? If it was simply to try them all out, then by all means, add a notch on your belt for Arch too. You can always install yet another distro down the road if it doesn't pan out.
I'm a former Arch dev, and once upon a time I created its logo. I love the project, and it will always be dear to me. That said, I use Fedora Silverblue for most of my host systems now, and Arch containers for my everyday tasks.
As you likely already know, Fedora provides one of the best GNOME experiences available. I like the additional stability, flexibility, background updates, and easy rollbacks that Silverblue provides, but I can also appreciate that the flatpak and containerized workflow isn't for everyone.
Last year I upgraded to an Inspiron 15 7510 with i7-11800H and RTX3050. Since purchasing this laptop I’ve used Manjaro, Debian 11, Pop OS, Void Linux, Fedora Silverblue (37 & 38) and now Debian 12.
A distro-hopper. *Noted*.
I need to reinstall soon since I’ve stuffed up my NVIDIA drivers trying to install CUDA and didn’t realise that they changed the default swap size to 1GB.
Prefers starting from scratch instead of fixing. *Noted*.
I use this laptop for everything - development in C/C++, dart/flutter, nodejs and sometimes PHP. I occasionally play games on it through Proton and sometimes need to re-encode videos using Handbrake. I need some amount of reliability since I also use this for University.
General-use and reliable. *Noted*.
I’ve previously been against trying Arch due to instability issues such as the recent GRUB thing.
Understandable, but not entirely justified.
But I have been reading about BTRFS and snapshots which make me think I can have an up to date system and reliability (by rebooting into a snapshot).
Fair.
What’s everyone’s perspective on this, is there anything major I should keep an eye on?
It is almost common knowledge at this point that this approach has serious merits. That's why we find it on a myriad of rolling release distros. From Manjaro to Garuda, from SpiralLinux to Siduction. Heck, even Nobara -which is not strictly a rolling release distro- has it. I wouldn't even use/recommend a rolling release distro if not for (GRUB-)Btrfs+Timeshift/Snapper. But, while by itself it is already very powerful. It still benefits a lot from testing. Which, when utilized by openSUSE in particular, manages to elevate their Tumbleweed to a very high standard. So much so, that it has rightfully earned to be named the stable rolling release distro. But not all distros are as rigorous in their testing... if at all...
Should also note I use GNOME, vscode, Firefox and will need MATLAB to be installed, if there is anything to do with those that is problematic on Arch?
Nah, that's absolutely fine. *Noted*.
Should I give Arch a shot?
So there are some glaring issues here:
You've set some parameters and asked us if Arch satisfies. Which it does, but so do a lot of other distros. Which seems to tell me that this will become yet another chapter of your distro-hopper-phase. Which -to be clear- happens to be totally fine. I'd even argue that it's preferable to do it sooner rather than later. Though the mindset of a distro-hopper might deter you from being satiated...
As previously alluded, Arch is yet another distro that satisfies your needs. You didn't mention what attracted you towards it, nor why you'd prefer it specifically over all the other available options.
Btrfs snapshots, while powerful, are not 100% fail-safe. Sure, nothing actually is as a random SSD crash might loom around the corner. And I'd be one of the first to tell you that using Btrfs snapshots to rollback to is an exponentially better experience than without. But we're still able to improve upon it (mathematically speaking) infinitely times, to be more precise; some systems allow us to decrease the complexity from uncountably infinite amount of states (which therefore become "unknown states") to countably infinite or (better yet) finite amount of states (which therefore actually become "known states"). The reduction of complexity that this offers and its implications to system reliability are far more impactful than the simple use of Btrfs snapshots.
Consider answering the following questions:
Are you a distro-hopper? Or did you have very legit reasons to switch distros? If so, would you mind telling us why you changed distros?
Would it be fair to assume that it boils down to "I messed up, but instead of repairing I will opt for reinstalling."
If so, is this something you want to work on (eventually) or doesn't it bother you at all?
Why Arch?
Would you like to setup Btrfs yourself? Or would you prefer your distro to do it for you? Or don't you actually mind regardless?
I might be a distro hopper. Every distro just niggles me after a while, Silverblue wasn't flexible enough, didn't like GNOME 3.38 on Debian 11 after using 4x on Manjaro. Manjaro was buggy and had poor reputation. I didn't like Pop Shell, however, there was good support for Optimus laptops on Pop OS. Before Debian 12 I gave Ubuntu another go and it kept crashing. Main problem with Debian 12 is Firefox ESR which doesn't work with some sites I need and that the packages will be significantly out of date within a year.
I thought Arch because it is almost always up to date and seems to be widely recommended.
It's not like I haven't tried fixing the issue, I just don't know what to do outside of uninstalling and reinstalling the drivers or waiting for NVIDIA to provide a repo for Debian 12 for CUDA. As for the swap I would rather have a partition for it than have some combination of swapfiles and swap.
I had a go at installing Arch today in a VM using archinstall and set up BTRFS with Timeshift and grub-btrfs and it all seemed fairly straightforward.
I might be a distro hopper. Every distro just niggles me after a while
Perhaps you've yet to find the one 😜. Your criticism to the different distros is fair though.
I thought Arch because it is almost always up to date and seems to be widely recommended.
Yup, it's by far the most popular rolling release distro. Though, I'd argue that openSUSE Tumleweed -while not as popular- is definitely worth checking out as well. They're, however, quite different from one another. Arch offers a blank canvas, while openSUSE Tumbleweed is relatively opinionated; though it does offer excellent defaults. You would have to make up your own mind whichever 'style' of maintaining a distro suits you best.
I had a go at installing Arch today in a VM using archinstall and set up BTRFS with Timeshift and grub-btrfs and it all seemed fairly straightforward.
OP was relatively verbose so I act accordingly. Don't feel compelled to read larger pieces if you're sensitive to wasting your time. I don't recall forcing you to read it, so it's entirely on you. While information density might have suffered, "little info" is too harsh. Though, as long as there's even one sentence of 'original' information (compared to all the other comments) a piece of writing of that length is worth reading IMO. Though, thinking otherwise is definitely justifiable.
Arch is what stopped distro-hopping for me. Well, mostly. Sometimes I try some distros on separate install just out of curiosity.
If you use Linux for couple of years, there shouldn't be too many obstacles. Just read through the Wiki carefully and you'll be good.
As for reliability, I'd say Arch is fairly reliable for my 10+ years experience with it (apart from my-fault breakages, I remember something unexpected happening maybe 3 times in all that period), but if you want to secure your butt in mission critical situations then 1) don't yolo upgrade your OS if there's anything important at the moment. Find the right time for it 2) setup a snapshotting solution to have that quick rollback ability. And it's not just about Arch, I'd say the same for every distro (maybe apart from immutable ones).
I’ve previously been against trying Arch due to instability issues such as the recent GRUB thing.
But you used Manjaro? 😂
Go for it. If you use archinstall, it is incredibly simple to get up and running. The difficulty around Arch is quite overblown except perhaps when talking about people brand new to Linux. Even without archinstall, you are just following a guide in the wiki.
Yeah even for linux enthusiasts, without archinstall, it is hard. at first. Then once you know what is expected it is easy. But the first time setting it up correctly is frustrating. Particularly if you forget to install intel-ucode.
The wiki installation doesn't go through repartitioning your drive (like splitting a partition into two and moving the content to a single part of them), I wouldn't try that using the Arch ISO, no sir
If you want to learn arch linux for the sake of learning about how to manually configure Linux yourself why not.
However if you have done a minimal install of void linux (without xfce and bundled) you are not going to learn much.
Arch Linux can be great if you really want to customize your setup and have fun doing so. Arch can be great if you enjoy having a unique looking environment with an extensive wiki to help you doing so.
However it is not the "best" unlike arch fans would say, pacman can have issues updating your system using the AUR and not being careful can sometimes lead you to annihilating your own OS at times (though I have heard that recent updates try to fix that). Besides the full customization it doesn't have much for it.
Gentoo is epitome of customization where you compile your OS and chose specific versions (even binaries) of what you want.
Void Linux is really fast with the xbps package manager being nearly as fast as pacman and its unique init system which makes it book under 5 seconds using a SSD NVMe.
Fedora, Debian and Pop OS are the most used because of how simple and stable they are, and having the largest amount of support from non FOSS developers.
So f you want to have fun customizing your stuff without having to compile everything: sure why not. Otherwise just try something else.
You make it sound like its a paid distro -- just go ahead and give it a shot. Worst case scenario -- you'll learn lots of new things and will give your brain a few extra, healthy braincells. :')
My answer is "No". Don't do distro-hopping. It is only waste of time and distraction from actually learning Linux properly. Concerning BTRFS (and I write it as a user of openSUSE which has been supporting it for the longest time), I am absolutely certain that Debian can use it as well as any other distro. Just don't do the distro-hopping.
Different strokes for different folks. I did nothing but distro hop for my first month or so. You learn a hell of a lot using different package managers and how distros do the same thing different ways. My advise is to have fun and enjoy yourself. If it isn't a chore, you'll coming back and you'll always learn something new.
My Proxmox cluster has 10+ distros so I can distro hop my heart out. I like bouncing between various distro to stay fresh with package managers... And more specifically the various synax when using various distros
Based just on this, I'd suggest looking into OpenSuse Tumbleweed. It's got the reliability you need for your university work, all the software you need, and is about as close to bleeding edge as you can get without cutting yourself.
If, however, you're also looking to gain a deeper understanding of how your system works, and don't mind (or enjoy) troubleshooting problems yourself when they crop up, Arch is excellent.
Arch is great. You’ve kinda dipped your toes in it with Manjaro already. I recently moved to EndeavourOS with BTRFS for my gaming computer and couldn’t be happier. I could have done stock Arch but I honestly didn’t care enough to. EndeavourOS has great sane defaults and no bloat. And you can pick almost any DE during the install. Spin up a VM and give it a try if you can.
I can’t speak to MATLAB though. But all the others you mentioned I also run.
The only issue I have right now is the half screen flickering with GNOME and NVIDIA drivers. But I just ignore it.
You don't need to reinstall to increase swap size, in fact you can just delete the swap partition entirely, add it to the root partition and create a swapfile there, that way you can quickly change the size if you want to. Get familiar with doing these sort of things, since that is the sort of thing Arch encourages to do.
Also instability does not mean what you think it means, instability on Linux means libraries get updated constantly, so if you are running external programme or developing on it sometimes things break because they haven't been updated to that latest library version. I'm not aware of any GRUB issues recently, but in any case I use refind and I like it a lot better than GRUB anyways.
on the other end of the spectrum, if you really don't want to learn shit about linux, use Linux Mint. it's easier to install than Windows, and I only use the terminal for updates using lolcat so I can feel like a rainbow hacker.
frequent questions and thoughts I have as a Linux Mint user:
why tf is everyone arguing about over whatever systemd is?
wow, that guy uses Arch, btw 😮
I don't understand this Linux meme
where is this program installed??
wtf are Vulcan Shaders?
should I use apt or apt-get to install? eh, it depends on how lazy I'm feeling
check out my screenfetch. I'm such a hacker.
i wonder if the people on Linux Mint forums are sick of me asking for help without helping anyone else.
all these Linux privacy benefits don't mean shit since I use Chrome
Systemd is a Programm starter which is used for starting your system programms. It made a lot of things much easier, but since there's no competitor people are arguing about it for ethical reasons since it can do literally anything it wants to do. Vulkan is the Linux equivalent do directX on Windows. Also, Cinnamon is bloat and actually a kinda bad design. KDE and gnome have a lot of things that are much better than in Cinnamon. Cinnamon is good for new users who need the "Windows like System" but I personally don't like it at all.
I appreciate the info. If you don't mind, what's directX?
I went with Cinnamon because I assumed that LM was streamlined for it, but I have used both Gnome and KDE, and I really liked KDE. I can install it and give it a shot again. Thank you for the info!!
As a fellow developer who recently moved to Arch, it's great, the installation process was a tiny bit frustrating (I did test it first in a VM) but after that it works as intended, I keep my eyes on the wiki though if any issues happen, nvidia driver works well with PRIME too, although I don't use it much (I dualboot for the sake of gaming), if you feel like you need to have even MORE control over your PC than your vanilla Debian or Fedora experiences, I guess Arch is the next step, on a side note, minimal Void Linux installation is very similar to what you get with Arch so in case you used that you already have a taste of what you're getting into, well, plus having access to the AUR :)
Oh also, I'm not sure about MATLAB, but Octave has been shipped as MATLAB compatible (although it haven't been the case for me with some functionalities...) Maybe you'll need a Windows VM if Octave wasn't enough, or maybe it runs using WINE I haven't bothered trying it
I tried using the wiki to set up nvidia but to no avail... Is there any insight you might give me ? I'm using Plasma and have a prime card (intel/nvidia)
I followed the steps in the installation section then installed nvidia-prime from Arch repos, prime-run works (I set up a custom menu entry of some apps that I want to run with the NVIDIA card) , the Vulkan demo detects and runs on the NVIDIA driver even without running with prime-run (afaik Vulkan does a good job detecting all the GPUs installed), I have the same setup as you do, Plasma with (Intel iGPU + NVIDIA dGPU)
I'd recommend openSUSE Tumbleweed instead. They originated the btrfs setup that lets you rollback in the grub menu, which has been copied by others. They are bleeding edge except that all packages go through an automated testing system before being rolled out so there's much less breakage to start with.
I've been using it on my main box for a few years with a 1070 and then a 2080 without issues. Not that it means anything. I've never really had issues with nVidia despite running Linux for 25+ years and having used a fair number of their cards, but according to the Internet I'm the only one on the planet. So YMMV.
There is definitely a caveat with nvidia. The nvidia repo is managed external to the main repos, so it is possible for a new kernel to drop in the system repo and the nvidia repo not yet be updated with a compatible driver.
I always wait a few days on such updates and watch the mailing lists for problems especially from nvidia users. So far I've only experienced problems due to prime wonkiness that required re-running a couple of prime commands. I haven't had to use the boot-from-btrfs-snapshot yet, but it's a nice security blanket.
one thing ill say. flutter via aur is kinda a pain, I would reccomend installing the flutter package, not flutter-git, then adding it to ignore-pkg in /etc/pacman.conf then letting flutter handle updates
Arch is bound to break every once in a while, that's just the deal you get with a rolling release distro. If stability is all you want, you can go with the BTRFS snapshots and hope to heavens this setup doesn't break or use something stable like Debian or Fedora.
I left it for Fedora Silverblue because I was interested in the immutable distro concept. Otherwise my main problems with it was the use of runit over systems, the small community when something went wrong and the lack of mainstream support. Otherwise it was a pretty good experience
Thanks everyone for your advice, I decided to install Arch, I've got it all set up with BTRFS and snapper with automatic snapshots through snap-pac.
The only problems in the install were that the default BTRFS subvolume layout given by archinstall gives an @.snapshots subvolume. If you want to use snapper with the root subvolume you need to unmount and remove this subvolume so that snapper can create a new one.
The other problem was that once the proprietary NVIDIA driver is installed gdm will force X11 still on Hybrid graphics laptops. Just had to symlink the gdm config to null which is mentioned in the wiki for drivers older than 470 on single GPU set-ups. Sorry don't have the links on me.
I've been using arch for many years now. I've used various distros every once in a while, but I always come back to arch. When arch break it is probably a single package that is causing the issue, and there is likely a forum post explaining how to fix it already when you have an issue. However if I manage to break ubuntu for example, I always have a bad time getting the system back up without a reinstall. I haven't tried using BTRFS for snapshots yet, but I usually format my drive to BTRFS for new systems/reinstalls now, so I have the opportunity at least. Don't know if snapshots would have made a difference for the GRUB issue that happened though. Thankfully it didn't affect me as I use systemd-boot instead.
I also use Gnome, vscode and firefox. Don't know about matlab but there is a wiki page and an aur package, so I think it should work. For gnome if you use extensions, I recommend installing them from the aur, instead of from the web browser, as you won't need to manually update them. For vscode, there is an aur package for the official version from microsoft, but there is also a FOSS version on the main repo (though some extensions may not work/be available out of the box on that one).
One issue arch users may get after a while is the hard drive filling with cached packages. Pacman doesn't delete old packages from the cache automatically, so if you never clear the cache, you will get a copy of every version of every package you've ever installed in the cache. I've made it a habit now every once in a while I'll clear the cache, after an update and I've confirmed the system works after the update. There's a command "paccache" from the "pacman-contrib" package that's convenient for clearing cached packages.
Definitely give it a shot, especially if you already know C. Getting your laptop set up the way you want can take some time at first but libinput makes it easy. I've never had issues with Arch on my desktop + lenovo thinkpad, and I update it two or three times a week. It's honestly surprisingly stable for a rolling release, unless you don't know what you're doing. There has been a couple times where I've messed up a binary file and had to arch-chroot in from the install medium in order to fix things. This was on me and a learning experience. The Archwiki documentation is the best source of information on the internet. I use it constantly. The AUR is never ceases to amaze me. It has nearly anything you need, even proprietary software. I am always amazed when some obscure legacy software that I need has already been compiled into a package build on AUR. The PKGBUILD files are concise and easy to understand in case you need to make changes to keep up with updated software.
Also it allows for complete control over every aspect of your desktop environment. It makes things so much easier. Despite what most people say I think systemd is great. You can easily view your services or daemons and have complete control. It makes using my OS a breeze and I am able to pump out scripts, or even run projects through hypervisors quickly and efficiently. I will likely never go back to another OS or distro for that matter, so dive in!
I really enjoy using Garuda Linux. Arch based, using btrfs with snapshots preconfigured. Most beginner friendly arch based distro IMHO. I even prefer it to EndeavourOS. I use the KDE lite version tho, not big on their theming. Garuda is also my favorite rolling release.
IMHO arch is way too overrated. It does include a lot of stuff in the repos that others don't have, but the benefit end there in my opinion. My experience on fedora has been way better.
My 2c would be yes only if you're specifically seeking out the bleeding edge and don't mind or enjoy doing the neccesary tinkering.
Alsp you have time in between now and a re-install I'd highly recommended trying to do you're day to day stuff in an Arch VM for a bit and see if it works for you.
I've been using ubuntu based distros but now i use CachyOS and Vanilla Arch Linux, and even though I didn't want to admit it at first, it's a better but similar overall experience. the package manager with yay is just so much better than apt