1
384
submitted 2 years ago* (last edited 2 years ago) by wfh@lemm.ee to c/linux@lemmy.ml

You're about to take your first steps in the wonderful world of Linux, but you're overwhelmed by the amount of choices? Welcome to this (I hope) very simple guide :)

The aim of this guide is to provide simple, clear information to ease your transition as a beginner. This is not a be-all-end-all guide nor an advanced guide. Because there is a lot of info and explanations everywhere, I will often (over-)simplify so as to keep the information accessible and digestible. Please refrain from asking to add your favorite distro/DE in the comments, I feel there is too much choice already ;)

Preamble

Make sure your hardware is compatible

Nowadays most relatively recent hardware works perfectly fine on Linux, but there are some edge cases still. If you don't use niche hardware and your wifi card is supported, chances are you're golden. Please note that nVidia is a bad faith player in the Linux world, so if you have a GeForce GPU, expect some trouble.

Make sure your favourite apps are either available or have a good replacement on Linux

If some proprietary app is essential to your workflow and is irreplaceable, consider running it in a VM, keeping a Windows partition for it or try and run it through Wine (this is advanced stuff though).

Be aware that Linux is not Windows/MacOS

Things work differently, and this is normal. You will probably struggle at the beginning while adjusting to a new paradigm. You may have to troubleshoot some things. You may break some things in the process. You will probably get frustrated at some point or another. It's okay. You're learning something new, and it can be hard to shed old habits forged by years on another system.

When in doubt, search for documentation

Arch Wiki is one of the greatest knowledge bases about Linux. Despite being heavily tied to Arch, most of its content is readily usable to troubleshoot most modern distros, as the building blocks (Kernel, systemd, core system apps, XOrg/Wayland, your DE of choice etc.) are the same. Most distros also maintain their own knowledge base.

Understanding the Linux world

What is Linux?

Linux, in the strictest definition, is the kernel, ie. the core component that, among other things, orchestrates and handles all interactions between hardware and software, of a large family of operating systems that, by metonymy, are called "Linux". In general understanding, Linux is any one of these operating systems, called distros.

What is a distro?

A distro, short for "Software Distribution", is a cohesive ensemble of software, providing a full operating system, maintained by a single team. Generally, all of them tend to provide almost the same software and work in a very similar way, but there are major philosophical differences that may influence your choice.

What are the main differences between distros?

As said above, there are a lot of philosophical differences between distros that lead to practical differences. There are a lot of very different ways the same software can be distributed.

  • "Point Release" (OpenSUSE Leap) vs. "Rolling Release" (OpenSUSE Tumbleweed): Point release distros are like traditional software. They have numbered releases, and between each one no feature updates take place, only security updates and bug fixes. Rolling Release distros package and distribute software as soon as it's available upstream (the software developer's repos), meaning that there are no versions and no specific schedule.
  • "Stable" (Debian Stable) vs. "Bleeding edge" (Arch): Stable distros are generally point release, and focus on fixing bugs and security flaws at the expense of new features. Each version goes through a lenghty period of feature freeze, testing and bug fixing before release. Stability here not only means trouble-free operation, but more importantly consistent behavior over time. Things won't evolve, but things won't break. At least until the next release. Bleeding edge distros, which often follow the rolling release model (there are outliers like Fedora which are mostly bleeding edge yet have point releases), on the other hand, are permanently evolving. By constantly pushing the latest version of each software package, new features, new bugs, bug fixes, security updates and sometimes breaking changes are released continuously. Note that this is not a binary, there is a very large continuum between the stablest and the most bleeding edge distro.
  • "Community" (Fedora) vs. "Commercial" (RHEL): Despite the name, Community distros are not only maintained by volunteers, but can also be developed by some company's employees and can be sponsored by commercial entities. However, the main difference with Commercial distros is that they're not a product destined to be sold. Commercial distros like Red Hat's RHEL, SuSE Linux Enterprise or Ubuntu Pro are (supposed to be) fully maintained by their company's employees and target businesses with paid support, maintenance, fixes, deployment, training etc.
  • "x package manager" vs. "y package manager", "x package format" vs. "y package format": It doesn't matter. Seriously. apt, dnf or pacman, to name a few, all have the exact same purpose: install and update software on your system and manage dependencies.
  • "general purpose" (Linux Mint) vs. "niche" (Kali Linux): General purpose distros are just that: distros that can do pretty much anything. Some are truly general purpose (like Debian), and have no bias towards any potential use, be it for a server, a desktop/laptop PC, some IOT or embedded devices, containers etc., some have various flavors depending on intended use (like Fedora Workstation for desktops and Fedora Server for, you guessed it, servers) but are still considered general purpose. They aim for maximum hardware compatibility and broad use cases. At the opposite end, niche distros are created for very specific and unique use cases, like pentesting (Kali), gaming (Nobara), music production (AV Linux) etc. They tend to have a lot of specific tools preinstalled, nonstandard defaults or modified kernels that may or may not work properly outside of their inteded use case.
  • "team" (Any major distro) vs. "single maintainer" (Nobara): Pretty self explanatory. Some distros are maintained by a single person or a very small group of people. These distros do not usually last very long.
  • "traditional" (Fedora Workstation) vs. "atomic" (Fedora Silverblue): In traditional distros, everything comes from a package. Every single component is individually installable, upgradeable, and deletable. Updating a package means deleting its previous version and replacing it with a new one. A power failure during an update lead to a partial upgrade and can make a system unbootable. Maybe a new package was bad and breaks something. Almost nothing prevents an unsuspecting user from destroying a core component. To mitigate risks and ensure a coherent system at each boot, atomic (also called transactional or immutable) distros, pioneered by Fedora Silverblue and Valve's SteamOS, were born. Like mobile phone OSes, the base system is a single image, that gets installed, alongside the current running version and without modifying it, and becomes active at the next reboot. As updates are isolated from one another, if the new version doesn't work the user can easily revert to a previous, functional version. Users are expected to install Flatpaks or use Distrobox, as installing (layering) packages is not as straightforward as with standard distros.
  • "OG" (Debian) vs. "derivative" (Ubuntu): Original distros are directly downstream of their components' source code repositories, and do most of the heavy lifting. Because of the tremendous amount of work it represents, only a few distros like Debian, Arch, Slackware or Fedora have the history, massive community and sometimes corporate financial backing to do this. Other distros reuse most packages from those original distros and add, replace or modify some of them for differenciation. For example, Debian is the parent of almost all deb-based distros like Ubuntu, which itself is the parent of distros like Mint or Pop!_OS.

