I'm a regular user of Linux systems but apart from a couple of test Ubuntu installs many years ago they've always been containers or VMs with no DE which I can throw away when I break them. The Steam Deck showcasing how far Wine/Proton has come combined with Windows being Windows has given me the push; I've made a Mint live USB and it's running beautifully on my desktop. I come to you, the masters, with questions before I hit install:
- What do you recommend I do about disk partitions? I'm keeping a Windows install for the few things that demand it, does Windows still occasionally destroy Linux partitions? Do I need separate partitions for data and OS? Is it straightforward to add additional distros as new partitions or is that asking for trouble?
- Is disk encryption straightforward? And is that likely to upset the Windows partition?
- Is cloud storage sync straightforward? It's my off-site backup solution on Android and Windows (using Cryptomator with Dropbox, Google Drive, etc) but I don't think that many providers have Linux clients. Is something like rclone recommended?
- Should I just use apt to install software? I know there's some kind of graphical package manager (synaptic?), does that use apt under the covers or is it separate? Is it recommended to install something like Flathub too?
- Any other pearls of wisdom? How do I keep everything tidy? Any warnings about what not to do? Should I use a particular terminal emulator or Firefox fork?
- I believe there is still an issue with Windows deleting Linux bootloaders during some updates. You'll be fine if you install Linux on a separate disk, and even if you dual-boot on one disk and the bootloader gets deleted, there are ways to recover it. You don't strictly need to have separate data and OS partitions, and I've gone back and forth on whether I prefer it - it makes distro hopping and disk encryption easier, at the cost of potentially inefficient use of space and serious consequences if your OS partition fills up.
- Disk encryption is very straightforward if you use separate OS and data partitions. You literally just tick a box during the install and enter an extra password. It won't upset Windows any more than a normal install does (i.e. Windows might think it's corrupted, but won't do anything without your input). With one partition for everything, it's still possible, but the encryption will be much weaker and handled by the bootloader in a somewhat clunkier way, and I'm not sure if Mint even supports that setup.
- I don't have much experience with this myself, and certainly not on Linux Mint, so I'll leave this one to other commenters.
- Synaptic is just a fancy frontend to APT, and I think Mint also has something called mintInstall, which was just an apt frontend back when I used it, but I think it also supports Flatpak now. It's entirely up to personal preference as to which UI you prefer. I do recommend you set up Flathub if it's not there by default, as it gives you access to a ton of useful apps that can't be packaged by Debian, Ubuntu, and Mint for various reasons.
- Don't download software from random websites unless it's absolutely necessary. Chances are, their version either won't work well, if at all, or will break your system. Try APT first, Flatpak second, everything else is a last resort option. If a program you used on Windows doesn't have a (working, native) Linux version, try finding and learning to use an alternative that is in the APT repositories before downloading the Windows version and using it on Wine. Back up your most important files from Windows before installing Linux in dual boot, just in case you make a mistake somewhere. To answer the last question, stick to the default terminal emulator and Firefox installation unless there's a feature you really want in another one; the distro's developers picked them for a reason, after all.
I haven’t had issues with windows messing my boot in a very, very long time. I see people mentioning it and it always scratch my head. It might be related to me switching to UEFI boot.
I'm working on possibly outdated second-hand information, so maybe it isn't happening anymore. I haven't been dual booting since ~2018 and even then I basically never used Windows.
What do you recommend I do about disk partitions?
I recommend using defaults unless you do disk-level backups, or plan on switching disks/partitions between systems (you can put your whole /home dir on a NAS, but should you?)
I’m keeping a Windows install for the few things that demand it, does Windows still occasionally destroy Linux partitions?
Yes*. Many such cases.
*there's always a reason why it was preventable (as the top comment on that post explains), but c'mon... Really?
Do I need separate partitions for data and OS?
Probably not, for reasons I explained above
Is it straightforward to add additional distros as new partitions or is that asking for trouble?
It's straight-forward-ish. It will require deviating from installer defaults, and depends on how interconnected you want the OSes to be.
This is actually a good reason to get into partitioning shenanigans, if you'll use all the distros regularly, and you want them to have shared access to certain folders (e.g. /root, /var, /home, /tmp, /etc, etc). I recommend turning everything (except windows, /boot and /boot/efi) into logical volumes with LVS to avoid space issues when you can't extend a partition sandwiched in between two others.
By default, /boot and /boot/efi should be their own partitions--/boot should be created for Linux, and Linux will use the EFI partition created by micro$oft--and I'd recommend giving /boot N times the default amount of space (N being the number of distros you plan on keeping in rotation at any given time); this shouldn't eat up too much space, Debian gave me 500 MB for /boot. The reason being /boot carries the kernel images for each and every OS, and often duplicates thereof for rescue backups.
Is disk encryption straightforward? And is that likely to upset the Windows partition?
Yes it's easy with LUKS. Full disk encryption encrypts everything, and that will likely upset windows, idk haven't tried on my dual-boot.
Is cloud storage sync straightforward? It’s my off-site backup solution on Android and Windows (using Cryptomator with Dropbox, Google Drive, etc) but I don’t think that many providers have Linux clients. Is something like rclone recommended?
Yes, if you use a DE with it integrated. Otherwise, it's up to you to choose the right software, rclone looks like a good choice to me, but I have not used it
Should I just use apt to install software? I know there’s some kind of graphical package manager (synaptic?), does that use apt under the covers or is it separate?
synaptic is no longer used iirc. It's just called "Software Manager," but yes, I believe it's just a GUI for apt. I personally prefer doing as much as I can with the command line. Not only is it the simplest, most straightforward way of achieving whatever I'm trying to do, it's usually also the quickest and best documented. YMMV
Is it recommended to install something like Flathub too?
My experience has been to avoid non-defaults as much as possible. If there's a software you can only get as a flatpak and you need that and can't make do with an alternative, then do it. Otherwise, just see what you can do with the apt repositories
Any other pearls of wisdom? ... Any warnings about what not to do?
I could spend a few hours digging up every mistake I made and telling you what not to do, but I'd rather focus on giving you the tools to clean up after yourself when you make your own. The one best piece of advice I can give is "keep at it." There will be times when you shoot yourself in the foot and your options are to give up and lose the foot or do foot surgery right then on your own (with the help of the online community ofc). Don't be afraid to ask questions everywhere or anywhere, don't let assholes dissuade you from enjoying your Linux your way or seeking help doing so, and do read the docs. But most importantly, do keep trying; it's such a rewarding feeling.
Another would be to change as little as possible from a known working configuration at a time. Go with installer defaults as much as you can, change the stuff later. Want to try out new software? Try one new thing and get it working and looking how you envision before moving on. Read the docs so you don't take any settings for granted, that way you're not left with something that's passable instead of exactly what you want.
Make backups. Get a second SSD or an external drive and backup your system. Things like /usr, /etc, /root, and /home at the very minimum. Backups are the best way to unfuck your foot when you inevitably shoot it.
Learn the coreutils. You might not use them daily, but you'll be glad you know they're there when you need them and don't have to install extraneous software that isn't well maintained because it's a redundancy of the most common pieces of linux software.
How do I keep everything tidy?
Learn the FHS. As with most documentation, it's a bit dry, but very enlightening and will automatically put you in the top 10% of linux users with your newfound special knowledge.
There are some automatic file organizers, but you can recreate them yourself to suit your exact needs at 1/10th the resource cost using bash scripts.
Sidebar: another good piece of advice, learn to script in Bash. It basically immediately qualifies you to be a *nix sysadmin, and it makes everything automatable. It's so much easier than downloading new software or compiling a git repo for each individual task you want to automate. Additionally, it helps to learn to use cron, to run the scripts automatically, and to learn a command-line text editor (no, nano does not count)--but those're mostly just for efficiency boost, the big timesaves are in learning to script first and foremost.
As with any skill, the common wisdom is to "choose a project you want to make, then learn the skill by making it." So it's not a bad idea to learn scripting by, say, writing a script that detects files of a certain format in a directory tree and moving them elsewhere. E.g. check ~/Downloads and all of its subfolders for files ending in .jpg, then move them to ~/Pictures/JPGs (and make the directory if it's not already there). This should give you a good chance to practice file operations and string manipulation/parsing. After that, learn how to have cron run it once a week or something.
Should I use a particular terminal emulator or Firefox fork?
This just falls under my "probably best to stick with defaults and branch out later" advice, but:
I use terminator, purely because it has a logger plugin (which saves all input and output, including stderr, into a file if I'm doing something that needs that much documenting). I'd say learn to use tmux at some point as well, but that's just because I like moving my hand between keyboard and mouse as little as possible.
As for firefox, vanilla has always worked for me. It's not private enough for some people, so they will recommend something like LibreWolf or even Tor. On my laptop (which is completely keyboard driven so I can avoid using a touchpad) I use qutebrowser; it's not as full-featured (i wouldn't use it for video streaming), but it avoids using a mouse.
Than you for such detailed response! I find it incredibly useful to pickup on extra nuggets of information even if the question was not directly applicable to me.
Nothing, there is nothing wrong with nano. There are what I will call vim purists who think using anything but vim is sacrilege. I've been using nano, and it's predecessor Pico forever and while I can use vim if I need to, I don't hate myself enough to do so.
I know but I just wanted to know what their take on it is.
I never said there was a right choice, and I do not like people putting words in my mouth only to attack a strawman.
That’s something fascists do, and I refuse to converse further with someone who supports genocide.
Yes yes, vim good, nano bad. And rather than have discourse on the matter I'll call you all fascists and claim you support genocide. Definitely an adult thing to do, good job you.
Mint do have software center preinstalled, which supporta flatpaks. Synaptic is a wrapper around apt afaik and it is useful for people who want to use apt without knowing the commands.
For dual booting with windows, I find this guide from System76 to be pretty good. https://support.system76.com/articles/windows/
To make life easier for yourself, I'd highly recommend running Linux on a separate drive. The Linux distribution installers I've used will install the bootloader on whatever drive you choose to install on, but the windows installer will use the storage controller's port ordering to choose which drive to install on.
Your best bet is to simply disconnect the Windows drive when installing Linux and to disconnect the Linux drive when installing Windows, then just use the BIOS boot selection screen to choose which OS to boot into.
You can add your Windows drive to Grub and you might be able to add your Linux distro to your Windows bootloader, but keeping them entirely separate is probably best.
I vaguely remember from trying this many years ago that if you install Windows first it will try and wipe everything, and if you install Linux second it will leave Windows alone, and you can then go straight to grub on every boot and choose Windows or Linux. Is that still the case?
Kinda, if you install Linux first, WIndows will not be able to see the space occupied by the Ubuntu partition, so it will not try to fill it, but I would still go with another disk, since the most common problems of dual boot will not occur. And is easier to setup, just install windows in one disk and Ubuntu in another, then you can change the boot by the BIOS menu.
What do you recommend I do about disk partitions?
I usually put the OS on a separate partition from /home/user, so if I want to reinstall I can do it without losing my home stuff. Once you've settled into a distro you may want to keep /var separate too, in case it ever gets filled up it won't affect your root.
A desktop distro will take up more disk space than a server one, where you can typically fit a server into 20 GB you might want to set aside at least 50-60 GB for a desktop. And that's just software and package caches, not counting games and such. If you split root and /var then 30/30GB would do.
Yes Windows can occasionally mess with your bootloaders if it's installed on the same drive.
Linux distros will typically recognize each other and add each other to the grub boot menu. Also typically you get a choice of whether you want them to do this during install so you should be able to refuse this from secondary distros and re-generate the menu on your main distro to pick up the others.
Is cloud storage sync straightforward?
I think Dropbox is the only one that has an actively maintained desktop client. But rclone will deal with almost anything else.
Should I just use apt to install software?
No, but be careful what you use, and about apt too. The dependency tree can develop issues if you add 3rd party .deb repos that overwrite native packages. Some repos are curteous (Docker is one of them) and publish packages under distinct names, most are not.
Debian native packages can grow long in the tooth because Debian only releases stuff once every two years (next one in 2025). This is where something like Flatpak comes in; the Flathub offer is tiny (under 3k packages) but it's chock-full of useful desktop apps, in case you need a more recent version of anything. Steam or Firefox will be a strong candidates for Flatpak installation, for example.
I use the normal Firefox btw. Never saw a compelling enough argument for the clones and all kinds of downsides.
If you want a package manager learn to use
aptitude
on the CLI. It has a menu and everything, just takes a bit getting used to. It's the best there is.Any other pearls of wisdom?
If you want to keep things tidy I would strongly recommend sticking to native packages for all important stuff like system things, desktop environments, drivers. Avoid 3rd party repos if not well-behaved. For anything you're missing or not new enough try Flatpak first. For CLI, programming languages, servers etc. I would strongly recommend installing Docker from their official repo (it's well-behaved) and installing stuff in Docker containers.
You need a swap but it doesn't have to be a partition. You can make it a file on /. You can also use zram and make it a compressed, dynamically sized piece of RAM and then forget about it. Check out the package
systemd-zram-generator
.Is it recommended to install something like Flathub too?
Flathub is awesome
Not recommended for security. Use your distros package manager
Flathub programs has some basic permissions management, which is a major upgrade.
Qubes is a major upgrade that makes this feature not worth the cons of lacking cryptographic authenticity checks.
You can use firejail or other sandoxes with any application packaged in any distribution.
What do you recommend I do about disk partitions?
I recommend separate EFI partitions while dual booting, I haven't seem issues with my separate EFI partition setup yet.
If Mint provides Btrfs filesystem I personally recommend looking into timeshift (snapshot software that can be setup to automatically snapshot your computer).
Is disk encryption straightforward?
According to Linux Mint forum, you need to choose an option in "Advanced features" while going through installer, that seems straight forward
*removed externally hosted image*
Is cloud storage sync straightforward?
Don't have experience with this but I can tell you: While rclone supports bi-directional sync, you need some setup for make it run periodically.
Should I just use apt to install software?
In the end you have to give trust to someone, I think it's fair to say if you already choose Mint you probably trust whatever options comes with Mint more than 3rd party options (but is it theoretically possible that backdoored program exists in Mint repository? of course yes).
Important things about dual booting:
-
Configure your Windows to use UTC time https://wiki.archlinux.org/title/System_time#UTC_in_Microsoft_Windows
-
Disable "Fast startup" in Windows (can possibly cause hardware issues if not disabled and it really doesn't improve things in computers with SSD)
-