Skip Navigation
Props to Alpine and Kali for disabling this bullshit out of the box
  • "everything is a file" is such a godsend. It makes absolutely everything so much easier and intuitive. I remember trying to get an old dot matrix printer to work using a parallel-to-usb adaptor cable. Without reading any documentation or having any prior experience I tried echo testing12345 > /dev/lp0 and it just worked lol. Meanwhile my friend spent like half an hour digging in windows gui settings trying to figure out how to print to a parallel printer.

    I also posted about this before, but a while back I had to configure my system so that a non-root user could start and stop a root daemon without sudo. On a runit system all you have to do is change the permissions of some control files and it works. On systemd? When I looked it up, the simplest solution involved writing a polkit policy in javascript 🤮

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • systemd-regedit

    That's just dconf lol. It sounds great in theory -- after all, isn't bringing standardization to a chaotic battlefield of different formats a good thing? But in practice it's absolute garbage. I would much rather just edit a config file. Heck, even if you program uses some obscure config format like xml or something language-specific like .lua or .py, I would much rather take a few minutes to learn the specifics of your format than fuck around with dconf. Fuck dconf.

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • Ooh, I've never heard of bcachefs, sounds exciting! I see it supports encryption natively, which btrfs doesn't. Pretty cool!

    Personally I've never had any issues with btrfs, but I did start using it only a couple years ago, when it was already stable. Makes sense that you'd stick with zfs tho, if that's what you're used to.

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • I find myself inventing new curses for those who screwed things up with these overblown, over complex, minimally functional abominations

    Gosh, tell me about it. I once tried writing a custom wifi signal strength indicator app that got its information from network-manager. Apparently the only way to programmatically communicate with network-manager is through dbus, which is just terrible. Scarce to no documentation, poor support for any language other than C/C++, and once you do get it working, it's the most disgusting and overly verbose code you've ever seen, just to query the status of the wifi card. Could've exposed the API through raw unix sockets or something, but nope, they had to reinvent the wheel on that one as well.

    Just give me vi and the basic configuration files and let me get on with it!

    I'll take this opportunity to shill for Void Linux, it sounds like exactly what you're describing. I've been a happy user for like 5 years now. I particularly like how nothing ever breaks, because there's not much to break on such a minimal system.

    ...well, actually, a few things did break over the years, but most of those were due to user error haha.

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • I can think of a single instance where a Redhat-ism is better

    I don't know if it would be accurate to call it a redhat-ism, but btrfs is pretty amazing. Transparent compression? Copy-on-write? Yes please! I've been using it for so long now that it's spoiled me lol. Whenever I'm on an ext4 system I have to keep reminding myself that copying a huge file or directory will... you know... actually copy it instead of just making reflinks

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • I'd do away with network-manager on a stationary system too, but I'm on a laptop, and unless there's some trick I don't know about, configuring wifi by hand for every new network I come across sounds like a bit of a pain. Especially for corporate/institution network that use fancy things like PEAP

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • Thanks! I love this format so much. I can't find it now, but one of my favourite memes in this genre was something like this:

    STOP DOING

    • Tasks were never meant to be completed
    • Years of working, but there's STILL MORE SHIT TO DO
    • Wanted to get some work done anyway, for a laugh? We had a tool for that: it was called SIMULATION GAMES
    • "Please let me sacrifice a third of my life to justify my existence. Please let me spend eight hours a day working just to be able to do it again the next day" - statements dreamt up by the utterly deranged

    Look at what people have been demanding our respect for all this time, with all the schedules and todo lists we have built for them:

    These are REAL things done by REAL people

    <Pictures of gmail, microsoft outlook, and some TODO list app>

    They have played us for absolute fools

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • What I really don't understand is why distro maintainers feel the need to actually go along with these changes. Like, sure, if this predictable interface naming thing worked as intended, I can definitely see how it can be useful for server administrators. You could just hardcode the automatic interface names instead of assigning them manually in /etc/mactab. But why would the rest of us ever need this? Most personal machines have at most one wifi card and one ethernet device, so wlan0 and eth0 are perfectly predictable. And even if you have multiple wifi or ethernet adapters, your networking is probably handled by network-manager, so you never actually have to put interface names into config files. Why force enterprise-grade bloat on users who just want a simple desktop experience?

  • Props to Alpine and Kali for disabling this bullshit out of the box
  • No, the "old scheme" is the one that assigns wlan0, wlan1, eth0, eth1, and so on by default. I would say these names are pretty usable.

    The part you quoted is what you need to do if you specifically need to be sure that a specific card gets a specifc name 100% of the time. You don't have to bother with it unless you have a reason to.

  • Props to Alpine and Kali for disabling this bullshit out of the box

    Context for newbies: Linux refers to network adapters (wifi cards, ethernet cards, etc.) by so called "interfaces". For the longest time, the interface names were assigned based on the type of device and the order in which the system discovered it. So, eth0, eth1, wlan0, and wwan0 are all possible interface names. This, however, can be an issue: "the order in which the system discovered it" is not deterministic, which means hardware can switch interface names across reboots. This can be a real issue for things like servers that rely on interface names staying the same.

    The solution to this issue is to assign custom names based on MAC address. The MAC address is hardcoded into the network adaptor, and will not change. (There are other ways to do this as well, such as setting udev rules).

    Redhat, however, found this solution too simple and instead devised their own scheme for assigning network interface names. It fails at solving the problem it was created to solve while making it much harder to type and remember interface names.

    To disable predictable interface naming and switch back to the old scheme, add net.ifnames=0 and biosdevname=0 to your boot paramets.

    The template for this meme is called "stop doing math".

    102
    Basically the extent of my IPv6 knowledge
  • No, it's an edit. I linked the original in the post text. If you can't access it for some reason, here's a transcript:

    Government of the Netherlands

    Home > Topics > Coronavirus COVID-19 > Travelling to the Netherlands from abroad

    Checklist for travel to the Netherlands

    Do not travel to the Netherlands.

  • Basically the extent of my IPv6 knowledge

    Template source: https://web.archive.org/web/20210304000634/https://www.government.nl/topics/coronavirus-covid-19/visiting-the-netherlands-from-abroad/checklist

    19
    Don't try this at /home
  • So switching to a slower wifi AP causes packets destined for outside of your network to not be dropped? That sounds like one of those cursed issues that's a complete nightmare to track down lol. Maybe the faster speed of the 5.8ghz network is causing your router to get overwhelmed or something? Does the same issue happen if you connect via ethernet? I don't really know what else can cause this, I hope you can get it fixed!

  • Debian used to be so good. What happened!?
  • No idea why busybox is needed. Is this is your emergency boot environment like initramfs?

    I cannot for the life of me find the particular fix I followed, but I swear it was a missing symlink to busybox. Not in initramfs, but in the full booted environment. That's why I was so confused haha. I can't find anything about it right now, so maybe I'm misremembering something...

  • Debian used to be so good. What happened!?
  • Flatpak is awesome, I love it so much. It lets users pick a distro based on the unique features that distro provides, without having to worry about whether their favourite apps are packaged. Since you're considering switching to debian+flatpak, here is a list of pitfalls I've run into in flatpak so far, maybe this can save you some troubleshooting:

    • You need to have a thing called an "xdg dekstop portal" installed. Otherwise filepickers will be broken. On Debian this should be a dependency of flatpak, so it should be installed by default tho.
    • If you're manually restarting Xorg without using a display manager, make sure the xdg desktop portal process doesn't get started twice. Otherwise it will be broken
    • As far as I understand, there's no way to use xdg desktop portal to forward an entire directory through to a flatpak'd app, unless the app itself asks specifically for a directory. So stuff like opening a .html file that references a .css file in the same directory with a flatpak'd browser will be broken, unless you manually make an exception using Flatseal or flatpak override.
    • Make sure your root filesystem is mounted with "shared" propagation, otherwise umount commands won't propagate into flatpak's sandbox, and drives will get stuck in a weird state where they're mounted in some namespaces, but not others. This should be the default in Debian tho.
    • If flatpak'd Firefox has ugly bitmap fonts, follow this workaround

    Anyway, this is just my experience running Flatapk in Void, hopefully it works smoother for you on Debian.

  • Basically the extent of my IPv6 knowledge

    Template source: https://web.archive.org/web/20210304000634/https://www.government.nl/topics/coronavirus-covid-19/visiting-the-netherlands-from-abroad/checklist

    84
    Debian used to be so good. What happened!?

    Firefox on Debian stable is so old that websites yell at you to upgrade to a newer browser. And last time I tried installing Debian testing (or was it debian unstable?), the installer shat itself trying to make the bootloader. After I got it to boot, apt refused to work because of a missing symlink to busybox. Why on earth do they even need busybox if the base install already comes with full gnu coreutils? I remember Debian as the distro that Just Wroks(TM), when did it all go so wrong? Is anyone else here having similar issues, or am I doing something wrong?

    86
    With GPL, you're programming Freedom. With MIT, you're programming for free.

    Context:

    Permissive licenses (commonly referred to as "cuck licenses") like the MIT license allow others to modify your software and release it under an unfree license. Copyleft licenses (like the Gnu General Public License) mandate that all derivative works remain free.

    Andrew Tanenbaum developed MINIX, a modular operating system kernel. Intel went ahead and used it to build Management Engine, arguably one of the most widespread and invasive pieces of malware in the world, without even as much as telling him. There's nothing Tanenbaum could do, since the MIT license allows this.

    Erik Andersen is one of the developers of Busybox, a minimal implementation of that's suited for embedded systems. Many companies tried to steal his code and distribute it with their unfree products, but since it's protected under the GPL, Busybox developers were able to sue them and gain some money in the process.

    Interestingly enough, Tanenbaum doesn't seem to mind what intel did. But there are some examples out there of people regretting releasing their work under a permissive license.

    237
    Python is great, but stuff like this just drives me up the wall

    Explanation: Python is a programming language. Numpy is a library for python that makes it possible to run large computations much faster than in native python. In order to make that possible, it needs to keep its own set of data types that are different from python's native datatypes, which means you now have two different bool types and two different sets of True and False. Lovely.

    Mypy is a type checker for python (python supports static typing, but doesn't actually enforce it). Mypy treats numpy's bool_ and python's native bool as incompatible types, leading to the asinine error message above. Mypy is "technically" correct, since they are two completely different classes. But in practice, there is little functional difference between bool and bool_. So you have to do dumb workarounds like declaring every bool values as bool | np.bool_ or casting bool_ down to bool. Ugh. Both numpy and mypy declared this issue a WONTFIX. Lovely.

    60
    Solutions? Where we're going, we don't need solutions.

    Please dont take this seriously guys its just a dumb meme I haven't written a single line of code in half of these languages

    168
    With all the talk about privacy, people seem to be forgetting that censorship is also a major problem for today's internet.

    Many "alternative" search engines are better for privacy, but they are still vulnerable to censorship, because they rely on g\*\*gle and m\*crosoft's indices for their search results. This isn't a deep-hidden secret either, many of them disclose what search index they use on the "about" page, for example:

    • https://duckduckgo.com/duckduckgo-help-pages/results/sources/
    • https://support.startpage.com/hc/en-us/articles/5138782571796-Why-isn-t-a-particular-site-appearing-in-the-results
    • https://www.ecosia.org/privacy

    There are still search engines that (claim to) maintain their own index. Most surprisingly, br\*ve:

    • https://brave.com/search-independence/
    93
    What do you guys do when you want to run unmaintained programs?

    I recently wanted to run tegaki, and my experience is pretty much summed up by the meme. I consider myself fairly tech-savvy, but I just couldn't figure out how to compile it. So I just gave up, downloaded the .exe and put it into a fresh wine prefix. After installing CJK fonts, everything ran fine. Now I'm trying to get gpaint to work. My distro recently dropped support for gtk+2 (which I am fairly pissed about, since it's the last good version of GTK+), so I have to set that up manually as well. [[[ EDIT: gtk2 is alive and well. I was just being and idiot and searching for gtk2, when the package is actually called gtk+2. ]]] I installed all of the dependencies that ./configure told me to, but I still kept getting obscure errors when running make.

    So, here's my question: what tools make the process of running abandonware easier? Docker containers? Also, what can I use to package abandonware in order to make it easy for other people to run? Flatpak? Appimages? Any advice is appreciated!

    Also, inb4 "just find a modern alternative". That would be a reasonable solution. I don't want reasonable solutions!

    72
    But hey, at least everyone supports webp now.

    Context: Even though Chromium has native support for AVIF, a very nice image format, Microsoft goes out of their way to remove it from Edge, which is a chromium fork. Jpeg XL (JXL) (not to be confused with Jpeg (JPG) or Jpeg 2000 (jpg2k) ) is another nice image format, which, IIRC, is only supported in Firefox.

    33
    You do know you can just click the "reject all" button, right?

    Context: https://www.youtube.com/watch?v=fqhPUmyrfGI Without ads/tracking: https://www.yewtu.be/watch?v=fqhPUmyrfGI

    42
    InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)RE
    renzev @lemmy.world
    Posts 28
    Comments 211