What are the main components of a distro, ie. a Linux-based operating system?

All distros provide, install and maintain, among other things, the following components:

  • Boot and core system components (these are generally out-of-scope for beginners, unless you need to fix something, but you should at least know they exist):
    • A boot manager (GRUB, systemd_init, etc.): Boots the computer after the motherboard POSTs, lets you choose what to start
    • An init system (systemd, etc.): Starts everything needed to run the computer, including the kernel
    • A kernel (Linux): Has control over everything, main interface for software to discuss with hardware
  • Command-line environment, to interact with he computer in text mode:
    • A shell (bash, zsh, fish etc.): The main interface for command-line stuff
    • Command-line tools (GNU, etc.): Standard suite of command-line tools + default tools chosen by the distro maintainers
    • User-installable command-line tools and shells
  • Graphical stack for desktop/laptop computers:
    • Display servers (X11, Wayland compositors): Handle drawing stuff on screens
    • A Desktop environment (Plasma, Gnome, XFCE etc.): The main graphical interface you'll interact with everyday.
    • User-facing applications (browsers, text processors, drawing software etc.): Some are generally installed by default and/or are part of a desktop environment's suite of software, most are user-installable.
  • A package manager (apt, dnf, pacman, yast etc.): Installs, deletes, updates and manages dependencies of all software installed on the machine.

Which are the main Desktop Environments and which one should I choose?

As a new user, this is basically the only thing you should concern yourself about: choosing a first Desktop environment. After all, it will be your main interface for the weeks/years to come. It's almost as important as choosing your first distro. These are a few common choices that cater to different tastes:

  • Gnome: Full featured yet very minimalist, Gnome is a great DE that eschews the traditional Desktop metaphor. Like MacOS, out of the box, it provides its strongly opinionated developers' vision of a user experience. Fortunately, unlike MacOS, there are thousands of extensions to tweak and extend the looks and behaviour of the DE. Dash-to-dock or Dash-to-panel are great if you want a more MacOS-like or Windows-like experience, Blur My Shell is great if you love blurry transparent things, Appindicator is a must, and everything else is up to you. Gnome's development cycle is highly regular and all core components and apps follow the same release schedule, which explains why a lot of distros choose it as their default DE.
  • KDE Plasma: Full featured and maximalist, Plasma does not cater to a single design philosophy, is very flexible and can be tweaked almost ad infinitum. This may be an advantage for people who like to spend hours making the perfect environment, or a disadvantage as the possibilities can be overwhelming, and the added complexity may compromise stability, bugginess or completeness. There is not yet a single development cycle for core components and apps, which makes it a bit more difficult for distro maintainers and explains why there are so few distros with Plasma as the flagship DE. The KDE team is however evolving towards a more regular update cycle.
  • Cinnamon: Forked from Gnome 3 by the Linux Mint team who disliked the extreme change of user experience it introduced, Cinammon provides a very traditional, "windows-like", desktop-metaphor experience in a more modern software stack than the older DEs it takes inspiration from. Cinnamon still keeps a lot in common with Gnome by being simple and easy to use, yet heavily modifiable with themes, applets and extensions.
  • Lightweight DEs for old or underpowered machines: The likes of XFCE, LXDE, LXQt are great if you want to ressurect an old machine, but lack the bells and whistles of the aforementioned DEs. If your machine is super old, extremely underpowered and has less than a few Gb of RAM, don't expect miracles though. A single browser tab can easily dwarf the RAM usage and processing power of your entire system.

As for which one you should choose, this is entirely up to you, and depends on your preferences. FYI, you are not married to your distro's default desktop environment. It's just what comes preinstalled. You can install alternative DEs on any distro, no need to reinstall and/or distro-hop.

How do I install stuff on Linux?

Forget what you're used to do on Windows of MacOS: searching for your software in a seach engine, finding a big "Download" button on a random website and running an installer with administator privileges. Your package manager not only keeps you system up to date, but also lets you install any software that's available in your distro's repositories. You don't even need to know the command line, Gnome's Software or Plasma's Discover are nice graphical "App Stores" that let you find and install new software.

Flatpak are a great and more recent recent alternative to distro packages that's gaining a lot of traction, and is increasingly integrated by default to the aforementioned App Stores. It's basically a "universal" package manager system thet sits next to your system, that lets software developers directly distribute their own apps instead of offloading the packaging and distribution to distro maintainers.

Choosing a first distro

As discussed before, there is a metric fuckload (or 1.112 imperial fucktons) of distros out there. I advise you to keep it as mainstream as possible for your first steps. A distro with a large user base, backed by a decently large community of maintainers and contributors and aimed at being as fuss-free as possible is always better than a one-person effort tailored to a specific use-case. Choose a distro that implements well the DE of your choice.

What are great distros for beginners?

