7 ms·
Ask HN: What linux distro should I start with?
I just got myself a used Fujitsu Lifebook E8410 - the thing's around 6 years old, maybe older.
I'm aiming to use it to learn C and wanted to install a gnu/linux on it, but I don't know where to start. A gui would be nice though, maybe not even a DE, I might just put i3 on it.
I've used debian before, but I'm open for any lightweiht distro with support for older hardware.
I'd love to hear your recommendations and/or warnings.
- macscam 9y agoUbuntu.
- flukus 9y agoI agree, simple safe choice. There a various lightweight versions if the base version doesn't work well on the machine.
- geerlingguy 9y agoAnd, annoyingly to those who prefer other distros, one major selling point for *ubuntu distros is that nearly every aspect of setup/configuration/adjustment is documented somewhere, be it a blog post, wiki, stack exchange, forum post, etc. For certain less popular desktop distros (e.g. slackware, arch, and to a certain extent fedora, debian, etc.) there are lots of little things where you find some decent documentation, but you have to know how to adapt it to your particular OS version. Things like that kill a beginner's curiosity, because in the beginning, you just want to get some random thing working, not debug linux kernel versions and package repositories!
- 8draco8 9y agoDefinitely agree! Ubuntu have tons of support all over internet. Virtually any problem has been already solved by someone on the internet which is incredible if you are beginner. As for lightweight version of Ubuntu I would recommend Ubuntu Mate.
- swalladge 9y agoArch would be a nice choice for your description - the base install comes with a minimal selection of software, so you can easily add what you want without there being any bloat. However it doesn't come with a graphical installer. A derived distro like Antegos with a graphical installer might be a good choice otherwise. But, as always, this sort of thing is highly subjective, and there is no 'best solution'. My recommendation would be to try out a few different ones and see which one you like. Even a distro generally labelled on the heavyweight side will run perfectly on old hardware, especially if you install their 'minimal' or 'server' option (and add the software you want on top). Remember, that apart from the package management system and some underlying system choices, most distros are fairly similar to use on the surface (unless you plan on using it as a server - then you'll find large differences between ubuntu based and redhat/fedora based distros). Having said that, if you install a desktop distro like ubuntu it can be difficult to switch DE's since the configuration is integrated so much.
- bananicorn 9y agoI'm a bit hesitant to try arch, since it seems quite daunting to start with such a trimmed down distro - and yet I really like the idea. The hardest part will probably be setting up the wireless connection, and getting the WM set up. Do you think arch is suitable for a relative beginner?
- swalladge 9y agoIt depends on how you define beginner. If you're careful, and follow the installation guide on the wiki, you should be fine. Often people recommend installing distros in virtual machines to get a feel for the process. However, if it's an older laptop as you said and not your primary machine, then you can always just go for it and if something goes wrong, you can format the drive and start again. By the way, setting up wireless in the install process usually only consists of running wifi-menu, and a WM is as simple as `pacman -S i3` (or which ever wm you want) and launching it from the DM or .xinitrc. ;) Another advantage of starting from a bare install like arch, or a trimmed down version of another distro, is that you get a feel for how the system is held together (what software is installed, how the disks are partitioned, etc.). Sometimes comes in handy if you need to debug something!
- bbcbasic 9y agoJust an idea, install an 'easy' OS like Windows or Ubuntu. Then try out different distros in VMs. Once happy make the one your like your main PC distro, if you like.
- CyberFonic 9y agoWouldn't running distros in VMs be difficult if the notebook has minimal RAM and a relatively slow CPU? AFAIK only paravirtualized kernels would run with acceptable performance and not all distros provide that option.
- lovelearning 9y agoI suggest Lubuntu 16.04 (which I have running on an even older, lower spec laptop) or even the slightly more polished Xubuntu 16.04. They are standard Ubuntus with just different DEs. Both are far more lightweight compared to Unity. Good docs, lots of useful forums out there. Puppy Linux is another good one, but it's quite different and finding help when it's needed is a bit of a problem. I don't know if you know this already, but you can try out any number of distros non-destructively. Just write a downloaded image distro to a pen drive, boot off it and select "try without installing"[1]. This is how I tried out a number of distros and settled on Lubuntu. [1]: https://help.ubuntu.com/community/Lubuntu/InstallingLubuntu https://help.ubuntu.com/community/Lubuntu/InstallingLubuntu
- bananicorn 9y agoI've already run puppy linux from a thumb drive on it, but I'm not too keen on the whole OS running in RAM, even though it worked really smoothly. I'll give xububtu or lubuntu a try though :) Edit: fixed typo
- brudgers 9y agoPuppy can be installed to the hard drive. I did it three or four years ago on a Satellite 1800-s203. [1] I even compiled the latest Emacs from source (not quick on an 800mhz Celeron and 192mb of RAM.) [1]: http://support.toshiba.com/support/staticContentDetail?contentId=638115&isFromTOCLink=false http://support.toshiba.com/support/staticContentDetail?conte...
- CyberFonic 9y agoI find 32 bit version of Ubuntu to work better on low-spec systems.
- ogfomk 9y agoLubuntu and Xubuntu are also good and easy to use. Puppy Linux is great for hobby but I think the idea of learning to develop would be helped by the more stable Lubuntu or Xubuntu.
- samuell 9y ago
- CyberFonic 9y agoI find Alpine Linux to be very good on low-spec systems. The package manager is similar to Debian's. It has a very comprehensive packages collection. I mainly use it on low-spec servers so I don't install GUI - can't comment on how good they are. I prefer to use Ubuntu on my desktop - but that is pretty well spec'd out.
- bananicorn 9y agoI found this site here[0], that should come in handy for testing different distros: [0]http://livecdlist.com/ http://livecdlist.com/
- haidrali 9y agoStart with Ubuntu latest version, Ubuntu is easy to use and has large community to dig into in case of bugs
- navbehl 9y agoI would suggest Manjaro. It is based on Arch and has a GUI installer. My experience with Arch's package manager (pacman) has been far better that Ubuntu's.
- ogfomk 9y agoI have been using Linux since 1999. I currently use Linux Mint on two different systems. If you go to https://www.linuxmint.com/download.php https://www.linuxmint.com/download.php you can choose from the modern Cinnamon, Mate and KDE to the legacy supporting XFCE. I currently use Cinnamon on an i5 Samsung laptop and I use XFCE on an eMachine that is ten years old. %99.9 of Ubuntu packages will also run on Linux Mint. The desktops for XFCE and Cinnamon / Mate are easy to navigate. There is great support and a large community. There is also a rolling distribution using Debian which is a distro that does not need to be upgraded since it is constantly getting updates. Does not run Ubuntu packages, but you will learn better development skills and this is what powers Ubuntu and Linux Mint. https://www.linuxmint.com/download_lmde.php https://www.linuxmint.com/download_lmde.php For an older Laptop this may not be a good choice. If you want to focus on development and at the same time have a system that can handle modern stuff like Netflix, LibreOffice and Google Chrome then try Linux Mint XFCE.
- brudgers 9y agoRandom advice from the internet. It looks like that model shipped with 1GB of RAM and 1 empty slot but is upgradable to 4GB. [1] My advice would be to upgrade the RAM if it practical [2]. This would make just about all distros practical. It's probably worth considering a cheap SSD as well...it can always be installed in another system later. Of course, those are suggestions that involve spending a little money and the reason is that I would generally recommend standard Ubuntu. Not because it is better but because it has its own StackExhange site for getting help: https://askubuntu.com/ https://askubuntu.com/. For me AskUbuntu is the killer app that trumps pretty much every other consideration. That's not to say that I don't use ArchWiki and other resources (like man pages) but the Q&A format focused on Ubuntu can provide more focused advice and solutions. Ubuntu also feels more beginner friendly than some other distributions of similar size, the defaults (arguments about Unity and sysmd aside) are relatively sane and there is a large selection of binary packages so the joys and sorrows of compiling from source can be approached with on gently graded slope. Worry not, there's enough sources of WTF and frustration for someone new to Linux without working with source. Good luck. [1]: https://www.cnet.com/products/fujitsu-lifebook-e8410-15-4-core-2-duo-t7500-vista-business-1-gb-ram-100-gb-hdd-series/specs/ https://www.cnet.com/products/fujitsu-lifebook-e8410-15-4-co... [2]: US ebay shows a 2GB stick of PC-2 5300 can be purchased for ~$4.00 including shipping and 3GB is enough to make "mainstream" Linux distros an option.
- bananicorn 9y agoActually, I might be able to use the ram from my "old" laptop, which has just died a week ago, so I think I'll give it at least a try. Thanks!
- peterburke 9y agoGet a few USB disks and try the most popular ones. Don't mess around with virtual machines, a USB disk costs less than 12$ these days. You can start a complete Linux system from USB. If you need to work immediately: Manjaro XFCE, Ubuntu Mate, Fedora. If you have a lot of time: Gentoo, Linux From Scratch, Arch, Slackware.
- deleted 9y ago[deleted]
- sigjuice 9y agoIf your aim is to learn C and if the computer already has Windows on it, you might consider installing a C compiler.
- madamelic 9y agoNot even Python works well on Windows. I was constantly having to tweak and install things to make libraries compile without error. The second I went to OS X or Ubuntu, everything worked out of the box.
- sigjuice 9y agoMy take on learning C is that you just need a C compiler and your programs are simple enough that you do not need anything from the system besides reading and writing file handles.
- bananicorn 9y agoThat's actually what I did on my previous PC, (with cygwin and mingw), but cross-compiling was kind of a pain in the ass, so I'm really looking forward to the native linux tools for handling that :)
- vacri 9y agoIf you're not familiar with linux much, the best distros to start with are the ones with the largest communities. That means more support for edge-case stuff. If you've used Debian before, stick with it. Your system's specs are fine; you don't need a 'lightweight' distro for it. [1] Debian has a couple more warts than Ubuntu, as the latter is more user-friendly by design, but Debian is 'cleaner'. You'll also have an easier time if you use Debian Stable or Ubuntu LTS releases (and just upgrade necessary packages). 'Rolling distros' are more up-to-date in general, but they can break on you (fine if you don't mind fiddling, but annoying if you just want to get on with stuff). Rolling distros become less painful as you skill up in unix-ese. [1] actually, depends on the ram of the system. the CPU is fine, but I misread max supported ram as current ram. If you've got 4GB, you're fine. If you've got 1GB, go for a lightweight dekstop (and stay away from modern websites).
- chipmonkey75 9y agoI'm going to throw an alternate thought out there just for you to chew on... try Slackware first. The common rhetoric is that Slackware is difficult to work with and not for the weak of heart. That has absolutely been my experience too (I still have my 1995 Infomagic Slackware CD... the horror.) But are YOU the weak of heart? Perhaps not, coming here to ask such questions. And, IMHO, what you learn from fighting with a more raw linux distribution like Slackware is actually a useful learning tool. You can learn a lot about drivers and hardware systems by having to fight to get them to work. And as soon as you get sick and tired of it, install something else that someone more forgiving has already mentioned. :-)
- santoriv 9y agoI use Arch but if you are starting out I would recommend Ubuntu. It's probably got the most youtube videos, online articles, troubleshooting questions online. This make things a bit easier. For example, you mention i3 - probably the best i3 tutorial on youtube is running ubuntu. -> https://www.youtube.com/watch?v=j1I63wGcvU4 https://www.youtube.com/watch?v=j1I63wGcvU4
- peterwwillis 9y agoI recently put a "lightweight Ubuntu-based Linux distro" on my gf's underpowered laptop. It really sucked. Hardware support was shot, software selection is limiting, and in general it's just not set up the way the rest of us expect. Get a standard distro, even if it might not be the ultra-fastest build out there. All the help forum search results you will find are based on the standard distros, and this will make it easier to fix problems and learn quickly. You honestly start with something incredibly common like Debian, Ubuntu (both mostly the same but with important differences in usability) or Fedora. The simplest way to try different distros is to make /home a separate partition for your user files; everything else is disposable. If you have a lot of time on your hands, try LFS. If you want to see a stripped-down but not "minimalist" distro, try Slackware. If you want to install lots of distros and try them out one by one, use QEMU, VMware Player, VirtualBox, etc and install each one and play with it, but hardware-specific changes you'll only find by installing it natively. You are actually incredibly lucky to be using a 6 year old machine. The newer the machine, the less Linux support there is for it. I recently got back to Linux with some modern laptops and it was a friggin' nightmare to get everything working. One distro's installer didn't properly support the naming convention for a hard drive controller. A bunch of the media keys aren't supported. Getting hybrid graphics to work took days. Apparently my wifi card has unfixable problems with 802.11n networks in Linux. And I am still unable to connect to a bluetooth headset. Stick to the old hardware, try different web browsers until you find one that won't crash with only 1GB of RAM, and have fun!
- ythn 9y agoXubuntu! I've tried many flavors of Ubuntu, and Xubuntu is my favorite.
- enzolovesbacon 9y agoI recommend you try Fedora. Even though Ubuntu is beginner-friendly at first sight, in very short time you'll see that all the benefit you're supposed to get from a community are actually hacks to solve things like: GUI issues with Unity, some services not starting, services crashing randomly, and so on. Fedora is often taken as somewhat unstable because of its fast release cycle and lack of a long-term support release, but, in my experience, it has proven itself to be very reliable and stable for my workflow.
- noahdesu 9y agoI second this. I've been running Fedora on my MacBook Air, and all my desktops for around a year with no problems, except the occasional wifi issue.
- Mathnerd314 9y agoNixOS is great for development, particularly C since C doesn't have a language-specific package manager / build system. http://nixos.org/ http://nixos.org/ Although it's going down: https://distrowatch.com/dwres.php?resource=popularity https://distrowatch.com/dwres.php?resource=popularity If you want a distro on the upswing you should instead look at GuixSD; it emphasizes the "GNU" part of GNU/Linux. https://www.gnu.org/software/guix/ https://www.gnu.org/software/guix/
- Drakonis 9y agoPlease don't use distrowatch as a metric, it is utterly useless as a general usage metric due to it considering only within itself and not as a general statistic.
- Mathnerd314 9y agoWell, if you have a better one, I'm all ears. I guess google trends could work, but that shows Kali Linux as absurdly popular compared to everything else.
- hackermailman 9y agoFor development these days I use generic Debian stable install with guix package manager. You can install a dozen different versions of gcc if you want and isolate your project from the rest of the machine with guix environment https://lists.gnu.org/archive/html/guix-devel/2015-10/msg00916.html https://lists.gnu.org/archive/html/guix-devel/2015-10/msg009... Fujitsu Lifebook E8410 has Intel graphics and Atheros wireless, it's also perfect for running a BSD. They are simple systems to learn and use, especially OpenBSD where all configuration is in one directory. Here's all you need to know as a casual user in one post https://news.ycombinator.com/item?id=10797171 https://news.ycombinator.com/item?id=10797171
- giancarlostoro 9y agoUbuntu is good, just pick a flavor you like. I currently enjoy Ubuntu Budgie, which is a new official spin on Ubuntu. If you want something different that is truly worthwhile check out openSUSE, it has more packages than a lot of distros I've seen and they do a lot to contribute to other Linux distributions.
- brendaningram 9y agoFirstly, what I use and where I'm coming from: I've distro hopped in VirtualBox (so I can experiment) for more than 5 years, trying out every distro I can find. I currently run Debian with i3 natively / on the host machine. It certainly classifies as "lightweight", running in not much more than 100MB of RAM. It's blazingly fast on my 32GB i7 desktop or my 10 year old laptop. Secondly, to answer your question "What Linux distro should I start with?" If you've used Debian before, and you know what i3 is, you aren't a Linux novice. So I would recommend staying with the Debian/i3 combination. It will run perfectly fine on the 6 year old laptop you mention. I think the strongest piece of advice I could give you is "choose one distro/DE combination and stick to it - when the use of that environment becomes second nature you'll have more mental capacity to focus on and learn other things (like C)" There was a mention of Fedora down below, and I have to give this a big thumbs up. Every time I use Fedora, I find it "just works". Problems with Mono/MonoDevelop on Ubuntu? Works perfectly on Fedora. Problems with GOPATH/PATH with Visual Studio Code on Debian? Works perfectly on Fedora. If it wasn't for the fact that I've spent the last 10 years becoming familiar with the Debian/Ubuntu way of doing things, I would swap to Fedora in a heartbeat. And to be honest, every time I look at the Fedora community, I just have this gut feeling that it's the right place to be. P.S. I wrote up a bit of an article about something similar last year. If you're interested, you can find it at https://brendaningram.com/article/ram-usage-of-various-linux-desktop-environments/ https://brendaningram.com/article/ram-usage-of-various-linux...
- thebigspacefuck 9y agopeppermint!
- IC3BEAST 9y agoI personally really like ubuntuGnome! http://ubuntugnome.org http://ubuntugnome.org Ubuntu as always is really easy to use and has wide ranging support. All without that terrible unity front end. Mind you the next major release of Ubuntu will be use Gnome so this distro is mostly pointless now.
- jamesjguthrie 9y agoI don't know the specs of your laptop but if it will run Windows 10 then just install the Windows Subsystem for Linux then you can have bash, gcc, all the gnu tools, etc. right there without relying on Linux as your OS.
- stevekemp 9y agoEverybody will present their favourite distribution as the "best", regardless of knowing nothing about your skill-set, or personal preferences. Perhaps you like a GUI, perhaps you like to choose all your software. I'd suggest instead that you pick whichever distribution you know "local" people are using. Nothing beats having somebody nearby to help/chat with, if you do have problems.
- nachexnachex 9y agoSince your intention is to learn the C language, I'd recommend Gentoo. Building is at the heart of the distro, so you'll be piggybacking learning how deploying and installing works, what are the challenges of bootstrapping, and compile flags as you go.
- bananicorn 9y agoA small update on my current situation: I've successfully(?) installed arch, but I'm still setting everything up, but the internet is accessible without problems. I'm struggling with the video drivers, but that's mostly since I never had to install any on linux. I'm also learning a LOT. At the same time I'm tempted to try out almost all distros mentioned here (even gentoo, to really get the hang of compiling and makefiles), but I'll probably try and set up Arch first, until I'm happy with it and then maybe mess around with other distros on another partition, or in a VM (but probably on another PC). Obviously armed with all the knowledge gained in the process. Thank you all so much for your suggestions, and I hope I'll get around to trying them all one day :) Until then, I'll continue configuring (and maybe borking) my Arch install and enjoy the discussion taking place here. PS: The arch documentation is AMAZING.
- limeblack 9y agoTry out Tiny Core Linux. You can run it on almost anything. It is crazy fast and can boot entirely to RAM. It isn't as full featured as other OSs but it can boot of pretty much anything including floppy disks. If you want something more full featured I would recommend Debian.
- BrandoElFollito 9y agoI would start with gentoo. This is a horrible, horrendous distro to actually work with (I will make a few friends here...) but there is nothing better to understand how Linux works. You have to painfully install every bit of the system and you gain fantastic knowledge on the way. Then, once it is installed, you can delete it and install something which works, namely Ubuntu (which is obviously the best system on earth). I do not know for desktops, I only use Linux on servers. Source : I forced all my admins through that 15 to 20 years ago and that still talk to me.
- pravula 9y agoSlackware is right up there with Gentoo.
- peternicky 9y agoI love Debian, it feels "natural" to me :)
- crispytx 9y agoPuppy Linux kicks ass at reviving old computers.
- ilovetux 9y agoJust my two cents, if you plan on employment in an enterprise setting I would go with Centos as that will get you used to working with RHEL which in my experience is the most commonly deployed distro in production environments. If it's for fun I would go with Fedora. Finally if you have a project in mind and your project needs compatibility with various hardware platforms I would go with vanilla Ubuntu.