I wanna try Linux again!

Hey Level1Techs,

I’ve tried using Linux at a few points in time. I like the idea of it, I’ve used computers all of my life (including DOS and Windows 3.1, Macs in school computer labs when I was a kid), and I was the de-facto small-town IT guy for most of my developmental years. When we had LAN parties I would be the one to fix the network (usually setting static IPs or just running ipconfig /release, /renew, /flushdns), and when people had a virus, I would run Spybot, try a utility, or if all else failed reinstall Windows for them.

Basic stuff, but just being willing to try things meant I had the chance to learn and practice that sort of thing.

I never tried using Linux until after I was more comfortable (and lazy) with using computers, and now it’s hard to work through road blocks just because I have a limited number of spoons. If there’s an issue I don’t understand keeping me from doing something that “would just work” in Windows, I tend to get frustrated and go back.

Windows manages to frustrate me every now and again, though. Like, last night, my computer apparently needed to restart without my permission… There’s other reasons to get off of Windows, and I respect them, I’m just usually too lazy to re-learn a lot of things.

With that in mind, I am planning to build a new system and I want to try Linux again. But, I want to do everything I can to make it as comfortable and seamless of a transition as possible. I’m hoping you kind people can help me figure out where and how I should start, and maybe help me take the first few steps into Linux. The goal is, from Day 1, I’ll be able to use my computer the way I am used to–and from there I can slowly start to peel layers off of the onion when I have time and effort for lessons and projects.

Day 1, I’d like to have a Windows 10 VM that works at “near-native” performance and is easy to launch and close (or, pause/unpause?) that I can use for gaming and general computing if I’m getting frustrated because I broke something in Linux. I’ve actually gotten most of the way on this one, though my Nvidia GPUs would act up and usually I needed to restart the computer if I shut the VM down and wanted to use the video card again.

From here, these are some things I’m interested in learning/doing:

  • Learn how to navigate and use Linux, of course.
  • Play around with DIY desktop environments. (UX/UI design)
  • Learn Python - re:Automate the boring stuff with Python.
    (I know, I can do this in Windows. But installing Python in Windows is a little aesthetically ugly, and that managed to turn me off of the project last time I sat down to do it.)
  • Play with Recurrent Neural Networks - Especially related to Magic: the Gathering

There are random creative and school projects I need to work on using programs like the Adobe suite (Illustrator, Photoshop, Premiere) or Ableton Live, am I able to run any of these programs natively in Linux? Or, do they work fine inside of a VM?

So, that’s an idea of what I’d like to use the computer for. I’m in the process of shopping for parts for this system, and I think I want to use an ITX (possibly DTX) AM4 motherboard. The idea is that, this year, I’ll buy the cheapest parts that are an upgrade from my laptop (Ryzen 1600 is similar single-thread but double the core count, RX ~580 is similar to a 1060 but would have a proper cooling solution) and then look for a stronger CPU and GPU once the next one or two generation of parts come out. My monitor is a 4K TV, and I don’t really feel like buying a ~$700+ GPU to drive it, so I’ll settle for turning settings down right now. Some hardware questions:

  1. Are there any “best” ITX-style AM4 boards for Linux?
  2. Will any Ryzen CPU be fine, or do some work better in Linux than others?
  3. Are any (consumer-grade) GPUs better or worse for working with VMs? I’m under the impression AMD does less to get in the way of users doing this kind of thing.

So, yeah, that’s where I am. Any input or suggestions would be appreciated!

1 Like

There is a thread that might help you starting out:

I would advise trying out a few different Desktop Environments (DE’s) to see what you like, and then tweak it from there. If you stay in the same ecosystem (say Debian based or Arch based) then the things you learn can be more easily carried over when trying the next DE, instead of learning things ‘the Arch way’ and having to relearn ‘the Debian way’

In my experience I have had very few catastrophic failures where I couldn’t just give up on a problem and use the browser or play a game until my mind was clear and ready to try and tackle the problem again. If at all possible, I would stay in Linux for everything except things it can’t do, such as run specific software. Anything in a browser, quite a lot of Steam games, and basic tasks like text editors and things should work flawlessly. I found that staying in the Linux environment was really helpful. I could goof off a bit and then when I thought of something I could just do a search and test things out on the spot.

I guess this could be done with a Windows VM also running, but I feel if you have that crutch there so easily accessible then old habits will pull you in to just doing everything in Windows. There isn’t anything inherently wrong with that, and a case can be made for running Windows in a VM from Linux to only use Windows exclusively, but if you are spending that much time in Windows then maybe that should be the host and Linux the guest. I’m heavily biased; I have used Linux exclusively for 5 years and trying to do that GPU passthrough shit looks waaay to complicated for me compared to the near-zero benefit for my use case. Most people here would strongly disagree with me and for their use case they may be right.