The following are great distros for beginners as well as more advanced users who just want to have a system that needs almost no configuration out of the box, just works and stays out of the way. Always read the installation documentation thoroughly before attempting anything, and follow any post-install requirements (for example, installing restricted-licence drivers on Fedora).

  • Fedora Workstation: Clean, sensible, modern and very up to date and should work out of the box for most hardware. Despite being sponsored by Red Hat (who are getting a lot of justified hate for moving RHEL away from open-source), this is a great community distro for both beginners and very advanced users (including the Linus Torvalds). Fedora is the flagship distro for the Gnome Desktop Environment, but also has a fantastic Plasma version. Keywords: Point Release, close to Bleeding Edge, Community, dnf/rpm, large maintainer team, traditional, original.
  • Linux Mint: Mint is an Ubuntu (or Debian for the LMDE variant) derivative for beginners and advanced users alike, that keeps Ubuntu's hardware support and ease of use while reverting its shenanigans and is Cinammon's flagship distro. Its main goal is to be a "just works" distro. Keywords: Point Release, halfway between Stable and Bleeding Edge, Community, apt/deb, smallish maintainer team but lots of contributors, traditional, derivative (Ubuntu or Debian).
  • Pop!_OS: Backed by hardware Linux vendor System76, this is another Ubuntu derivative that removes Snaps in favor or Flatpaks. Its heavily modified Gnome DE looks and feels nice. In a few months/years, it will be the flagship distro for the -promising but still in development- Cosmic DE. Keywords: Point Release, halfway between Stable and Bleeding Edge, commercially-backed Community, apt/deb, employee's maintainer team, traditional, derivative (Ubuntu).
  • If you want something (advertised as) zero-maintenance, why not go the Atomic way? They are still very new and there isn't a lot of support yet because they do things very differently than regular distros, but if they wort OOTB on your system, they should work reliably forever. Sensible choices are uBlue's Aurora (Plasma), Bluefin (Gnome) or Bazzite (gaming-ready), which are basically identical to Fedora's atomic variants but include (among other things) restricted-licence codecs and QOL improvements by default, or OpenSUSE's Aeon (Gnome). Keywords: Point Release, Bleeding Edge, Community, rpm-ostree, large maintainer team, Atomic, sub-project (Fedora/OpenSUSE).

Which power-user distros should I avoid as a beginner, unless I reaaaally need to understand everything instead of being productive day one?

These are amongst the very best but should not be installed as your first distro, unless you like extremely steep learning curves and being overwhelmed.

  • Debian Stable: as one of the oldest, still maintained distros and the granddaddy of probably half of the distros out there, Debian is built like a tank. A very stringent policy of focusing on bug and security fixes over new features makes Debian extremely stable and predictable, but it can also feel quite outdated. Still a rock-solid experience, with a lot to tinker with despite very sensible defaults. It is an incredible learning tool and is as "Standard Linux" as can be. Debian almost made the cut to "beginner" distros because of its incredible reliability and massive amount of documentation available, but it might be a bit too involved for an absolute beginner to configure to perfection. Keywords: Point Release, Stable as fuck, Community, apt/deb, large maintainer team, traditional, original.
  • Arch: The opposite of Debian in philosophy, packages often come to Arch almost as soon as the source code is released. Expect a lot of manual installation and configuration, daily updates, and regularly fixing stuff. An incredible learning tool too, that will make you intimate with the inner workings of Linux. The "Arch btw" meme of having to perform every single install step by hand has taken a hit since Arch has had a basic but functional installer for a few years now, which is honestly a good thing. I work in sofware. A software engineer who does every single tedious task manually instead of automating it is a shit software engineer. A software engineer who prides themself from doing every single tedious task manually should seriously reconsider their career choices. Arch's other main appeal is the Arch User Repository or AUR, a massive collection of user-created, automated install scripts for pretty much anything. Keywords: Rolling Release, Bleeding-edge, Community, pacman/pkg, large maintainer team, traditional, original.

