Menu

Screenshots fill up the EFI partition

simonzack
2022-11-01
2023-02-21
  • simonzack

    simonzack - 2022-11-01

    When using rEFInd, occasionally screenshots repeatedly fill up the EFI partition, until it becomes full.

    It's almost as if the screenshot key gets stuck. This always happens without me ever hitting the F10 screenshot key.

    My refind.conf is pretty minimal. Here's its contents without any comments:

    timeout 3
    use_nvram false
    use_graphics_for linux
    default_selection "EFI\arch\vmlinuz-linux"
    include themes/refind-theme-regular/theme.conf
    

    Anything I can do to diagnose the issue, or do you have any idea?

     
  • dakanji

    dakanji - 2022-11-05

    I maintain a rEFInd variant, RefindPlus, and I have noticed some instances when it appears that a keystroke was buffered BEFORE the tool is loaded and is spontaneously used once loaded; which seems to be more or less what you seem to be having.

    In RefindPlus, it tends to mainly affect Non-Apple firmware and seems to be worse after a warm reset and when external disks are connected. This has so far only been the ENTER key though and I have not seen this for any other key. Mitigation for this has been added there.

    You can try RefindPlus by following the instructions here and let me know if you get the same issue: https://sourceforge.net/p/refind/discussion/general/thread/ce89a06e8e/#bdf2

    At worst though, you should only have one (1) spontaneous screenshot with RefindPlus at most as it only generates a single image per key press even if you hold the key down.

    it should therefore not keep creating new screenshots after the first one even if the keystroke is buffered. The single instance might also be less of a burden as it uses PNG files in place of the much larger BMP format.

    RefindPlus will work with a rEFInd config file but note that while your current use_nvram false in rEFInd basically means use the actual nvram and not the proxy, in Refindplus, it means use the proxy, not the actual nvram.

    That is, use_nvram is interpreted literally by RefindPlus. If set to true, it will use the NVRAM and if set to false, it will not use the NVRAM.

     

    Last edit: dakanji 2022-11-06
  • simonzack

    simonzack - 2022-11-06

    Thanks for the reply! I heard of RefindPlus, but thought it was for Mac only.

    I'm using Arch Linux. I don't see any AUR package though. It's not a major issue so it's some extra work to switch. I might make a package some day and try it out.

    You say rEFInd has use_nvram the other way around, but I'm not sure if this is the case. Looking at the config file, and also on the website The rEFInd Boot Manager: Configuring the Boot Manager, there is:

    If set to true, on, or 1, stores rEFInd-specific variables in NVRAM. If set to false, off, or 0, stores these variables in the vars subdirectory of rEFInd's home directory

     
  • dakanji

    dakanji - 2022-11-06

    Note that once a post gets held for moderation here, it typically never gets released as there doesn't seem to be anyone reviewing such.

    You could try editing it or reposting without potential triggers.
    Not sure exactly what the triggers are, but most likely to be certain links or attachments perhaps

     

    Last edit: dakanji 2022-11-06
  • simonzack

    simonzack - 2022-11-06

    Ah ok. I'll post it without a link.

    Thanks for the reply! I heard of RefindPlus, but thought it was for Mac only.

    I'm using Arch Linux. I don't see any AUR package though. It's not a major issue so it's some extra work to switch. I might make a package some day and try it out.

    You say rEFInd has use_nvram the other way around, but I'm not sure if this is the case. Looking at the config file, and also on the website [The rEFInd Boot Manager: Configuring the Boot Manager](https://www.rodsbooks.com/refind/configfile.html), there is:

    If set to true, on, or 1, stores rEFInd-specific variables in NVRAM. If set to false, off, or 0, stores these variables in the vars subdirectory of rEFInd's home directory

     
  • simonzack

    simonzack - 2022-11-06

    Ah ok. I'll post it without a link.

    Thanks for the reply! I heard of RefindPlus, but thought it was for Mac only.

    I'm using Arch Linux. I don't see any AUR package though. It's not a major issue so it's some extra work to switch. I might make a package some day and try it out.

    You say rEFInd has use_nvram the other way around, but I'm not sure if this is the case. Looking at the config file, and also on the website The rEFInd Boot Manager: Configuring the Boot Manager hxxps://www.rodsbooks.com/refind/configfile.html, there is:

    If set to true, on, or 1, stores rEFInd-specific variables in NVRAM. If set to false, off, or 0, stores these variables in the vars subdirectory of rEFInd's home directory

     
  • simonzack

    simonzack - 2022-11-06

    Ah ok. I'll post it without a link.

    Thanks for the reply! I heard of RefindPlus, but thought it was for Mac only.

    I'm using Arch Linux. I don't see any AUR package though. It's not a major issue so it's some extra work to switch. I might make a package some day and try it out.

    You say rEFInd has use_nvram the other way around, but I'm not sure if this is the case. Looking at the config file, and also on the website page The rEFInd Boot Manager: Configuring the Boot Manager, there is:

    If set to true, on, or 1, stores rEFInd-specific variables in NVRAM. If set to false, off, or 0, stores these variables in the vars subdirectory of rEFInd's home directory

     
  • dakanji

    dakanji - 2022-11-06

    You are right. Seems there were some changes as of v0.13.1 but it seems these may have been just with the default config file and that it always was literally taken in rEFInd as well. Pretty sure this wasn't always the case but I must have been mistaken. In any case, means both are aligned on that which is good.

     

    Last edit: dakanji 2022-11-06
  • dakanji

    dakanji - 2022-11-06

    thought it was for Mac only

    Just developed on Mac and primarily aimed to add certain capabilities for some legacy Macs, initially allowing using newer GPUs,. Fixes like that for screenshots are open to any unit.

    I don't see any AUR package though

    There are no packages of any kind as yet. Either manually set it up or use rEFInd installation and swap in the EFI file.

     
  • dakanji

    dakanji - 2022-11-06

    Seems there were some changes

    Getting the ducks correctly in a row, I checked the histories and what happened was that rEFInd did apparently always had the literal interpretation but defaulted to true, which was to use the NVRAM if the token was not explicitly set as was the case in the default config file.

    RefindPlus decided to change this default to false and use the proxy by default instead to reduce wear and tear on the NVRAM ... which is particularly fragile on Classic Mac Pros.

    This was picked up here but rEFInd, due to legacy considerations, could not just change such a default and instead decided to change the config file so that new users would be generally set up to use the proxy without affecting existing users.

    rEFInd v0.13.1 Release Notes:

    Uncommented use_nvram from refind.conf-sample and set it to false. This
    change will cause new rEFInd installations to save rEFInd's own variables
    (PreviousBoot, HiddenTags, and others) on disk rather than in NVRAM.
    Existing installations won't be affected by this change. The point is to
    try to save wear and tear on NVRAM storage; however, users who install
    rEFInd to an HFS+ volume will need to comment out use_nvram or set it to
    true in order to use features that rely on rEFInd's variable storage.

    So yes, they handle the token the same way when set but will use different defaults if not set.

     

    Last edit: dakanji 2022-11-06

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.