this post was submitted on 22 Oct 2023
103 points (100.0% liked)

Linux

1257 readers
36 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

There are many Distros out there, but what they all do is make useful and modern systems.

What are your not well known hacks/tricks to make the Linux Desktop experience WAY better and modern?

Here are mine

Install a bigger Distro

I dont recommend Ubuntu anymore, as they are simply doing things that are not traditional anymore. Unless they open source their snap store, and allow third party repos, its simply not a free Linux Distro.

But its true that sticking to something "Upstream" helps a lot with stable Experience and Support.

I recommend Fedora, and they put a lot of focus on the new, modern Atomic Variants.

You may also stick to Opensuse, Arch or even Debian. Debian will get boring and stay partly broken. Opensuse struggles with adaption sometimes. Arch is Arch...

Get Flatpak & Flathub

Having an "out of the box" system helps extremely with updates, package conflicts and all. With Flatpak, you have access to nearly all Graphical Linux Applications (that are widely used and maintained).

Its not sufficient for everything, but 70% or so of the users could totally have a 90% Flatpak/10% native packages system.

This reduces the amount of entropy drastically. Entropy means chaos, the randomness that your package manager needs to fight. Every install and removal of a package makes your system diverge from the tested version upstream, and developers will often say "We cant reproduce this issue".

Also at the same time, Flatpaks remove the need of seperate packaging, they have official binaries (--subsection=verified). Thus the versions are often newer.

Also, Flatpaks are open, and have easy containerization and permission management.

Containerize workloads

Example: I have a Laptop that does Private, Secure and Work things.

Best would be to have isolated containers or even Virtual Machines, if you really dont want other apps spying on something you dont like. This is luckily nearly nonexistent, even though X11 and the lack of SELinux make common Distros not actually secure.

So if you can use VMs with graphical acceleration and have enough RAM, install a very light Desktop on there or even a Window Manager (Fedora Sway spin?).

One step below: you can use isolated containers. Toolbox and Distrobox are not suited for that out of the box, but there are ways to isolate its directories and also remove filesystem permissions completely.

The last but still useful step is to have Toolbox/Distrobox Containers. It doesnt isolate your filesystem at all, as its primary use case is to have app support from every Linux Distro. So you can use Ubuntu PPA, Arch AUR, Fedora COPR, Opensuse and many more Distro-specific repos.

While thats mostly not needed, you can group your projects here, most common use case is a dev environment with loads of other dependencies, that you dont want to put on your main system.

Stick to secure defaults

Example: Fedora and others are nearly unique at using SELinux, which is naturally on Android.

Also, Distros being very stable with Wayland, Pipewire and other modern standards, are a good indication. Switching from Kubuntu to Fedora-KDE for example was a great step.

Its not best to self hack all your security features. Even though MAC address randomization or secure DNS settings are not default poorly.

Things like hardened kernel, hardened malloc, measured boot, hash authentification (Heads BIOS for example) are not common, which is pretty bad.

Try OSTree Distros

There are now great talks about different versions of Immutability.

  • Linux User Space: Happy Rebasing to everyone!
  • Fedora Project Podcast: Silverblue and immutable Desktops

To keep it short: Do you know how your system will look like after using it regularily, updating, installing, uninstalling, for many upgrades?

You can be more sure by following the containerization standards, but still the system can not be resetted, and you cant simply display the changes you did to your system.

With OSTree Distros you can reset, rebase to another system (completely different or simply with some other packages), display every change you did to it, revert the changes to your last boot, keep any image as a backup before experimenting... And all updates and installs are atomic! If something fails, you will have no update, no chance to break at all, even when using rolling git releases or something.

Automate

Automate updates, this is so important and poorly not standard. This doesnt mean having to click a button on a store always. I am working on some better system, detecting networks and battery state.

Automate backups of important directories to an external Drive.

For example using Syncthing. Why need a server when you have all your data on two devices that you own. The chance of both breaking is not very high.

Or use Nextcloud, maybe combine it with Cryptomator if you dont trust your Server.

Automate command line tasks in your shell config.