Which distro should I avoid, period?

  • Ubuntu: despite having a huge mind-share as the beginner distro, Ubuntu suffers from it's parent company's policy to make Ubuntu kinda-Linux-but-not-really and a second-rate citizen compared to their Ubuntu Pro commercial product. Some of the worst takes in recent years have been pushing Snaps super agressively in order to get some "vendor-lock-in", proprietary walled-garden ecosystem with exclusive commercial apps, forcibly installing snaps even when explicitely asking for a .deb package through apt, baking ads and nags into major software or only delivering critical security patches to Pro customers. Fortunately, there are some great derivatives like Mint or Pop!_OS cited above that work equally well but revert some of the most controversial decisions made by Canonical.
  • Manjaro: Manjaro might seem appealing as a "user-friendlier" Arch derivative and some of its tools are fantastic to remove some configuration burden, but ongoing mismanagement issues and the fact that it needs Arch-style regular maintenance as updates often break stuff prevent it from being a truly beginner distro. Manjaro also has a highly irregular update schedule that's weeks behind Arch, making using the AUR extremely dangerous, as it always expects a fully up-to-date Arch system.
  • Any single-maintainer or tiny team distros like Nobara or CachyOS. They might be fantastic distros made by exceptional people (I have mad respect for Nobara's maintainer Glorious Eggroll and his work on Proton-GE), they are most often derivatives so the heavy lifting is already done by their parent distro's maitainers, but there is too much risk involved. Sometimes life happens, sometimes people move on to other projects, and dozens of small distros get abandonned every year, leaving their users dead in the water. Trusting larger teams is a much safer bet in the long term.
  • Anything that refuse to use standards for ideological reasons like Alpine Linux, Devuan or Artix. Don't get me wrong, not using any GNU tools or systemd is a cool technological feat and developing alternatives to the current consensus is how things evolve. However, these standard tools have a long history, hundreds if not thousands of maintainers and are used by millions, meaning there's a huge chance your specific issue is already solved. Refusing to use them should be reserved to very advanced users who perfectly understand what they're gaining and losing. As a beginner to intermediate level, it will at best make most of the documentation out there irrelevant, at worst make your life a miserable hell if you need to troubleshoot anything.

Philosophical questions, or "I've seen people arguing over the Internet and now I'm scared"

You've done your research, you're almost ready to take the plunge, you even read a lot of stuff on this very community or on the other website that starts with a "R", but people seem very passionately for or against stuff. What should you do?

Shoud I learn the command line?

Yes, eventually. To be honest, nowadays a lot of things can be configured on the fly graphically, through your DE's settings. But sometimes, it's much more efficient to work on the command line, and sometimes it's the only way to fix something. It's not that difficult, and you can be reasonably productive by understanding just about a dozen very simple commands.

I have a very old laptop/desktop, should I use a distro from its era?

Noooo!. Contrary to Windows and MacOS which only work correctly on period-correct computers, Linux runs perfectly well on any hardware from the last 20 to 30 years. You will not gain performance by using an old distro, but you will gain hundreds of critical security flaws that have been since corrected. If you need to squeeze performance out of an old computer, use a lightweight graphical environment or repurpose it as a headless home server. If it's possible, one of the best ways to breathe new life into an old machine is to add some RAM, as even lightweight modern sofware will struggle with less than a few Gb.

Should I be concerned about systemd?

No. In short, systemd is fine and all major distros have switched to systemd years ago. Even the extremely cautious people behind Debian have used systemd as default since 2015. Not wanting to use systemd is a niche more rooted in philosophical and ideological rather than practical or technical reasons, and leads to much deeper issues than you should concern yourself with as a beginner.

Should I be concerned about XOrg/Wayland?

Yes and No, but mostly No. First off, most distros install both Wayland and XOrg by default, so if one is not satisfying to you, try the other. Remember in the preamble when I said nVidia was a bad actor? Well, most of people's complaints about Wayland are because of nVidia and their shitty drivers, so GTX/RTX users should stay on XOrg for now. But like it or not, XOrg is dead and unmaintained, and Wayland is the present and future. XOrg did too many things, carried too many features from the 80's and 90's and its codebase is a barely maintainable mess. X11 was born in a time when mainframes did most of the heavy lifting and windows were forwarded over a local network to dumb clients. X11 predates the Internet and has basically no security model. Wayland solves that by being a much simpler display protocol with a much smaller feature set adapted to modern computing and security. The only downside is that some very specific functionalities based on decades of X11 hacking and absolute lack of security can be lost.

I want to play some games, should I look for a gaming distro?

No. General purpose distros are perfectly fine for gaming. You can install Steam, Lutris, Heroic, Itch etc. and use Proton just fine on almost anything. Even Debian. In short, yes, you can game on Linux, there are great tutorials on the internet.

Should I be concerned about Flatpaks and/or Snaps vs. native packages?

Not really. Flatpaks are great, and more and more developers package their apps directly in Flatpak format. As a rule of thumb, for user facing applications, if your app store gives you the choice between Flatpak and your native package manager version, choose the most recent stable version and/or the one packaged by the developer themselves (which should often be the Flatpak anyway). Snaps however are kinda bad. They are a Canonical/Ubuntu thing, so as long as you avoid Ubuntu, its spins and its derivatives that still include Snaps, you should be fine. They tend to take a lot longer to startup than regular apps or Flatpaks, the snap store is proprietary, centralized and Canonical controls every part of it. Also, Canonical is very aggressive in pushing snaps to their users, even forcing them even when they want to install an apt package. If you don't care, have fun.

I need/want program "x", but it is only available on distro "y" and not on mine. I've been told to ditch my beloved distro and install the other one, should I?

No. Generally, most software is intallable from your distro's package manager and/or Flatpak. But sometimes, your distro doesn't package this program you need, or an inconsiderate developer only distributes a random .deb on their Github release page. Enter Distrobox. It is a very simple, easy to use command line tool that automates the creation of other Linux distros containers using Docker or Podman (basically, tiny, semi-independant Linuxes that live inside your regular Linux), and lets you "export" programs installed inside these containers to you main system so you can run them as easily and with almost the same performance as native programs. Some atomic distros like uBlue's variants even include it by default. That .deb we've talked about before? Spin a Debian container and dpkg install the shit out of it. Absolutely need the AUR? Spin an Arch container and go to town.

Acknowledgements

Thanks to everyone who helped improve this guide: @GravitySpoiled@lemmy.ml, @tkn@startrek.website, @throwaway2@lemmy.today, @cerement@slrpnk.net, @kzhe@lemm.ee, @freijon@feddit.ch, @aarroyoc@lemuria.es, @SexualPolytope@lemmy.sdf.org, @Plopp@lemmy.world, @bsergay@discuss.online ...and many others who chimed in in the comments <3

Link to version 1: https://lemm.ee/post/15895051

2
23
submitted 1 hour ago* (last edited 1 hour ago) by u_1f914@lemmy.world to c/linux@lemmy.ml

Summary: Linux 6.19 adds a new listns(2) system call that makes much easier to list the namespaces present on the system; support for the Live Update Orchestrator, which allows to reboot a kernel via kexec while enough kernel state to allow virtual virtual machines continue working after a reboot; support for PCIe Link Encryption which lets PCIe devices encrypt its communication with confidential VMs; Btrfs support for the experimental shutdown ioctl and suspension during scrub or device replaces; Ext4 support for block devices larger than page size and faster online defragmentation; support for the color pipeline API for better and faster HDR graphics; improvements to io_uring; and support for the SFrame format that brings faster frame unwinding. As always, there are many other features, new drivers, improvements and fixes.

(Summary copied from the changelog at kernelnewbies.org/Linux_6.19)

3
11

I was testing out automatic disk decryption with the TPM and secure boot in a Qemu/KVM VM. I had Arch set up with a UKI, I followed this process to enable secure boot and enroll the keys which all worked fine. I then used systemd-cryptenroll to unlock the drive automatically which again worked great.

This is the part where I then messed up and I'm not quite sure how or why. I wanted to check that disabling secure boot prevented unlocking of the drive, so I enabled the boot menu in the VM settings, entered it and reset the secure boot settings. As expected I then needed to enter the password again. I then wanted to re-enable it so I re-ran sbctl enroll-keys -m to re-enroll the keys, and rebooted as my UKI was already signed. And that was that, VM completely dead. No matter whether I try to boot from the virtual disk, the virtual CD drive, or even the virtual network adapter all I get is a black screen with "Display output is not active". I can't even enter the firmware menu again because I no longer get that prompt.

It doesn't matter that this happened and I don't need to fix it because it was just a throwaway VM which I've now deleted, but I would like to know what caused it so I can avoid potentially bricking real hardware in the future

4
58
submitted 8 hours ago* (last edited 6 hours ago) by ushjftye@programming.dev to c/linux@lemmy.ml

image1

image2

image3

image4

Okay, here's a shit story. I was doing a routine scan with ClamAV feb 4th. Out of nowhere it popped for a trojan. Thought it was a bit weird, probably a false positive. Nope. I discovered a weird .DLL in WINE, not in their repos, not something I installed. listed as .BRM for windows 6. I hashed it and ran it against everything I'd pulled from my .DLL files. No match. I went digging and found the schroot under /run/ I took a look at the properties and the env showed 128.7TB of storage. The program I use with WINE requires network access to authenticate and because it was for audio production, it had access to my filesystem for samples.

Broke out wireshark and confirmed they were exfiltrating data. I always have the camera covered and the Mic disabled, but only through a blacklist. As soon as they saw me, they wiped everything from my home folder, everything that wasn't a base part of kde was gone. They got my passport, resumes, had just downloaded all my data from google and deleted my accounts. Wedding photos, contact lists, phone numbers, Everything. Immediately unplugged the router, disconnected the modem.

Found the roommate, he uses windows 10. No security updates, no antivirus. Rooted into his machine as well. 7 foreign IPs routing traffic over privoxy, shut down all the ports, airplane mode, took his important data and burned a windows 10 iso. He's okay now. I'm currently running photorec, foremost and autopsy on an image of my drive trying to get what I can. Reopened a bank account, changed the phone number now I'm paranoid. Network password was stupid easy (not my connection, I don't own it) and he had it set up so everyone with the password was admin. Every machine in the house is potentially compromised. He had a whole host of web 3.0 bullshit, chinese wifi camera,(probably watching through that) old google home assistant, ps4, xbox, light controls.

