• 0 Posts
  • 39 Comments
Joined 7 months ago
cake
Cake day: December 19th, 2023

help-circle

  • Flatpak usually ships very outdated drivers.

    I’ve been in the support channel for yuzu linux, and you would not believe all the issues people have with games freezing, etc that are instantly fixed by using the appimage instead of the flatpak.

    Also flatpaks are non-xdg compliant, since it creates the useless ~/.var directory. And they have said over and over that they won’t fix that. So fuck them.

    Not to mention all the issues people have with their theming and integration into the system.

    Appimages are just simpler and better, the other day I was thinking how many issues would be fixed if Steam shipped as an appimage.

    • It would allow for shipping a patch glibc with EAC
    • It would allow for moving all the nonsense that steam puts in the home user dir, since appimages support a portable home.
    • It would allow for shipping the 32bit libraries instead of having to install them system wide.

    And depending on how you go about, appimages will even take less disk space than flatpaks or native packages even though you don’t get shared libraries with those, because they are compressed which reduces their size significantly.

    Like for example the LibreWolf appimage is 110MiB while a the native package for librewolf 300MiB. Same with LibreOffice, the appimage is 300MiB while the native package is 600 MiB.

    It also makes it easier to downgrade if you run into an issue, like I had to had an older appimage of ferdium because the latest version is affected by an electron bug that broke its zoom functionality.







  • Oh I can tell you that zram will not result in an OOM that zswap would prevent:

    I once ran into a bug when using foobar2000 with wine to convert my music library that resulted in an insanely high ram usage, like my 16 GIB ram was filled and then my 32 GIB zram was also filled and the PC froze.

    I just went and edited my zram config to make my zram 48GIB and ran foobar again, it ended the conversion without issue kek. No idea wtf happened but whatever data was being written in memory was being compressed good by zRAM, like very few people would even use a swap partition or file that is more than 32 GIB to begin with.

    I also tested running Zelda tears of the kingdom in yuzu using 4GiB of ram with a big zram and it worked, that game in yuzu is a ramhog and on windows people need 16 GiB of ram and they still max out their swapfile.

    There is also a vid on yt titled zram vs windows pagefile where a user running endevour demostrates how zram can take a bunch of Minecraft mods while windows with the help its of pagefile cant

    Edit: Here is the vid: https://www.youtube.com/watch?v=nMYTBsjeoTc





  • The issue with many of those distros is that it usually means that you have to install everything from 0.

    Arch is good at this because the archinstall script speeds it up and you don’t have to choose a DE. But with other distros that use a graphical installer, you are forced to use whatever they ship as the default desktop environment.

    edit: And holy shit properly configuring Btrfs subvolumes from 0 is something that I tried with voidlinux and I ended up breaking the entire install.



  • alias totally works, but if you want to simplify it for multiple package managers then it is better to use a script.

    Like this example that when the user types pkginstall vim, pkginstall would be a script in path that would do the operation regarless of the package manager:

    # Install with 'pacman' (if available)
    if command -v pacman >/dev/null 2>&1; then
        sudo pacman -S $@ || exit 1
    fi
    
    # Install with 'apt' (if available)
    if command -v apt >/dev/null 2>&1; then
        sudo apt install $@ || exit 1
    fi
    
    # Install with 'dnf' (if available)
    if command -v dnf >/dev/null 2>&1; then
        sudo dnf install $@ || exit 1
    fi
    

    They could even install it in their ~/.local/bin, and as long as their distro makes that part of PATH (which arch does not kek) by just using that same home with another distro they already could install/remove packages and update using those wrapper scripts regardless of the distro.

    If you are wondering why the script needs to check if the package manager exists, it is because when testing it I discovered that if the first one is not installed it will cancel the operation and not continue, and if I remove the exit 1 it will attempt to use the next package manager when canceling the operation with ctrl+c.


  • Oh I totally agree with that. But I don’t think the regular a new user should be using CLI tools to install packages. There are plenty of GUI tools that should be doing that for you instead.

    And if they did, it should be very simplified with a wrapper script like in the example above, iirc the common command update-grub is a wrapper script that simplifies it, it is a shame this isn’t more common with other tasks.

    This could be even standardized, like regardless of the distro if you type installpkg vim, the installpkg script would do something like this that will run it thru the most popular packages managers to do the simple operation:

    # Install with 'pacman' (if available)
    if command -v pacman >/dev/null 2>&1; then
        sudo pacman -S $@ || exit 1
    fi
    
    # Install with 'apt' (if available)
    if command -v apt >/dev/null 2>&1; then
        sudo apt install $@ || exit 1
    fi
    
    # Install with 'dnf' (if available)
    if command -v dnf >/dev/null 2>&1; then
        sudo dnf install $@ || exit 1
    fi
    
    echo "No package manager found"
    

  • You can use an alias for that. Or even a wrapper script that intercepts that.

    For example you could place this script in your PATH named idk mmm installpkg (install might be an issue for a name)

    Which would do the following:

    #!/bin/sh
    
    sudo pacman -S $@
    

    So when you type installpkg vim it will run sudo pacman -S vim

    You can repeat that for pacman -Syu, pacman -Rsn, etc. You can even replace pacman for your aur helper instead. (remove the sudo if you will use an aur helper instead).


  • Some defaults I would like to see:

    • Have zsh as the interactive shell (And also have its dotfiles in a better location like XDG_CONFIG_HOME/zsh)

    • Btrfs with compression enabled and subvolumes set. (Maybe also timeshift installed, not sure because not everyone uses timeshift for btrfs snapshots).

    • ZRAM (With proper sysctl.conf like PopOS does).

    • Pacman as the package manager with an Aur helper already installed.

    • No bloat™ preinstalled, nothing of shipping flatpak or snap by default or even a DE. So I can just boot into a tty without having to do the minimal install from zero.

    • Comply with the FHS and XDG specs (Arch fucking installs packages to /opt and doesnt set ~/.local/bin as part of PATH)

    • Dont break userspace (arch did this recently with an update to glibc that removed a patch that breaks steam games)


    Edit: Also forgot to mention:

    • Ship x86-64 v3 binaries, common arch, even Gentoo is doing it while on arch you have to use non official repos.

  • Oh I did try to use the AMF driver, my first attempt ended with i3 crashing upon startup. What was worse is that even after removing those drivers and putting mesa back it still crashed on startup, good thing I had a btrfs snapshot before messing with that.

    My second attempt I was able to use the AMF on OBS, but it still failed to record the 3 displays.

    My biggest issue right now is the issue with the colors, I don’t care if I have to use the cpu to record at this point.


  • My time with nvidia on linux was 0 issues in performance or usability.

    The only sort of issue that I had was that the GTX 1060 drew 20W at idle when using the 3 displays, this was a bug that nvidia fixed for the RTX 20 series and newer cards but never fixed for pascal lol.

    But even on BeamNG, there was a period were the native linux version didn’t work on mesa while it worked for nvidia, now to be fair with amd this was because the vulkan implementation of beamng is horrible and right now it does not work on either lol.


  • I have a similar story with an RX580, I replaced my GTX 1060 3GB for a 8GB RX 580 mostly because the 3GB of vram were an issue for BeamNG.

    Now I can’t record my 3 displays with the RX 580, it just fails when trying to do so, and 2 displays results in constant encoder overloads, something that the 1060 had issues at all, also my colors are off when recording and I have no idea why, it even happens when recording with the CPU:

    https://bbs.archlinux.org/viewtopic.php?id=292196

    Also kernel 6.6 broke the power reporting on all polaris GPUs, thankfully that was fixed recently in kernel 6.7.2, but holy shit it took like 6 months to fix that.