Alt Text

A screenshot of a file manager preview window for my ~/.cache folder, which takes up 164.3 GiB and has 246,049 files and 15,126 folders. The folder was first created about 1.75 years ago with my system

  • tslnox@reddthat.com
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    11 months ago

    /usr/local/sbin/adduser.local

    One line in there and you can make it add a new line with appropriate /home/userX/.cache tmpfs line to fstab.

    Or, maybe a cleaner way, you might make a init/systemd service that, when booting, would run something like

    for each dir in /home do
    mount dir/.tmp -type tmpfs
    done

    I’m not at the computer now and I’m lazy to Google it, so this above is just a pseudo code and probably won’t run.

    • glibg10b@lemmy.ml
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      11 months ago

      Neat, thanks for sharing

      Here’s the above pseudocode in bash:

      find /home/ -mindepth 1 -maxdepth 1 -type d -exec mount none {}/.cache/ -t tmpfs -o size=16G \;
      

      for doesn’t work here because it uses spaces to delimit strings, which could cause issues with filenames that contain spaces

      You can also create a systemd user service, which is useful if you don’t have root access. The above mount command requires root, but the following doesn’t and is more robust than symlinking to /tmp/:

      ln -s $(mktemp -dp /var/tmp/) ~/.config/