We ditched the router, the people I share this place with have no idea what a computer even is and I am trying to explain to them why this is a problem. My synthesiser's OS is based on montevista linux, I connect it to the laptop all the time. There's a server farm out there trying to get into insecure connections. I was rooted with 32x linux using a fake .DLL in WINE, he was rooted into by a Windows 10 machine. Of course he uses an admin account for everything. I pulled a shit tonne of persistence off my computer. Cron jobs, Startup scripts for privoxy and schroot, services, grub configuration, SSH keys, User Logins, Key loggers. This is sophisticated enough that they could tailor something on a per machine basis and I never would have found it if I hadn't been actively looking because since they schroot, none of those processes were available to me to view. I just had a funny feeling the last time I used WINE because the configuration kept updating and it normally only does that if you add a library, or make a change to the program and I hadn't done that in a month.

I need some help, fellas because I went to the cops and the cybercrime unit stops at "He posted my nudes on Facebook." This was not intended for me, this is meant to spread across as many machines as possible. ISP in our area recently put in fibre in a bunch of different houses and I'm worried they may be piggy backing our connection off our neighbours. How many people out there are using older versions of android with no security updates? What if they get someone who works in power generation, law enforcement, a nurse on the way to the hospital. It is so bad and I cannot get any one to listen to me. They think I'm a lunatic. Last thing, can you give me some advice on containerising applications in docker, command line docker. I'm not giving a company my personal information to use their stupid GUI and I want to cut this off at the head. No more free access to the file system, every application and all the files I use with them on their own container. How do I build something from source in a leak proof Docker environment? how do I install a web browser with no access to geoclue, date and time or files? Resources, if you can, would be incredibly helpful. I am only doing linux for 2 years as a hobby, this is out of my wheelhouse. Just a blank container with one program, so I can inspect files coming in and out of and decide if something gets access to my home directory or not. stay frosty out there.

Edit: finally figured out how to add pictures to this. You'll notice the tree from home folder that it's basically fucking empty. You'll also see ventoy which I had to have to get my housemate's stupid ASUS laptop to let me burn Microsoft's spyware onto it. You'll also see photorec which is currently digging through all the data left on the disk.img, you'll also see the output of my first attempt using foremost, which failed because the disk was mounted and live. Here is the audit.txt https://files.catbox.moe/picf4y.txt If you scroll down just a little bit, you will see the poisoned .DLL and the .exe that was hidden in it. Listed as created year 2000 and 1998. I don't use social media, like at ALL because it's all poison. Don't you call me a fucking liar. You have ABSOLUTELY no idea what I have been through in the last 3 days. I have talked to local police, state police, had to img my entire drive and send it to them. I have lost copies of all my personal identification documents, immigration documents, I have had law enforcement visit me repeatedly. THIS IS NOT a fucking joke.

Edit: Christ the way this website handles image hosting, I can't. 3 days of chainsmoking, talking to cops, reinstalling OSes and explaining to a 45 year old man that your router password cannot be 1love[name of his cat that he posts about on instagram]

Here all the images in one place. Sorry, incredibly stressful period right now, I use GNUicecat and since all of my user settings are gone I don't know what's working and what isn't because I haven't had 3 hours to sit down and configure it yet:

https://ibb.co/ns66L9WH

https://ibb.co/k6VKWkbn

https://ibb.co/Y7p1SxJK

https://ibb.co/nN0RKhF1

https://ibb.co/nMCHYpbQ

