I’m a 20yo, Hella Autistic, ADHD-riddled spaz that likes to tinker with programs and software settings alot. I’m building a pc for the first time right now, and while I am tech savvy; or more tech savvy than most; coding, programming, tech engineering is complete and utter gibberish, and it seems like the only people that use Linux are HEAVILY experienced with those things I just listed… HOWEVER… I’m not. I just like digging around various program settings or messing with things, or personalizing them as much as I can.
The more I delve into tech or tech related spaces; whether its through building my pc or just- using this website; the more people wont stop yapping about “OOH LINUX, I LOOOVE LINUX.” and every time I ask about it and why I should use it, they make it out like its an absolute godsend piece of technology (im sure it is tbh… it does look nice)
But then looking into it myself, all I see is a bunch of technical word vomit that makes no god damn sense to me. and the more I ask for people to explain this to me, the worse my confusion becomes. now I’m learning there’s like 40 different “Distro’s”… Someone else told me about Linux Mint, which looks nice, but again- I DO NOT want to be forced to use a terminal just to get the most outta my operating system. I like having some kind of UI to use.
idk man… from everything they say I can do with it, ESPECIALLY in terms of customization, I’m so tempted to use it. But my mental understanding of whatever tf Linux is, is at best a toddler’s.
Okay:
You don’t have to deal with scripting and command-line stuff, but all the major tinkering under the hood depends on it. The amount of customisation and tinkering is fairly infinite, so past a certain point you just can’t build graphical stuff to cover every single possible choice - and that’s where the gibberish comes in.
Baseline concepts:
‘Operating system’ means different things in different contexts, and this can be confusing.
Context 1: technically correct
Your computer has a big chip that runs programs, and a bunch of hardware that actually-does-stuff: network card, graphics card, disk drive, mouse, keyboard etc. Programs need to talk to the hardware and make it do stuff, or else they don’t actually… do… anything.
There’s two problems with that:
There’s a gazillion kinds of hardware out there, that all has its own language for talking to it, and your program would either only run on one EXACT set of hardware, or it would have to speak all gazillion languages and be too big to fit on your machine.
The second problem is that in order to do more than one thing at a time, you need a bunch of programs all running at once, and they all need to use the hardware, and without something to coordinate the sharing, they’ll all just fight over it and everything falls down in a tangled heap.
A good analogy for this is a restaurant. They aren’t just public kitchens where you can just wander in and start preparing your own meal, taking ingredients/equipment/space however you want, then just carry it to whatever table takes your fancy - and you definitely can’t have all the customers doing it at once. Especially if they don’t know how all the equipment works, where the different ingredients are kept, etc - it would be an absolute disaster, and there would be fights, injuries, fire and food poisoning.
So instead there’s an agreed-upon system with rules, and people that do the cooking for you. You make a reservation or queue at the desk, you are told which table you can have, you go sit there and a waiter brings you a menu. You pick the food - and depending on the place, maybe ask for customisation - then wait and they bring it out to you, then you sit there, eat it, then leave.
That system-with-rules is the operating system, or more specifically the operating system kernel. Any time a program wants to do more than think to itself, it has to asks the OS to do it, and bring it the results.
In this analogy, fundamentally different operating systems (windows / linux / OSX / android / etc) would be like different kinds of (5-star / sushi-train / pizza place / burger joint / etc) that have different rules and expectations and social-scripts to interact with them. A program written for one OS would have no idea how to ask a different OS for what it wanted, and wouldn’t be able to run there.
Context 2: what people usually mean
It’s all well and good to have a machine that can run programs and do things, but the human sitting in front of it needs to be able to interact with the thing, so you can poke buttons and move files around and move windows and stuff.
And so there needs to be a crapton of programs all working with each other on the thing to provide all this functionality, and the whole user experience - preferably with a consistent design language and general expectation of how everything should work: you need a desktop environment.
In restaruant terms, this would be the specific brand/franchise/corporate-culture that runs the place. Yes, the general idea is that it’s a burger joint, but specifically it’s a mcdonalds, or a wendy’s, or whatever that homophobic chickenburger place is called - it’s got the decor, it’s got the layout, it’s got the specific combo meals, etc etc, the same uniforms, the same staff policy, etc.
Now here’s the thing:
Let’s say there’s only one sushi franchise in the world. That’s like Windows - there’s updates new versions and some slight variations (server versions aside), but you walk into one, you’ve walked into them all. There’s one Windows kernel, and one windows desktop environment that goes with it.
And say there’s only one pizza-place franchise in the world, and they all look the same, have the same menu. That’s like OSX: there’s one kernel, and similarly one OSX desktop enviroment to go with it. A mac is a mac, and it does mac things.
But linux… linux is different. With Linux, it’s there’s 900 different burger-joint franchises in the world, and literally anyone can go start a new one if they want to put the time into designing one from the ground up. The paradigm is the same - order at the counter at the back, menus on the wall overhead, grab bench seating wherever or get it to go - but every place can design the look and feel, the menu, the deals, the other amenities, the staffing structure, etc.
And the different franchises - that’s what distros are.
It’s the set of programs all working together that create a whole working enviroment, but everything uses the standard kernel to actually get stuff done. If your program can run in one linux distro, then it should be able to run in a different one, because your program uses the same standard set of requests in order to do things.
The windows and the menus and the desktop apps and the way the interface behaves and how you configure everything can be different, but the core functionality that the software uses, is the same.
Now, for the most part, Windows is like NO USER-SERVICEABLE PARTS INSIDE, all the fiddly internal bits are carefully hidden away and made deliberately opaque. You don’t need to know, we don’t want to tell you, we’ll let you change the wallpaper, but for everything else, we decide how it’s wired up. If you want it to do things slightly differently to suit your own workflow, tough.
Macs are kind of the same deal: for the most part it’s no-touchee, you’ll break stuff. Just push the very shiny buttons and be happy that everything Just Works ™.
But Linux… doesn’t seal anything in plastic. All the gubbins are not only there on display, they’re mostly all human-readable and human-tinkerable with. Instead of mysterious monolithic chunks of software communicating with each other via hidden channels, with configuration in databases you don’t get to see… it’s mostly scripts you can read and tinker with, and plain-text config files you can edit, all writing useful details in highly-visible log files that you can read through when things don’t do what they’re supposed to.
Now with a lot of distros, you absolutely can just push buttons and treat the thing like a Windows box, and never have to tinker with the fiddly bits. You’ve got a browser, you’ve got apps, you’ve got games, it just does the thing. But if you want to start getting technical, you absolutely can - unlike windows or mac.
But this very ability to configure and tinker and patch bits on - and the fact that most distros don’t have a gigantic microsoft-sized coordinated team all following one shared vision, but are wired together like a kind of junkyard frankenstein from thousands of separate teams as a labour of love - means that occasionally you will need to get technical to deal with small annoyances or use-cases they didn’t think of.
lemme go get my reading glasses for this one…
Crazy good comment right here
It’s a multifaceted answer for me, I feel.
Linux is weird, on a technical level. It’s funky and broken and has weird quirks you have to remember. But it’s not malicious. Wendel from Level1Tech said it best in one of his videos: the headaches with Linux are haphazard, the headaches with Windows are adversarial.
It’s not a perfect solution to Windows, but at least for some people, the respect that it has for its users (ie, no ads, not trying to fight you on everything you’re trying to do, gives you the ability and freedom to tinker as you please) offsets its technical problems.
Additionally, Linux is missing a lot of core applications. There’s many applications that do have a Linux version, and many that can run through a compatibility layer, and out of those that are left, many have really solid replacements. Heck, you might be surprised to find that some of the software that you use already were originally intended to be replacements for Windows-only applications.
But there’s still a handful of core applications that don’t work on Linux and don’t really have a good replacement, and even missing 1 can easily break someone’s work flow. No, LibreOffice isn’t a full replacement of Microsoft Office, no, GIMP can’t actually replace Photoshop.
As for terminal, there’s no way around it. You will have to open terminal at some point. To be clear, most, if not all, things that you might imagine yourself doing likely has some way of doing it through a GUI. The issue is that as a new user, you don’t know where the GUI is, or what it’s called, or how to even ask. And when the tutorials that you find online tell you to just use terminal, that ends up being the only practical way of getting things done. So it’s a weird Catch-22, where only experienced users who know where all the menus are will know where the GUI options are, but it’s the new users who need it the most.
My understanding is that Linux developers in the past several years have been explicitly trying to make the OS more accessible to a new user, but it’s not quite there yet.
Overall, I think Linux is deeply flawed. But seeing how Microsoft seems to be actively trying to make Windows worse, Linux ends up being the only OS where have faith that it will still be usable in 2 years.
If anything, the more people switch to Linux, the more pressure there will be to make the OS more accessible to new users, and also for software companies to release a Linux-compatible version of their software. Some brave people just need to take the dive first
So it’s a weird Catch-22, where only experienced users who know where all the menus are will know where the GUI options are, but it’s the new users who need it the most.
Nah. They don’t know it either.
You will use the terminal. And you won’t “level-up” into knowing the GUI. And GUI-focused distros are stupid for adding barriers over the terminal usage.
Get a live version of any distro burned into an USB.
You can give it a try this way without compromising anything.
deleted by creator
There are thousands if not tens of thousands of distros. Wikipedia has a really cool Linux family tree.
If you think of the Linux ecosystem as a whole, a distribution or distro is just someone somewhere took various options and put them together. I want this GUI, this init system, this package manager, this set of default apps. Then someone else says well I want this GUI and this init system but I want that package manager and the other set of default apps. Often they have specific use cases in mind, some specifically target gaming, some are meant for workstation use, some like TAILS are specifically for covert communication, some like Hannah Montana Linux are entirely for fucking around.
You have a selection of GUIs to choose from, some like KDE or Cinnamon are more feature rich and the vast majority of tasks can be done through a GUI settings menu, others are more minimal because some folks prefer just directly editing config files, or so that the software is smaller, lighter and faster. The choice is yours.
I might suggest, if you want to take computer tinkering to the next level, learning a little bit of Python, or maybe playing with the Godot game engine. These work on Windows as well as Linux and turn out to be handy tools.
As for whether you should use Linux? Try it out and see.
You really don’t need to use the terminal if you don’t want to. The only reason so many people use it is because it’s usually the most efficient way to get stuff done, and it’s easier to show a terminal command than it is to show how to do something on each and every desktop since they all vary slightly.
When it comes to installing apps, Linux is actually not that different from how you install them on your phone. Most distros will have some kind of software center that you can use to install apps. Check here first before searching online. Most apps are NOT downloaded using your web browser.
Stick with a distro that’s been around forever. Newer distros have a lot of buzz, but they lack support and you’ll eventually come across a problem that you won’t know how to solve.
Based on your post, you sound like you don’t want to use it but feel obligated to. You aren’t obligated to use it. I purchased a Linux machine and daily drive it for everything I can. It was a little rough to start but I have picked up on it pretty quick. You will deal with weird quirks from time to time. Most issues I run into are common enough that a quick Google search will fix me up or get me pointed in the right direction. If you want to try Linux, just know that there is a learning curve and be patient with it. As far as Distros, start with a “Just Works” Distro. I recommend Linux Mint or Pop_OS. They work well out of the box while having plenty of room for tinkering. I’m by no means a programmer or Developer but Linux is still accessible without a deep arcane knowledge base of CS information to draw from. Regardless if you use Linux or not, I hope you enjoy your new PC!
I DO NOT want to be forced to use a terminal just to get the most outta my operating system. I like having some kind of UI to use.
Hmm… I want to ask why you feel this way and if you have tried using a terminal at all, but it sounds like your mind is already made up on this. You can definitely use Linux without ever opening a terminal, by using modern desktop environments like KDE or GNOME (or many others). I think you’ll have the best experience if you keep an open mind and accept that there could be times when the terminal might be the easiest way to go. Disclaimer: I am biased towards using the terminal and prefer to use it instead of GUIs.
I’d encourage you to try a LiveUSB. The way this works: you copy a full, working Linux system to a USB flashdrive (this will overwrite all data on the drive) and boot directly from it, so that you can play around with it a bit like a trial without modifying anything on your computer. If you don’t know what distro to go with, personally I recommend starting here: https://fedoraproject.org/spins/kde/download This will have the KDE Plasma desktop environment which should feel pretty familiar to Windows. If you don’t instantly fall in love but still are curious, you can always overwrite the USB again and try a different distro or even Fedora with a dfferent desktop environment (the official “default” desktop environment for Fedora is GNOME, but PERSONALLY I am not a GNOME fan, and its workflow will be slightly different than what you are used to from Windows). One caveat to this is that running from a USB drive will likely be pretty slow, so keep that in mind and try not to worry about the performance/speed during this trial. Linux can be extremely performant, and is used to power the world’s fastest supercomputers. If you decide you want to stick with it and install Linux to your hard drive, it will be a lot snappier than running from USB.
There are a lot of distros out there, and that is understandably overwhelming. So basically what is going on here, with Linux there are many many options and choices for different software for everything from system tools, desktop environments, package managers, text editors, whatever. It’s like how you can choose from Firefox, Edge, Chrome, Brave, etc for your web browser on Windows, except with Linux, there are potential choices for every single little piece of the system.
Each distro will have already made a lot of these choices for you, so that you can just get started using it out of the box. If you don’t know much about Linux, then you probably really don’t have an opinion or care about these choices yet, for example, which package manager the system is using. If you want to be making some choices now, I’d focus only on choosing a distro that comes with a desktop environment that appeals to you, as this will be the most visible difference between them to a new Linux user.
Some distros are geared for specific use-cases, like Kali Linux is for hacking/security testing, so comes pre-packaged with a lot of tools that hackers and security professionals would use. Some distros aim to be very stable and offer a system that you can rely on to JustWork™️. Others are cutting edge with the latest, brand new versions of software, but this is not as stable or reliable. Some require you to build much of your system and make most of these choices for yourself. More recently, there are some gaming focused distros. There is something for everyone and every use-case, from datacenter servers to embedded devices, personal desktop/laptop computers, mobile phone/tablet touch screen devices, gaming devices and handhelds, IoT and “smart” devices, routers/networking gear, virtual machines or containerized systems, the list goes on and on…
I linked Fedora Linux above, which is a good balance between stable and cutting edge IMO. Mint is another that is great for your first time trying Linux. A lot of people love Mint, but my personal opinion is that I do not like it as much as others, but I’d still take it over Windows.
Choice and freedom to do things in your own way is fundamental to Linux, and I’m sure you’ve noticed that with all these choices come strong opinions and heated arguments. Ignore it, most of it is trivial, and pretty much everyone arguing about this stuff would probably agree that its all better than Windows 😁
I want to ask why you feel this way and if you have tried using a terminal at all,
Cus im stubborn and my brain wants to click on buttons rather than type command lines for whatever reason. idk- I can use a terminal, ive done it before, but I guess for like- ADHD reasons my brain is like “nah fuck this I wanna click some buttons n shit”
It does sound like you’d really enjoy the tinkering. When I switched (also to Linux Mint at the time), I spent the first few days figuring out how I could hide the window titlebars, because I realized I could set keyboard shortcuts for minimize/maximize/close.
That was kind of dumb, but no regrets. 🙃
I will give somewhat of an unusual recommendation for the distro, based on what you wrote: openSUSE with KDE
KDE is a desktop environment (basically the OS GUI), which has a ton of customization options, certainly more than the default desktop environment on Linux Mint.
KDE is probably going to be overwhelming at first, but on the other hand, hiding those window titlebars on KDE would’ve been a matter of minutes rather than days, because it’s just a built-in feature, not something I need to achieve with weird workarounds.And openSUSE, because it works well with KDE and because it comes with a system settings GUI, called “YaST”, which covers a lot of the settings that you’d usually need to crack out the terminal for.
openSUSE isn’t as mainstream as Linux Mint, and not often recommended to newcomers. There’s certainly more guides and such for how to do things on Linux Mint. But yeah, I do think it’s a fine choice for newbies nonetheless and you do get that extra GUI.To conclude my autistic ramblings, one more point, you could totally throw Linux on there for now and if you don’t like it, then buy the Windows license and go that route.
I’m both experienced and know jack shit because there is just too much to learn. I just started using it (1998ish) to make cool looking UIs. Its been my daily driver for 15 years now.
You will never learn it all. Over time you may become more familiar with the terminal or you may not. Doesn’t matter. You do you.
Its pretty easy to test drive. Grab a distros “Live CD” version, put in on a thumb drive, reboot and play around. This wont be persistent. When you’re ready, install it on an external SSD. Play around some more now that your edits will be persistent. You’ll mess up. Take notes. Start again once you’ve hosed your system.
and it seems like the only people that use Linux are HEAVILY experienced with those things I just listed… HOWEVER… I’m not.
Nah. Or at least, it should just work if you boot from your USB.
Just try it.
I switched to Linux mint maybe 6 months ago and it’s been great. Just a bit of adjustment for which programs I needed to get some things done. Also turns out some stuff was WAY easier to get running such as my JavaScript twitch chat bots, I didn’t even need a tutorial and I got it running in terminal. My wife also using mint at the same time I switched and she has been liking it too. Good luck and know there’s a ton of people here that can help you out.
I DO NOT want to be forced to use a terminal just to get the most outta my operating
Just walk away. Plain and simple, there’s no tinkering with Linux from the GUI.
If you want to run apps as they come from the distribution it’ll work fine, usually stable as hell. But you’re not going to be doing anything you’re going to consider interesting from the GUI.
I think this reply was mostly true ~10 years ago, but is not accurate today. Not using the terminal is not a deal breaker anymore.
But you’re not going to be doing anything you’re going to consider interesting from the GUI.
They’re going to be able to do just as interesting stuff from a Linux GUI as they are already doing from the Windows GUI, so I’d say this is just not valid.
I maintain a cluster of hundreds of linux boxes professionally. I run NixOS, Debian, Ubuntu and Centos currently and I’m ultimately familiar with all but Nix, as I’ve only been running it for six months. I’ve been Linux on the desktop for most of time since about 2003, all of my installs are up to date.
Someone who’s solidly averse to the terminal is going to be in for a surprise the first time a kernel update breaks Nvidia, or if they decide to dual boot and MS breaks grub. The existing GUI management situation is a bare minimum skeletons or undocumented clutter. He’s looking for a control panel not kate wrapped into a list of files.
The worst part is any support he’s looking for isn’t going to mention crap about whatever bolt on GUI he’s trying to use. All the support out there is run this command, run that command, cat | cut | xargs, check service status with this, check logs with that.
I’ve never known anyone even marginally advanced in Linux that doesn’t have a strong grasp of the terminal and their way around bash. They all go back to Windows/Mac.
I’ll stick with my suggestion that Linux is not for anyone with a strong aversion to terminals. I don’t think that’s out of date what-so-ever.
I definitely understand where you’re coming from, but at this point I’ve had so many JustWorks™️ Linux systems, including set up on my parents’ PC for well over 5 years without one single problem or breaking update, and they certainly are never opening up the terminal.
I’ll stick with my suggestion that Linux is not for anyone with a strong aversion to terminals.
My experience tells me that this is just objectively wrong, or I’d be getting calls from my parents, HOWEVER, I will concede that maybe this is only wrong if you just want a bulletproof system that works without messing around much.
If OP wants to mess around and get dirty in settings, then I’ll give it to you that they might need to be a bit more open minded about the terminal. I haven’t really tried much GUI configs or settings besides really common, typical stuff, like network config or power saving modes/settings, because I just go right to the terminal regardless.
But its just wrong to claim that someone who doesn’t want to use a terminal will have a problem on Linux, it just depends heavily on what you are trying to do. For the tasks that most people use a personal computer for, there won’t be anything holding you back.
Lulz, I had to fuck around with the terminal so much to make my wifi work and I need to fuck around some more to make my audio hardware work properly when waking up from suspend (nothing fancy, a USB sound blaster card) and on another distro my display signal would drop whenever I put load on the GPU.
There’s no escaping the terminal, stop bullshitting op.
Was this within the last decade? Sounds like a faulty GPU.
Back in June, my GPU runs perfectly fine on Windows and on Mint
and on Mint
So it runs perfectly fine on Linux! That’s great news
Read again, did not work on one distro, works on another, two days wasted trying to find a solution, works every time on Windows, no need to fiddle with anything and if I had issues I would have just went to the source (AMD) to get the drivers instead of entering stuff that I don’t understand in terminal. What’s safer your reckon?
So you insist on using some distro where your GPU driver is broken. On the popular one it works just fine.
How’s that a “Linux problem” again?
Anyway, are you forced to use the broken distro? What is it? (If it’s Debian based, it should work just by installing the AMD firmware package. If it doesn’t, it’s because it’s badly maintained.)
OMG you’re not even talking about NVIDIA… 😳🤦
My friend, I have wonderful news. AMD, the manufacturer that you trust to write the closed source Windows drivers, is the same one that officially maintains the open source drivers for Linux…
You spent 2 whole days, yet never found that you can download them directly from the AMD website? What exactly were you doing for those 2 days??? https://www.amd.com/en/support/download/linux-drivers.html
https://en.m.wikipedia.org/wiki/AMDgpu_(Linux_kernel_module)
AMDgpu is an open source device driver for the Linux operating system developed by AMD
I’ve only used Linux in a virtual environment to mess with, also Mint as you’ve been suggested before and re-suggested here, and I don’t think I’ve touched the command line yet. I don’t have much familiarity with other distros but if you’re just wanting to start messing with Linux, I’d add to the pile of people suggesting Mint.
I think I know where you’re coming from on this. Linux is very cool in a lot of ways, and it is very flexible and fun to play with. But it does require an investment of learning and time to get more familiar with it. And that can be frustrating/overwhelming to face. And like you, I find the whole cult-like vibe around it annoying.
I first got familiar with Linux many years ago, mostly out of curiosity. But also because I liked the ideas of using it and the idea of having another OS option other than Windows/MacOS. While I am still not a Linux expert, I feel like I can get around the OS competently. And in hindsight I think it was worth the time I spent getting familiar with it.
Also, like you in not a pursuit when it comes to terminal use in Linux. Give me a nice UI option any day if the week. And to be fair, many Linux distro have come a long way with their UIs in the last 20 of so years.
If you just want to tinker with a solid distro that has a decent UI, I recommend either Ubuntu or Zorin. Also, I recommend trying to pace yourself with learning it. Only pick the parts that interest you, and take your time learning about them. There’s no rush. Good luck.
ETA: Also, if you want to play with a couple of different Linux distros, I recommend using a virtualization app like VirtualBox. You can just spin up virtual machines and install a distro on them. And if they don’t work out or you don’t like them you can just delete the VMs. And virtualization is a fun little rabbit hole in and of itself.