Just keep in mind that you will not be receiving speedy security updates, and in some cases you will need to wait for quite a while before packages you have will be updated (weeks, maybe longer).
If you want a proper rolling release distro that is not Arch/Gentoo/Void/Nix/GuixSD, you could go for openSUSE, which provides a rolling release distro with a system rollback feature by default. Nice, easy to use GUIs for whatever you need. Although openSUSE also is sometimes a bit slow with the security updates for some packages, it’s nowhere near as slow as Debian testing.
What you’re proposing is creating a Frankendebian, which Debian explicitly warns against doing. The proper way of getting security patches from unstable would be to pull the source debs and compile it yourself against the current Debian testing base.
This lane of thinking however seems to be completely misguided when it comes to the target audience here, that is, a user who is not even experienced with Linux in general enough to know about various rolling release distros. Telling a user this inexperienced to go with either of those is in bad taste at the very least.
I don’t like flatpak or snap or any of them. System libraries exist for good reason, just because your computer is stupid fast and you have enough disk for the library of Congress a couple times over doesn’t mean you should run a veritable copy of your whole operating system for each program. IMO it’s lazy.
Sandboxing is a different thing though, if that’s the purpose then it’s doing it right.
I have a ton of flatpaks which means packages are shared between them, so no it’s not lazy or a copy of the whole system. It makes a ton of sense for stability.
Updates are diff’s so downloading and updating is fast. Not entire packages.
Making every package work with only a certain version of a dependency and hoping it is stable doesn’t make a lot of sense.
Besides that it’s only partially true (unless we speak Nix systems) That’s also not the point of it. It’s more about having runtime environment that an app was built against and tested with.
Sure. Except you gain universal compatibility for all distros that have flatpak and aren’t building all the different package formats. Makes it much more attractive for actual developers to package since it’s only done once.
There’s no right answer here, but there are definite benefits.
I’ve had many little issues since I moved to Linux years ago, most of which would never have been an issue if flatpaks were there at the time. My experience has been better with them.
Makes it much more attractive for actual developers to package since it’s only done once.
I maintain a few apps that are included into some distributions with no participation from my side apart from tagging what I consider releases in my git repo. How is doing something only once is more attractive as not doing it at all?
Because you can make sure it was done right. You don’t have to worry about bugs or other issues being the result of faulty packaging if you’re the one doing the packaging. Plus It makes reproducing bugs easier when everyone’s using the same package, and declaring the flatpak as the official package makes it much more likely that people will use the flatpak.
Yeah, that’s why Arch is almost the only distro that keeps everything installed natively. All other distros either have a troublesome workaround or only support flatpaks.
Rolling release just keeps everyone on the same pace. Yes, they break sometimes, but on the long run it just works.
I like them for the opposite reason. I’m still quite new to Linux, so I’m figuring out which software is best for me. I set up my server with Xubuntu and installed everything through Apt. I uninstalled a lot of software, but inevitably missed some things like libraries and config files.
Using Flatpak seems to keep track of everything, so uninstalling gets rid of everything that I would otherwise miss.
If it’s doing what it says on the tin, Flatpak is making my life much easier :)
Flatseal is super easy for anyone with a tech background to use. You can very quickly expand or reduce the access an app has to your system. Even below what the app comes with by default.
I do kinda wish the guis for installing flatpak apps were more forthcoming with the permissions, and possibly integrated some of the features of flatseal so you could modify the permission set before installing.
It works well enough for some very basic apps, but for me personally, Snap has created far more problems than it has solved. With Firefox, for example, it makes it a lot harder to use some extensions, and FileBot is entirely useless without file system access (I mean, that’s the entire point of the program).
I’ve heard Flatpak is better but my experience is somewhat limited. It could hardly be worse, though…
Each snap is mounted as its own filesystem, which is messy for several reasons (try making sense of the output of lsblk on your system). Flatpaks don't do that, though they sandbox in other ways. There really isn't a "Flatpak hell", the worst that can happen is packages that depend on different versions of the same library taking up a lot of storage space, which is a problem with snaps too.
I still prefer to rely on official repos but I do use a few Flatpaks here and there. But one of the main reasons why I don't run Ubuntu is because of Canonical's aggressive pushing of snaps.
The problem with Debian testing is that packages are not fresh, neither packages are fresh in sid. So, Debian is not a replacement for rolling distros like Arch Linux or openSUSE Thumbleweed
Personally i prefer the $ sudo because honestly i don’t always notice the symbol at the beginning but sudo is really easy to keep track of whats root and what isn’t
You’ve gotten a lot of good replies, so I’ll give you an example:
My wife and I set up a Minecraft server on an old work computer of hers. We would SSH in, start the server, and play. However, if the host lost the SSH session, the entire server would crash because the session would close.
With tmux, we could attach, start the server, and unattach. I could start the server and later my wife could attach to close it. I could SSH on my phone via iSH, attach, start the server, unattach, and close the app. We could troubleshoot mods together, since we could both see everything that happened in the session on our screens.
It offered a level of flexibility a traditional SSH session doesn’t give.
Minecraft is a procedurally generated open world video game.
For multiplayer, the computer hosting the game has to be able to load the portion of the world for each player. Having a dedicated computer hosting the server allows for much smoother gameplay experience then trying to have a single PC both run the server and client.
The machine we used for the server was literally one of my wife’s old work PCs and we just use it to host these types of games. We previously ran an ARC: Survival Evolved server on it.
Flatpak and Snap definitely make installation more simple. The packages come with their own dependencies so you have way less issues with conflicting dependencies. I like them when they are officially supported by the distribution or developer, but I prefer the official installations over supporting a random person making a package (not sure if this is a thing with Flatpak, but with Snaps that was definitely a thing).
Some software really benefits from not begin inside flatpak though, I had to switch back to the deb version of Visual Studio Code as the integrated console didn’t have access to some software outside the package and was also logging weird errors.
I think that is what is pretty cool about them, that you can have both versions with no problems. Also, of course if the flatpak is giving me problems, I just uninstall it and use the package manager or something else.
It would be so cool if they created the Debian for RPM/Enterprise Linux and all the other distros from that “family” used it as a rock-solid upstream base.
Yeah, and I love it. However, after knowing the deb and the rpm worlds for the 20 years I’ve been using Linux, I believe it is too late for these two sides to unite and work together.
Even without talking about different dot extension, there are multiple incompatible repo with the same ones. Take RHEL vs SuSE vs Fedora, or Ubuntu vs Debian
They don't hype it as much as (I think) they should on that webpage, but VanillaOS does this thing with it's package manager, Apx, where it allows you to install applications from various distros via containers, and run them all side-by-side seamlessly. It's neat.
What about the packages that are not available in flatpak? I assume there must be some packages that are only available in certain corners of the internet?
Yeah, that's what I mean. You can use flatpak (or snap if you swing that way) but you can also install applications via containers. They're still not installed on the OS-- even "native" applications get installed via the container. So if the application you want is maintained for arch in aur, you can add the --aur tag to the apx command and it will install that version instead of the default, which is ubuntu. This also works for fedora applications.
Doesn't that result in a lot of wasted space from duplicated dependencies? Don't get me wrong, this looks great on paper, which is why I desperately need to find fault with it before I start distrohopping again.
I'm sure it does to some degree, though I don't know if it's enough to matter on modern computers, and isn't that what flatpak does, too? (duplicating dependencies)
In any event, if you don't need an application from a specific distro there's no reason to create that container. The non-ubuntu ones get created when they're needed. (And I think the next version of VanillaOS will be debian-based, not ubuntu; in case that matters.)
Flatpaks aren't the only option in Silverblue: you can also layer packages using 'rpm-ostree' (requires a reboot though), and you can also use toolbx (or even better, distrobox) to create an easy-to-use container that you can do anything with. With distrobox you can install an app inside of a fedora/ubuntu/arch/other container, and then use a simple terminal command to expose that app to your host system as if it was installed natively.
I'm on Silverblue and I have mostly flatpaks plus a handful of layered packages as my base system. Then I have a couple of distrobox ubuntu containers for software development (lots of libraries and build tools), music production (with Yabridge and Wine). Because the base system is immutable I've never had a problem that prevented my computer from booting, and if I ever do, it's extremely easy to roll back to before the last update. I've had a couple of issues working with containers in the past, but not big ones, and much of that comes down to my own user error.
I definitely recommend Silverblue for anyone who wants a rock solid, practically unbreakable Linux system.
I wonder how well it integrates with hardware. Arch with the pacman packages has been the only distro where I could get ROCm working reliably. I'd love to make a "ROCm container" and dump all that mess into it's own sandbox.
In fact, the thing I really want is more of a "Qubes but not for security tryhards" (aka I can actually use Wayland AND game on it) where everything gets it's own container mainly for organizational purposes, but something like this sounds like a fair compromise.
Again - I have no idea how well it's hardware support is. I assume 3d accel and whatnot would be fine because it's widely used, but dunno if anyone tried running ROCm on it.
That is actually awesome. It sound like the Fedora aliens (?) but probably more reliable. Cool. Adding VanillaOS that to the list potential new OS that makes computing easy and fun.
I have an arguably bad piece of advice, but one I hadn’t seen in skimming the replies.
You could always install Windows in a VM. Libvirt and virt-manager offer a pleasant GUI experience so it’s easy to do. If you give the VM a heavy resource allotment (while leaving a reasonable amount for the host) it should still perform well. The VM video driver is the only place you take a not insignificant performance hit, but for A/V manipulation I don’t think it’ll matter. Unless you use GPU based video encoding. In which case it’ll be CPU bound now so slower. You can potentially do PCI pass through to your GPU but that adds complexity.
A big downside here is that as far as Windows is concerned, this is different “hardware” so it won’t activate based on your physical device. As I recall, it only allows the use of one core while unactivated which is pretty much unusable. So a pretty hefty expense relative to a personal VM, I think. But it is an option.
“A big downside here is that as far as Windows is concerned, this is different “hardware” so it won’t activate based on your physical device.”
You can transfer a Windows licence from another installation, so in OP’s situation, from the original installation. During Windows setup, select the ‘I don’t have a license key’ option, then once Windows is installed, go into settings, click the Windows isn’t activated option, and go through the activation troubleshooter.
I can’t remember exactly where, but somewhere in there is the option to transfer the license from another installation. It has to be the same version of Windows.
The license transfer also depends what edition was being used. OEM may be stuck with the hardware, traditionally you could take a retail license to a new install.
If you switch everything you can to flatpaks and use distrobox for other apps before you switch you’re pretty close (better than toolbox and recommend layering it if you do switch to Silverblue).
Anything can be layered onto Silverblue if it can’t be installed another way. I’ve found it works well.
Sounds dope. I love OpenSuse. I almost made it my main OS, but got kicked in the ass installing graphics drivers and the fixes were many and too annoying.
I had a reasonably good time getting NVIDIA drivers installed. I found the instructions here. I installed the newest drivers using the following command + a reboot. transactional-update -i pkg in nvidia-driver-G06-kmp-default nvidia-video-G06 nvidia-gl-G06 nvidia-compute-G06 nvidia-utils-G06 nvidia-compute-utils-G06The OpenSUSE guide doesn’t include compute-utils, which is needed if you want to run nvidia-smi. I haven’t tried installing a full CUDA SDK, so ymmv there.
I also like them just for the sake of tidiness. Some apps like Steam tend to make a big mess of dependencies all over the place, so it’s nice to have that all contained in one place. It does take up more space but I have a reasonably big hard drive so it’s kind of negligible for me.
It certainly has simplified things for me! To get anything so up to date, I would need to use something like Arch or the AUR, which is fine but I find unappealing (using Arch).
The benefit of testing branch is it's still nit quite so bleeding edge, and updating from testing branch every week means you'll never have to install new stable releases, you'll already be running it.
While the testing branch is stable, if you want even more assurance of consistant stabilty, use Devuan testing branch, which is Debian without systemd.
thanks for the answer! In your experience, is Devuan more stable than classical Debian? I’ve never used a non-systemd distro, so I don’t really know what to expect from it
Yes, Devuan is more stable. It's not modified or forked, it's still Debian .deb files but with a different init system.
The difference is systemd is one thing to handle everything. The other inits are launched or initiated each time something thing starts on an individual basis.
I have heard that systemd has greatly improved, but a different init starts a new process ID for each separate program so if something locks or freezes, it affects that one inidividual init process. For systemd, which runs system wide to handle everything, if one program locks, systemd has to make adjusts for the whole system to fix the problem.
I also tried Artix, which is native Arch without systemd, and while it was still a rolling system like Arch, I found Artix to run smoother or lighter than Arch.
Some people find command line with systemd easier to do becase it is one centrslized control system, I say no, what you gain in ease of management you lose in optimal performance and precise control over each individual one, as opposed to systemd being a blanket system. I want Firefox running an isolated process from the one that Plasama desktop is running, each sith their own init started only when each one was started and not controlled by a shared resource.
I’ve been using it for 5 years on laptop and desktop and I’ve had very few issues since then. Imo it offers the best trade-off between up to date packages (and availability of packages and repos), rolling release and stability. I don’t see any reason to switch distros anytime soon.
More details: I’m using xfce and I’ve installed firefox from the unstable branch (via apt pinning) because I wanted it to be more bleeding edge.
thanks for the answer! I have installed it on a VM and noticed that only firefox-esr is present, which is a couple of versions behind. Why isn’t a “normal” firefox package included? and also, does installing firefox from the unstable branch causes any problems to other packages, conflicts, etc, or is it completely safe?
Yes, that’s why I installed it from unstable. The ESR version is an older version with added security patches. I’m not sure, why exactly they are doing it like that and I don’t think it’s a good idea. I’d say a browser should be as up to date as possible for both, bug fixes AND new features. But it worked flawlessly using the “unstable” firefox package. Another option would be the flatpak, but that’s not that well integrated into the system - last time I tried that, the font rendering in the browser was awkward. I use some other flatpaks though, most notably gimp and inkskape which work really well and are very up to date that way.
linux
Newest
This magazine is from a federated server and may be incomplete. Browse more on the original instance.