https://ibb.co/Lzjfs2dP

https://ibb.co/zH8c86jv

I need a fucking smoke

5
25
submitted 8 hours ago by ushjftye@programming.dev to c/linux@lemmy.ml

Okay, here's a shit story. I was doing a routine scan with ClamAV feb 4th. Out of nowhere it popped for a trojan. Thought it was a bit weird, probably a false positive. Nope. I discovered a weird .DLL in WINE, not in their repos, not something I installed. listed as .BRM for windows 6. I hashed it and ran it against everything I'd pulled from my .DLL files. I went digging and found the schroot under /run/ I took a look at the properties and the env showed 128.7TB of storage. The program I use with WINE requires network access to authenticate and because it was for audio production, it had access to my filesystem for samples.

Broke out wireshark and confirmed they were exfiltrating data. I always have the camera covered and the Mic disabled, but only through a blacklist. As soon as they saw me, they wiped everything from my home folder, everything that wasn't a base part of kde was gone. They got my passport, resumes, had just downloaded all my data from google and deleted my accounts. Wedding photos, contact lists, phone numbers, Everything. Immediately unplugged the router, disconnected the modem.

Found the roommate, he uses windows 10. No security updates, no antivirus. Rooted into his machine as well. 7 foreign IPs routing traffic over privoxy, shut down all the ports, airplane mode, took his important data and burned a windows 10 iso. He's okay now. I'm currently running photorec, foremost and autopsy on an image of my drive trying to get what I can. Reopened a bank account, changed the phone number now I'm paranoid. Network password was stupid easy (not my connection, I don't own it) and he had it set up so everyone with the password was admin. Every machine in the house is potentially compromised. He had a whole host of web 3.0 bullshit, chinese wifi camera,(probably watching through that) old google home assistant, ps4, xbox, light controls.

We ditched the router, the people I share this place with have no idea what a computer even is and I am trying to explain to them why this is a problem. My synthesiser's OS is based on montevista linux, I connect it to the laptop all the time. There's a server farm out there trying to get into insecure connections. I was rooted with 32x linux using a fake .DLL in WINE, he was rooted into by a Windows 10 machine. Of course he uses an admin account for everything. I pulled a shit tonne of persistence off my computer. Cron jobs, Startup scripts for privoxy and schroot, services, grub configuration, SSH keys, User Logins. This is sophisticated enough that they could tailor something on a per machine basis and I never would have found it if I hadn't been actively looking because since they schroot, none of those processes were available to me to view. I just had a funny feeling the last time I used WINE because the configuration kept updating and it normally only does that if you add a library, or make a change to the program and I hadn't done that in a month.

I need some help, fellas because I went to the cops and the cybercrime unit stops at "He posted my nudes on Facebook." This was not intended for me, this is meant to spread across as many machines as possible. ISP in our area recently put in fibre in a bunch of different houses and I'm worried they may be piggy backing our connection off our neighbours. How many people out there are using older versions of android with no security updates? What if they get someone who works in power generation, law enforcement, a nurse on the way to the hospital. It is so bad and I cannot get any one to listen to me. They think I'm a lunatic. Last thing, can you give me some advice on containerising applications in docker, command line docker. I'm not giving a company my personal information to use their stupid GUI and I want to cut this off at the head. No more free access to the file system, every application and all the files I use with them on their own container. How do I build something from source in a leak proof Docker environment? how do I install a web browser with no access to geoclue, date and time or files? Resources, if you can, would be incredibly helpful. I am only doing linux for 2 years as a hobby, this is out of my wheelhouse. Just a blank container with one program, so I can inspect files coming in and out of and decide if something gets access to my home directory or not. stay frosty out there.

6
20
submitted 23 hours ago by HubertManne@piefed.social to c/linux@lemmy.ml

Im looking for ways to increase my use of the terminal and so I want to have one around all the time without having to switch tabs. I have seen tiling window managers but I kinda don't want to lose like windows snapping and such. Is there any way to attack a window to the taskbar in kde so that other programs won't overlap it? I basically would like to have like 3 lines of a terminal across the bottom just above the start bar.

7
15
submitted 1 day ago by filister@lemmy.world to c/linux@lemmy.ml

I am running Bluefin immutable distro and I would like to test Niri. I found on the net that the cleanest way is to use systemd-sysext and I have managed to install Niri using the community extensions.

Now I would like to install Dank Material Shell, and it has a couple of pre-requisites and I am clueless how I can add them again with systemd-sysext.

I tried to look for additional information, but found very little on the matter. Do any of you have experience with this?

8
20
submitted 1 day ago* (last edited 21 hours ago) by BurntWits@sh.itjust.works to c/linux@lemmy.ml

I moved about a month ago and haven't touched my pc a whole lot from before packing it away and finally getting around to unpacking it.

I'm running CachyOS and finally got around to unburying it, and after trying to run a system update I'm met with this:

sudo pacman -Syu
:: Synchronizing package databases...
 cachyos-v4 is up to date
 cachyos-core-v4 is up to date
 cachyos-extra-v4 is up to date
 cachyos is up to date
 core is up to date
 extra is up to date
 multilib is up to date
 DEB_Arch_Extra         10.1 KiB  12.5 KiB/s 00:01 [---------------------] 100%
:: Starting full system upgrade...
warning: gtk2: local (2.24.33-5.1) is newer than cachyos (2.24.33-5)
:: Replace lib32-vulkan-mesa-device-select with cachyos/lib32-vulkan-mesa-implicit-layers? [Y/n] y
warning: libpng12: local (1.2.59-2.1) is newer than cachyos (1.2.59-2)
:: Replace vi with extra/ex-vi-compat? [Y/n] y
resolving dependencies...
looking for conflicting packages...
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: vulkan-mesa-implicit-layers-1:25.3.5-2 and vulkan-mesa-device-select-1:25.2.7-2 are in conflict

