I’m using EndeavourOS with ext4 file system for daily usage and a dual bootable Windows for gaming. What I want to have right now is getting rid of Windows completely.

When I tried it before, I had to try multiple tweaks for a game and find which one worked on Linux. Therefore, I want to take a snapshot with BTRFS and try it until I find the right configuration.

While I have quite a bit of experience with Linux, I’ve never used BTRFS. Do you think it’s worth it?

I thought about keeping the games on the ext4 system, but I hate splitting the disk. I’m thinking of keeping the games in a non-snapshot volume.

UPDATE: I just re-installed EndeavourOS with BTRFS + snapper + BTRFS Assistant :)

  • Keegen@lemmy.zip
    link
    fedilink
    English
    arrow-up
    4
    ·
    2 months ago

    I use Fedora which defaults to BTRFS and never once had an issue with any game because of it. Your file system shouldn’t matter for gaming at all so long as you stay on Linux native ones and avoid NTFS Windows drives.

    • Trail@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 months ago

      My Linux stream library is on Ntfs, for theoretical compatibility purposes with Windows which I never boot any more anyway, but generally I have had zero problems apart from an issue with Dota 2 a few years ago where I had to symlink some folder. But I don’t think think it is needed anymore.

      • Keegen@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 months ago

        Good to know the situation with cross compatibility has improved! I just saw enough posts of people having issues with a shared Windows/Linux NTFS drive over the years to advice against that setup.

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

        I think you mean having to mount the subvolumes instead of the partition itself.

        This can be done by mount -o subvol=whatever /btrfspartition /mountpoint

        After having done that it’s the same.

      • Keegen@lemmy.zip
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 months ago

        I don’t know? It’s been a long time since I used Arch, and besides OP is using EndeavourOS so it won’t matter.

        • stepan@lemmy.cafe
          link
          fedilink
          English
          arrow-up
          0
          ·
          2 months ago

          EndeavourOS is Arch-based and I’m pretty sure it also uses arch-chroot.

          • Keegen@lemmy.zip
            link
            fedilink
            English
            arrow-up
            1
            ·
            2 months ago

            Yeah but when is that gonna matter? It uses a graphical installer so you won’t need to touch the arch-chroot command at all. And if for some reason you do, the Arch wiki is there for you.

  • pHr34kY@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 months ago

    Btrfs is amazing for a steam library. The single best feature is the compression. Games tend to have lot of unoptimized assets which compress really well. Because decompression is typically faster than your disk, it can potentially make games load faster too.

    I put a second dedicated nvme drive in my PC just for steam. It’s only 512GB but it holds a surprisingly large library.

        • Victor@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          2 months ago

          Ah okay, cool. It’s that easy? Does it compress all existing data after that or is it only for new data?

          What would I have to do to compress existing data?

          • manifesto7473@lemmy.ml
            link
            fedilink
            English
            arrow-up
            1
            ·
            2 months ago

            It is only for new data.

            For example, you would have to defragment your filesystem again with btrfs filesystem defragment -r -v -czstd /. Where zstd is an algorithm and /, a root path. With this command, the default compression level will be used, which is level 3.

            Be careful, defragmenting the btrfs file system will/can duplicate the data.

            As for a mount point, if you decided to use zstd algorithm with level 1 compression, just add the compress=zstd:1 or compress-force=zstd:1 to the mount options (fstab or while mounting manually)

    • apt_install_coffee@lemmy.ml
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 months ago

      I actually found the opposite with my steam library; on ZFS with ZSTD I only saw a ratio of 1.1 for steamapps, not that there’s really any meaningful performance penalty for compressing it.

      • pHr34kY@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        2 months ago

        OK I just measured mine. I have 459GiB of games on the drive, consuming 368GiB of space. That’s about 25% compression. I’m using compress=zstd:9.

        I should try deduplication. I have 4 steam users and I’ve created an ACL hell to prevent the same game being downloaded and installed twice.

        • apt_install_coffee@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 months ago

          If you’re messing with ACLs I’m not sure deduplication will help you much; I believe (not much experience with reflinks) the dedup checksum will include the metadata, so changing ACLs might ruin any benefit. Even if you don’t change the ACLs, as soon as somebody updates a game, it’s checksum will change and won’t converge back when everyone else updates.

          Even hardlinks preserve the ACL… Maybe symlinks to the folder containing the game’s data, then the symlinks could have different ACLs?

          • pHr34kY@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            2 months ago

            I wrote a blog about it last year with my method of deduplicating. I really need to update that bit because steam keeps writing files that don’t uphold the group permissions, and others get permission errors that need to be fixed by admin. Steam also failed to determine free space on a drive when symlinks were involved.

            I even found recently that steam would write files in /tmp/ as one user, and fail when you logged in as another user and tried to write the same file. Multi-user breaks even without messing around.

            My current solution doesn’t use symlinks. I just add two libraries for each user. One in their respective home directory, and another shared in /mnt/steam. It means that any user can update a game in /mnt/steam, and it cleanly updates for all users at once.

      • sparr@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 months ago

        It depends on what sort of games you play. Some games / genres / publishers are much worse about this than others.