Automate app startups if they take long.

Automate your passwords by using a password manager.

Automate annoying cookie banner removal using UBlock Origin.

Automate entering "sort by price" or "only in 100km range" etc in ebay, or anything else, using "Add Custom Search Engine" and a custom search string.


What are your tips for Linux Desktops?

top 22 comments
sorted by: hot top controversial new old
[–] Frederic 14 points 1 year ago (2 children)

Maybe I'm old school, but I have 100% native and 0% flatpak

[–] penquin@lemmy.kde.social 3 points 1 year ago

You're not alone. I never use them. Too much storage. Too much fiddling to make them have the same theme as the system. AUR has everything I need.

[–] superguy@lemm.ee 1 points 1 year ago

Great solution.

I think flatpaks are a good stop-gap, but we should always strive for native programs.

[–] Tibert@jlai.lu 7 points 1 year ago (1 children)

There are some useful things in there, but it can get complicated. If i could get to Linux I wouldn't need a lot of this stuff, or at least I wouldn't need to think about it.

Tho I can't get to it yet (and no I'm not willing to do a windows vm), because of 2 things :

  • I'm playing warframe, and sometimes I open alecafrale in the background with the overlays to know what reward to pick. And it seems they overwolf and the app is not compatible with Linux, at least from what I could read.

  • I am using gpu virtualisation to share my pc occasionally with my brother. And on Linux, there is an alternative with LIBVF.IO. but sadly, not compatible with newer amd gpus, or at least from the tutorial and arch wiki, pretty complicated to make it run, if even possible.

When these 2 things would be fixed, maybe I'll consider it, if i don't have to switch to windows every 2 days...

[–] Mythnubb@lemm.ee 3 points 1 year ago (1 children)

I am using gpu virtualisation to share my pc occasionally with my brother.

Care to elaborate on this? I'm curious how you're doing it.

[–] Retiring@lemmy.ml 6 points 1 year ago (1 children)

How would one remove cookie banners with ublock origin?

[–] maeries@feddit.de 18 points 1 year ago* (last edited 1 year ago) (1 children)

Activate the EasyList - Annoyances in the Ublock settings

[–] Pantherina@feddit.de 5 points 1 year ago

Or manually use the dropper and remove it

[–] ultra@feddit.ro 2 points 1 year ago (2 children)

The OSTree advantages are also NixOS advantages

[–] Pantherina@feddit.de 3 points 1 year ago (1 children)

I am curious about NixOS, how are they similar or different? Is NixOS harder to set up? Where do the packages come from?

[–] ultra@feddit.ro 3 points 1 year ago

The packages come from nixpkgs, which is a huge GitHub repo with instructions on how to build packages. Nix, the package manager, interprets the instructions and builds the packages reproducibly.

Because it's a github repo, anyone can submit new packages, but the changes have to be approved by a trusted person

[–] andruid@lemmy.ml 2 points 1 year ago (1 children)

How good is nix system config to OCI container? I really need to get my hands on it more, because that seems like a good experience to me. Maybe even use it as a build system for OCI/k8s config map generator/k8s manifest builder so I can define a system and build out the pieces needed to deploy on distributed system if need be.

[–] ultra@feddit.ro 2 points 1 year ago

It is a full functional programming language

[–] jasondj@ttrpg.network 1 points 1 year ago

That’s great and all…but Alt-Drag is missing.

I’ve honestly been using Linux on and off for nearly 25 years, and daily the past 6 or so…and somehow just found out about this, and now my life is changed.

[–] eric@lemmy.ca 1 points 1 year ago (1 children)

I have problems with gaming on Nvidia unless I use Arch. Any benefit of switching to Fedora?

[–] Pantherina@feddit.de 2 points 1 year ago

Not for features, but for stability. Using a ublue image like Bazzite is said to give a good experience, they have NVIDIA images too.

No feature advantages possibly, but breakages are unlikely as they are building the system. If it doesnt build, you dont get an update, thats it.

I heard experiences that NVIDIA proprietary drivers dont go well with rolling distros.

But I use none of both.