I'm not super technologically inclined, not completely illiterate but no expert for sure. Usually I'd update my system regularly but with the move and otherwise being extremely busy lately I'm only getting around to it now. I tried looking it up first but I'm not sure if I just used the wrong search queries or what, but I couldn't get a good answer anywhere, so I thought I'd try here.

Thanks in advance for any help. I really do appreciate it.

Update: I got it working again! Thanks for everyone who offered help, and especially thanks to Ooops@feddit.org. For anyone who may have the same issue in the future, all I needed to do was update the conflicting packages on their own before doing a full system upgrade and it worked.

9
97
submitted 2 days ago by mr_MADAFAKA@lemmy.ml to c/linux@lemmy.ml
10
13
submitted 1 day ago by vapeloki@lemmy.world to c/linux@lemmy.ml

cross-posted from: https://lemmy.world/post/42787520

Most of us have some blinking, light-emitting, colorful devices attached to our potatoes - or whatever the minimum specs for Linux are these days, haven't checked in a while.

And most of us use OpenRGB to control them. But I fear this single project has some major, fundamental issues. As with many projects, it grew very fast and very big.

It has over 200 supported devices today, and the list keeps growing.

But it wasn't designed to grow this fast or support such a variety of devices.

This has led to several issues:

Not all features can be implemented for all devices:

For example, devices with different available effects per zone aren't supported by design. You may have noticed that sidebar LEDs on some keyboards aren't controllable via OpenRGB.

No support for macros, DPI settings, and more:

It was always about RGB. This isn't an issue per se - it's the scope of the software. But:

Cannot coexist with macro/mouse controlling software:

OpenRGB needs to open the HIDRAW device to control it, and this is an exclusive operation. So no other software can hook those devices at the same time.

Growing backlog:

Device-support requests keep piling up, new devices wait a long time to be accepted - the usual open-source maintenance challenges.

My Idea

Let's create a unified device abstraction library. The core part should just offer a C++ library with all the device abstraction logic in it. This library can then be consumed by a variety of software:

  • OpenRGB could use the RGB part of it, focusing on orchestration and advanced features
  • Python bindings for scripting your setup
  • Hyprland integrations
  • Custom CLI tools
  • Whatever the community builds

Therefore, if you're a developer who knows your way around modern C++ features (or wants to learn), here's my project pitch:

What this could be:

  • Modernized device code (C++23, memory safety, proper abstractions)
  • Support for ALL peripheral features (RGB, macros, DPI, profiles, etc.)
  • Clean API for other developers to build on
  • Reduced fragmentation - community maintains ONE device library instead of competing implementations

Making this real would need:

  • C++ developers , as one developer is no developer (and i have other hobbies!)
  • People who've worked with USB/HID protocols on Windows and other Non-Linux platforms!
  • Anyone frustrated with current Linux peripheral tools and willing to help fix it
  • Design feedback and testing

To kickstart this:

We can fork OpenRGB's existing device implementations (GPL-licensed) as a foundation. I have at least two devices here that offer on-device macro functionality, key remapping, and more, so I can create the basic abstractions for those features.

Thoughts?

11
18
submitted 2 days ago by Geodes_n_Gems@lemmy.ml to c/linux@lemmy.ml

I followed the written tutorial in the settings but I still don’t know if there’s Wapuro Romaji and often when I try to test the layout it snaps back to English or doesn’t seem to write any different from the english keyboard and if everything does work it seems to delegate individual Kana to keys & I’m not very comfortable with that way of typing.

12
35
submitted 2 days ago by drillepind42@feddit.dk to c/linux@lemmy.ml

Hi all, sorry if I post this the wrong place.

I have a laptop running mint with qtile which sometimes freezes. To the point where nothing responds and I need to kill it. I've tried: sudo journalctl But I don't get any information which helps me.

Can anyone help to debug it?

13
33
submitted 2 days ago* (last edited 2 days ago) by communism@lemmy.ml to c/linux@lemmy.ml