There are tons of resources for help, such as the different Linux threads here, Distrowatch for discovering distros, as well as news and even a list of recent Linux related podcast releases, the Arch Wiki is a great resource even if you don’t run Arch, Raspberry Pi Foundation has tons of learning resources like their blog, the MagPi, forums, and even a desktop build of their OS so you don’t need a Pi to start learning.

I try not to bash on Windows needlessly, but that hijacking crap where ‘they’ decide when my hardware will update, reboot, or worst of all refuse to shutdown on command was so infuriating that I can’t go back.

3 Likes

I wish I had this relationship with windoes but it’s the other way around… motherfucker keeps breaking my shit all the time… nuked it twice already only this month…

Depending on what you want to do you don’t need a hefty system, resource management on GNU/Linux is far different.

Well if you break something into Linux you probably won’t be able to boot into your VM… so … I recommend against this. Maybe keep a separate computer for that?

How about buying a cheap Linux-friendly laptop? An used refurbished thinkpad? Slap an SSD if it doesn’t have it yet and start distro-hopping like crazy since it’s not your main drive.

And KVM is no joke, it’s a whole new world (one I didn’t dwelve into, I’m more focused on web-development).

The main difference is Powershell and Bash to go along with Python scripts… you could do everything in Windos with the same amount of hassle…

If you wanna talk distros… then explicitly say it… cause it might turn into a shitshow reeeeal fast…

1 Like

When was the last time you used Linux?
are we talking 3 years ago or on an 80386? :slight_smile:

1 Like

I would start with an easy to use distro like Fedora or Ubuntu based and then use vm’s for your “hacking around”. Virtmanager and KVM are good for this and are fast and highly customizable. Then install Arch in or even Gentoo inside a vm if you’re feeling bold, they both have excellent documentation. This way you have a stable base to fall back on while you can do anything you want.

As for hardware make sure it has good iommu groupings because once you start playing with vfio and passthrough you will be kicking yourself if you didn’t sort that out at the beginning. Lot’s of fun having Win10(or anything else really) running near bare metal under linux.

Why do you guys keep suggesting this in every single new user thread? It’s hilariously bad advice, you’ve all been TOLD it’s hilariously bad advice [if you’ve been around for more than 10 minutes], and I keep seeing it pop up. Please stop it.

What? I only suggested he try it in a VM so he can break whatever he wants and learn how stuff works under the hood. Never did i suggest he use it as a main OS.
I’m done here, jesus.

dude no wtf he doesn’t even know (probably) the linux filesystem, he’ll drop out on the second command

I think/feel this gentoo and arch stuff is more about personality than “savvyness” with Linux

I, as a Gentoo user, have to agree with you almost completely. Regarding your second sentence though, I wouldn’t say that it’s all about one’s personality.

Yeah, since the original poster wants to have a magical “just works” experience, I imagine that they scoff at the very thought of trying Arch out, let alone Gentoo, especially since they, seemingly, have a low threshold for giving up on issues:

Frankly, the original poster should just pick a desktop environment which they like, settle on a distribution which best suits them and forget about (most of) their prior Windows experience, instead of fighting an uphill battle by trying to kind of fit Linux in Windows’ mold. They can be easily up and running with Ubuntu or Kubuntu within an hour and have no hassle, at least from my experience (I was an Ubuntu user for my first year of Linux).

Not all but a big part.

People who like to commit to things and have the courage to take their time building an operating system.

I think maybe at least half of it is self-accomplishment, right?

I’m fairly unforgiving with any bullshit the OS throws at me (even if it’s kinda my fault), given all the options we have, so I would never install either gentoo or even arch. But that’s all personal, it’s not against the OS itself.

I’m gonna throw my vote in for op trying fedora workstation because it has one of the best out of the box experiences you can get from linux IMO.

Anything not in the default repo you can get from flathub

https://flathub.org/home

2 Likes

Hey, thanks for such a quick and quality reply!

Your logic makes sense, about ‘just doing everything I can in Linux’ and not leaning on a Windows VM. Maybe I’ll try doing that, but there are times when I “need” my computer to work the way I want it to and the peace of mind that comes with having access to Windows (at least right now) can’t be understated for me. It’s all small and unlucky anecdotes that make me feel this way, but I’m trying to work with my nature rather than against it. There have been cases where I couldn’t “just copy a dang file” using the desktop/graphical file manager and that’s a really stupid problem to need to solve when you’re facing a deadline.

Regarding the GPU passthrough stuff… I was able to get it working once before, I was trying to build a computer that ran two Windows VMs at the same time that could each run games and had gotten it functional. Some things would crash it, but I think that was mostly them trying to prevent cheating. The most annoying part was Nvidia making their GPUs throw an error code if they realize they’re being passed to a VM.

And finally, I do feel solidarity with you (and most others here, I think) regarding Windows. I’m just a creature of comfort and convenience, and it’s where I’ve gotten comfortable. It always is something like an update either restarting my computer or preventing it from shutting down that reminds me I need to get out of there. Haha

