Curious to know the coolest things you achieved by configuring your kernel. I know kernel config can be boring, but I’m hoping someone will have an impressive answer.

For me I have a very lightweight kernel that runs wayland on nvidia without any issues to date.

  • ExtremeDullard@lemmy.sdf.org
    link
    fedilink
    arrow-up
    18
    ·
    3 months ago

    As a Linux user of almost 30 years, compiling hundreds of kernels over the years has given me a great appreciation of pre-build kernels, and a profound gratitude for those who package them up into convenient distros that work out of the box and let me get on with the rest of my life.

      • ExtremeDullard@lemmy.sdf.org
        link
        fedilink
        arrow-up
        5
        ·
        3 months ago

        Absolutely! If you’re doing it to learn something, by all means compile your own kernel. Every Linux user should do that at least once in my opinion. But once the learning is done, the novelty wears off fast and it just becomes tedious.

    • limelight79@lemm.ee
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      Well said. I originally compiled my own kernels because I thought it was something you just did to use Linux. I also compiled hundreds of them, probably. Now it’s stock kernel all the way. Not worth the effort and time and headache.

  • aordogvan@lemmy.world
    link
    fedilink
    arrow-up
    6
    arrow-down
    1
    ·
    3 months ago

    Not for myself but a client who was running a game server. He wanted to tweak the number of ticks/second that the kernel interacted with CPU. Didn’t even know that this was a parameter and after a few attempts, according to him, never went on that server myself, made a huge difference and he claimed having grabbed a good part of the market because of that.

    After that familiarized myself more with the stuff in there. But that was a good while ago, before most of you guys were born.

  • thejml@lemm.ee
    link
    fedilink
    English
    arrow-up
    5
    ·
    3 months ago

    Years ago (2006-ish), I ran Gentoo on a 300mhz ultra low power system I used for an irc & web server. I gained LOTS of speed and lowered power draw even further while also enabling the hardware acceleration the board had for ssl encryption and video encoding. The whole thing would pull <5 watts and be super stable. It was well worth it.

    But now days a Pi zero would trounce it in both low power draw and speed with stock kernels and I don’t really care enough to try to squeeze more out.

    • CarrotsHaveEars@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      Customising the kernel just means something works properly in rare hardware configurations like you described. It’s something which he who uses the general hardware (like an X86 desktop) can’t easily see or understand because the ‘stock’ kernel is already working properly.

  • Pantherina@feddit.de
    link
    fedilink
    arrow-up
    4
    ·
    3 months ago

    Just download the devel kernel from your distro and go into make menuconfig. I am on an Intel Laptop with recent hardware. No reason to use amd, nvidia etc drivers. And there is a shitload of likely unmaintained drivers for ancient hardware.

  • ChojinDSL@discuss.tchncs.de
    link
    fedilink
    arrow-up
    4
    ·
    3 months ago

    Back when I was still using Gentoo, configuring your own kernel was a rite of passage. It was kind of fun to try and configure it as minimalist as possible to cut down on the kernel compile time. Also, understanding all the different options and possibilities. And thanks to use flags, you had access to all these different patch sets for the kernel, which took a lot of the pain out of trying things like experimental schedulers or filesystems.

  • xycu@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    3 months ago

    I do it because I can… I read release notes on every update and once you’ve configured a kernel for a particular machine you really don’t need to touch the config, barring major changes like when PATA and SATA merged. Or of course if I’m adding a new piece of hardware.

    I remove everything I don’t need and compiling the kernel only takes a couple minutes. I use Gentoo and approach everything on my system the same way - remove the things I don’t need to make it as minimal as possible.

    Compiling your own kernel also makes it easier when you need to do a git bisect to determine when a bug was introduced to report it or try to fix it. I’ve also included kernel patches in my build years ago, but haven’t needed to do that in a long time.

    I used to compile a custom kernel for my phone to enable modules/drivers that weren’t included by default by the maintainer.

    It’s not about performance for me, it’s about control.

  • baseless_discourse@mander.xyz
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    3 months ago

    The secureblue image I use disables numerous kernel modules, and enables many kernel mitigation argument.

    The performance impact is minimal, hopefully that means a more secure system? I honestly don’t know, nor do I change the default recommended by the developer.

      • Rikj000@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        2
        ·
        3 months ago

        Amazing, basically native speeds,
        currently playing Horizon Forbidden West with maxed out graphics and DRS disabled at a steady 60-80 FPS.

        Previously I also played Horizon Zero Dawn in it, also maxed out graphics, steady locked 100 FPS,
        below is a benchmark comparison of HZD in the Linux host OS and the Windows KVM guest OS:
        workstation-gaming-linux-vs-windows

        • ikidd@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 months ago

          Has this gotten any easier to do? I set it up a few years ago, it was painful to do and maintain so I let it slide. You were writing all sorts of scripts to specify the passthrough devices and then they’d stop working so you had to track down what was failing and update. Then there was iommu so you had to be careful which groups you added devices to.

    • Pantherina@feddit.de
      link
      fedilink
      arrow-up
      0
      arrow-down
      1
      ·
      3 months ago

      Root Waydroid lol, thats basically hell.

      Waydroid without SELinux already removes all the Android sandboxing. Now its rooted!

      • Rikj000@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 months ago

        Root on Android is a necessity for me.
        I’ve been rooting all droids I use for the past 10 years or so.

        Imagine using Linux as a power user,
        without being able to use sudo/su.

        Also, Magisk does not just allow any application to access root, you have to manually allow apps to make use of it.

        Just like administrator rights on any other OS,
        things only go wrong if you don’t know what you’re doing, and then grant rights to something malicious.

  • velox_vulnus@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 months ago

    I don’t know if this is considered as custom kernel, but I run Guix using non-libre Linux, with Intel Wi-Fi firmware blob. Since it does not have other firmware, it is pretty light, and I’m saving around 200-300MB.

      • ExtremeDullard@lemmy.sdf.org
        link
        fedilink
        arrow-up
        1
        arrow-down
        1
        ·
        edit-2
        3 months ago

        Compiling kernels makes no sense anymore.

        Back in the days - Linux versions 2 and below - the kernel was much less modular, and resources wasn’t as plentiful. So it often made sense to build kernels with the stuff you needed statically compiled for speed, and the rest left out fo save memory and shorten boot time. Not to mention, Lilo (the thing we used before Grub) had limitations with respect to kernel size.

        Nowadays, Grub can load a kernel of any size from anywhere on the disk. There’s plenty enough memory and CPU to leave the kernel core slightly bloated with stuff almost nobody needs with zero practical impact on boot time and memory usage, and most everything else is compiled as modules and loaded as needed - again with next to no boot time or running speed impact.

        If you custom-build a kernel today, you’ll boot a tiny bit faster and it’ll run a tiny bit faster, and you’ll have a tiny bit more free memory - all of which you will never notice. What you will notice however is that kernel updates are a PITA on a regular basis.

        • taladar@sh.itjust.works
          link
          fedilink
          arrow-up
          1
          ·
          3 months ago

          Kernel updates are extremely easy when custom compiling, not sure what you are doing to make them a pain. Custom compiling is a great way to sort of passively absorb knowledge about kernel changes and new features or features you didn’t know about as they change and make oldconfig brings up questions about them.

  • chevy9294@monero.town
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 months ago

    I’m running a custom kernel on my Arch laptop. It’s a little faster, a little smaller and a little quite more secure. I’m also running custom kernel which enables adiantum encryption on old phone with postmarketOS.

    • yeehaw@lemmy.ca
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      How did you conduct this speed test? Where are the results? 😂

      Sorry, I think this any time someone says their computer is faster or mod X on Android is “snappier”

      • chevy9294@monero.town
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 months ago

        I used geekbench 5. My CPU is AMD Ryzen 5 5500U. I tested a few prebuild kernels and custom compiled the fastest one.

        prebuild linux kernel:

        • singlethread: 1170
        • multithread score: 4604

        prebuild linux-zen kernel:

        • singlethread: 1156
        • multithread score: 4593

        prebuild linux-xanmod kernel:

        • singlethread: 1164
        • multithread score: 4594

        prebuild linux-hardened kernel:

        • singlethread: 1156
        • multithread score: 4841

        custom linux-hardened kernel:

        • singlethread: 1160
        • multithread score: 4977
  • galoisghost@aussie.zone
    link
    fedilink
    arrow-up
    1
    ·
    3 months ago

    Mostly just understanding what was there, what was necessary for my machine at the time and what was optional.