Is there a daemon that will kill any processes using above a specified % of CPU? I'm having issues where a system is sometimes grinding to a halt due to high CPU usage. I'm not sure what process is doing it (can't htop as system is frozen); ideally I'd like a daemon that automatically kills processes using more than a given % of CPU, and then logs what process it was for me to look back on later. Alternatively something that just logs processes that use a given % of CPU so that I may look back on it after restarting the system.

The system is being used as a server so it's unattended a lot of the time; it's not a situation where I did something on the computer and then CPU usage went up.

Edit: Thanks to the comments pointing out it might be a memory leak instead of CPU usage that's the issue. I've set up earlyoom which seems to have diagnosed the problem as a clamd memory leak. I've been running clamd on the server for ages without problems so might be the result of an update; I've disabled it for now, and will keep monitoring the situation to see if earlyoom catches anything else, or if the problem keeps occurring I'll try some of the other tools people have suggested.

14
56
submitted 3 days ago by commander@lemmy.world to c/linux@lemmy.ml
15
87
submitted 3 days ago by Maerman@lemmy.world to c/linux@lemmy.ml

I am now a published author.

16
21
submitted 2 days ago* (last edited 2 days ago) by Infernal_pizza@lemmy.dbzer0.com to c/linux@lemmy.ml

I salvaged a Microsoft Surface Go gen 1 from the scrap pile and installed Linux on it. Most stuff seems to work ok but I can't get screen rotation working in Gnome. I know its not a sensor issue because it works under plasma-mobile, and if I run monitor-sensor I can see its detecting mottion even under Gnome.

I tried installing the older version of iio-sensor-proxy-git suggested here but that made no difference: https://github.com/linux-surface/linux-surface/issues/689

I also tried the screen rotate extension, however the AUR version made no difference and when I tried downloading it from the web it just said it was incompatible. I don't think it would solve the problem anyway because Gnome realises its in tablet mode and has the option for auto-rotate, it just doesn't do anything. I've also tried the Fedora live iso and its the same there.

Alternatively can anyone suggest a good on screen keyboard for KDE? I've tried maliit and plasma-keyboard but they're missing keys like ctrl and tab etc which makes using the terminal horrible. Thats the main reason I'm even using Gnome because the on screen keyboard is great.

Edit: Turns out I just had to go back to the extension web page and enable it.

17
194

I distro hopped for a bit before finally settling in Debian (because Debian was always mentioned as a distro good for servers, or stable machines that are ok with outdated software)

And while I get that Debian does have software that isn't as up to date, I've never felt that the software was that outdated. Before landing on Debian, I always ran into small hiccups that caused me issues as a new Linux user - but when I finally switched over to Debian, everything just worked! Especially now with Debian 13.

So my question is: why does Debian always get dismissed as inferior for everyday drivers, and instead mint, Ubuntu, or even Zorin get recommended? Is there something I am missing, or does it really just come down to people not wanting software that isn't "cutting edge" release?

18
19
submitted 3 days ago by monovergent@lemmy.ml to c/linux@lemmy.ml

A while ago, I set up unattended-upgrades on my Debian 13 machines. Running sudo apt updatedoesn't cross my mind now that I assume unattended-upgrades takes care of that for me, but every once in a while, I'll try installing something and get the "Unable to locate package" errors associated with outdated repositories. After being made aware of having outdated repositories and packages, I'll go and run sudo apt update && sudo apt upgrade on my other machines, only to be told that all packages are up to date and unattended-upgrades did do its job there. I don't keep a record of this happening, but I also don't recall there being any pattern to which of my machines are affected and which aren't at any given time.

Where could I start hunting down the cause of this inconsistent behavior? I did double-check that I enabled it via sudo dpkg-reconfigure unattended-upgrades

19
15
submitted 3 days ago* (last edited 3 days ago) by DonAntonioMagino@europe.pub to c/linux@lemmy.ml

Hi everyone! I’m trying to get a HP EliteDesk 705 G3 Desktop Mini to work as a Linux media player for my LG smart TV. My TV only has HDMI input, and my EliteDesk only has Display Port output, so I’m using a (reported) 4k60hz DP to HDMI adaptor, with a HDMI 1.3 cable.

Specifically, I want to use my computer to play 4k content on my television. I tried using HDMI 4k60hz and 8k cables, with OpenSUSE Leap with Gnome installed, but that led to the maximum resolution being 640x480. I ended up trying the HDMI 1.3 cable and that did work for whatever reason.

I’m not a fan of Gnome, though, so I wanted to switch to KDE instead. I can’t get 4k to work there at all. It has installed just fine, and I can use the computer with my 1080p monitor, but whenever it attempts to switch to 4k on my TV, I get a black screen right before I can login by entering my password. And if it boots on my TV in 1080p, I don’t have a visible cursor.

reportctl afterwards doesn’t really show any errors.

I added inxi -Gxx as an image.

Any thoughts?

20
69
submitted 4 days ago* (last edited 4 days ago) by Im28xwa@lemdro.id to c/linux@lemmy.ml

All the ones that keep getting recommended have a UI like a cockpit of a Boeing 747 (kdenlive, shotcut, openshot, DaVinci resolve) which is so overwhelming, all I want is just make some cuts, blur a face, or something on the screen, and maybe add some subtitles.

I just want something simple, I am not gonna make the next Avatar movie.

I have a feeling there is nothing like this on linux but hey maybe one of you actually knows of one.

21
63
submitted 4 days ago by petsoi@discuss.tchncs.de to c/linux@lemmy.ml
22
222
submitted 4 days ago by ISolox@lemmy.world to c/linux@lemmy.ml

After 4 years of using Fedora KDE as my main OS with 0 issues or drawbacks, my workplace is now requiring all computers to be on Windows 11. Any suggestions to make the transition back more bearable?

My dissapointment is immeasurable, and my day is ruined :(

23
93
submitted 4 days ago* (last edited 1 day ago) by iByteABit@lemmy.ml to c/linux@lemmy.ml

[Update: I went with CachyOS instead, it looks like a great option for gaming with general usage and has a really good wiki]

A coworker of mine asked me to help him install Linux, he hasn't tried Linux before but he's sick of Windows.

He is very much into gaming, so gaming support is the first priority. He is also a developer/tester so I suppose that he will also want to have access to dev tools, languages, and other packages like that for personal projects.

My first go-to when recommending to newbies is Mint because it's simple, tried and tested, but I have been hearing a lot about Bazzite lately and see that it offers a very nice gaming experience. However it scares me that there's no typical package management like apt or pacman as I browse their docs, instead it relies heavily on Flatpaks and brew, or even podman images. Will this be a problem as he uses the OS for general usage besides gaming in the long term, would it be better to just go with Mint and set that up for gaming instead?

Feel free to also recommend other distros, but keep in mind that while he is technical, he is still completely new to this so I want things to work out perfectly for his first experience.

24
1675
submitted 6 days ago by EngineX@lemmy.zip to c/linux@lemmy.ml
25
11
submitted 3 days ago by ColdWater@lemmy.ca to c/linux@lemmy.ml

Recently I got into playing Cyberpunk 2077 and it's a dx12 only game, no native vulkan support and need to be translated to vulkan which is bad because my framerate drop from 65fps to a merely 35-42fps because of dx12 bug, which is a lot of frames to lose. As soon as nvdia fix it or nvk driver caught up with nvdia proprietary driver I will remove win10. If you wondering why I have nvdia GPU because I only use laptop and an AMD laptop with the same power as nvdia is rare and even rarer in my country and also 2x more expensive. English is not my native language sorry if there's any mistakes.

view more: next ›

Linux

62524 readers
335 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 6 years ago
MODERATORS