Why not virtualize Linux then?

1 Like

I think this, ultimately, is just a matter of what we expect out of computers/OSes. Sounds like your expectations are based around Linux, and mine are based around Windows. I think they’re both valid, as they’re just based on experience and habit–I’m trying to get over my own expectations here!

I mean, “need” is a hard thing to quantify well. I want to build a new system and am going to. I have physical problems with my current hardware, it’s a laptop that’s been through a lot (some ports don’t work, and I need them to work) and is starting to struggle to play games.

The suggestion of buying a separate computer is a fine one, but it’s just not the sort of thing I want to deal with. The only time I’ll find myself having the patience to tinker around in Linux is at home, at my desk, and being one step removed from doing that (i.e. needing to take out the laptop or whatever) increases the likelyhood I never fool with it. The Linux VM-in Windows idea is problematic for a similar reason, but also it doesn’t solve the “Windows is turning my computer off without my permission… or not turning it off” problem.

Around 3 years ago is when I built the system I mentioned above, the dual VM one. Last year I tried using Linux on this laptop, I wanted to do basically this exact setup with Linux using my processor’s iGPU and Windows using my 1060. I think I was following this guide, but even getting Linux to make it to the desktop environment was a nightmare. This was my only computer, trying to use my smartphone to look up a solution wasn’t a great experience. Eventually I found what I had to disable to get the computer to boot (something related to Plasma and/or Nvidia’s drivers…?), and I don’t recall what issue I ran into next that kept me from setting up a Windows VM with the laptop’s 1060.

1 Like

The main reason is that Windows decides when it wants to turn my whole computer off that way. If Windows is the VM, only the VM shuts off. And there’s probably a way to automate restarting it or even ‘restoring the session’ if it’s being managed.

This is an easy fix tbh. If you can’t stop windows rebooting from updates, Linux is gonna be a bear.

True.
Remove Windows -> Fixed.

1 Like

If you’re willing to put in some legwork, i’d recommend Fedora

Why?

  • it is bleeding edge enough to support any new modern hardware you may have
  • its mainstream enough that there are plenty of people who will stumble across any problems you may have yourself
  • if you learn fedora, you’re learning what CentOS and RHEL will be in a few year’s time - and they’re pretty common in the business world (so is ubuntu these days, but ubuntu isn’t as bleeding edge for home use hardware).

I’m linux/mac only at home these days. I wouldn’t worry too much about a Windows gaming VM day one. I have a couple of Windows VMs - but they are purely for experimenting with stuff for work.

I’d spend more time reading up on getting the games to work in Linux via Proton - read the docs on ProtonDB. Not saying don’t bother with Windows… but since i actually read the docs/suggestions on ProtonDB, i haven’t bothered with a Windows VM. Does it mean i give up some games? Yeah… but not as many as you might think.

edit:
I’m Fedora 31 both at home and at work. At work it acts as a VM host for a bunch of Windows stuff and a network administration box. I’m actively administering vsphere with Powershell from it :smiley:

1 Like

When you say this, I want to make you aware that:

are not easy tasks. I’m not saying stick with Windows, or don’t learn Linux/Python/NN. But if you are unmotivated/struggling to administer Windows, you’re going to have a really hard time dealing with Linux and the skill it demands.

That being said, I second reading @SgtAwesomesauce’s thread and strongly recommend an Ubuntu or Debian based operating system.

1 Like

I understand that these tasks are not easy. I’m trying to respect that. I’ve at least attempted ‘opening the textbook’ for all of them before and put it down. I’m trying to work with my nature rather than against it here, in hopes that I actually see progress.

I’ll try giving an example: If I still lived in the US, I would speak zero Chinese. Where I live now, there’s tons of immigrants and travelers who don’t speak Chinese and are completely able to go about their daily lives, English is common enough here. I could not use Chinese, too, but it takes basically zero extra effort (from my perspective) to practice while I’m out and about. I started by trying to ask for my coffee in the morning, or trying to order in restaurants, and just occasionally asking about how to say things. In less than a year, I’m already quite functional–I’ve done almost all of my shopping for computer parts in Chinese, which I wasn’t sure I’d be up to.

For me, putting in an extra ~5% effort when the opportunity arises and learning a small new thing is the most effective way to learn. But forcing myself into a position where I’ve got to focus and channel a lot of effort at a time (a class or a big deadline, as examples) is really hard to manage for me. This is why I think “Linux as the host with a convenient Windows VM” is the right solution for me.

In order to access my convenient computer, I’ve got to go to my computer and then fire up the Windows VM–which isn’t hard. But while I’m on my way, while I’m [going get my coffee or sitting down to have a meal] (i.e. play games, etc.), maybe I have the effort to [practice my Chinese] (practice Linux) instead.