

For the first question’s answer, that doesn’t work if the directory’s file system supports extended file attributes, as Dolphin will prioritize those above the .directory file.


For the first question’s answer, that doesn’t work if the directory’s file system supports extended file attributes, as Dolphin will prioritize those above the .directory file.


A quick search tells me you need to open the directory’s properties dialog and click on the icon on the top left; if you want to set directory icons programmatically maybe you can do that, then try and see what Nemo does in order to change it?
Otherwise I’m afraid you’ll need to seek some documentation for Nemo or GNOME Files (since the former is a fork of the latter), or at worst, Nemo’s code itself.


Not sure how it works on other file managers (or any DE), but for Dolphin you can create a .directory file with its content like:
[Desktop Entry]
Icon=/absolute/path/to/image.png
I think it’s more or less universal.
Specifically for Dolphin, there may be a way to achieve the same with extended file attributes (getfattr/setfattr) instead of directories, but I don’t know the attr name for icons if it even exists.


Spaces behave like this because markdown was designed to be like HTML but quicker to write and easier to read without formatting;
most web services that use markdown translate it to HTML rather than parsing it directly, and in HTML whitespaces are supposed to work like you demonstrated in your comment.
The reason for this behavior in HTML is “because someone in the 90s said so”, I’m afraid.


Discord does markdown differently than intended: it’s better for non-techies because hitting enter once is more intuitive than the alternative, but the standard way to insert line breaks in markdown is to type two spaces at the end of the line you want to break.


Windows 10 and 11 really dislike HDDs, that’s probably why you can’t admit to using HDDs online without getting stones thrown at you (I’ve been there before).
I’ve disabled paging files (= swap) for one of my Windows VMs, unfortunately - to my surprise - that only had a small performance boost, and I still need to let the VM chug for a few mintes before it even lets me open File Explorer.
… but it does improve performance, definitely consider doing it if you don’t need swap/paging/whatever they call it now.


o7, probably worth a shot


It’s not about the amount of swap space, it’s a problem that happens when swapping happens for big chunks of data at a time.
Windows aggressively swaps out things way before it’s necessary, you can try increasing the system’s “swappiness”; I’m writing this from my phone, but when I get to my PC I’ll write out how to do it (unless somebody else does it before I do).
You can set it by writing vm.swappiness=60 in a file like /etc/sysctl.d/50-swappiness.conf.
The value 60 is arbitrary, if you increase it the system will try to swap out things more aggressively; the name of the file is also partially arbitrary, but AFAIK, it has to begin with two digits — the system will read all the files inside /etc/sysctl.d in order, and the settings in higher-numbered files will be applied over lower ones.
Officially, this is the explaination of the vm.swappiness parameter.
You can read and write the value with your shell:
#!/usr/bin/bash
sysctl vm.swappiness # shows you the current value
sudo sysctl vm.swappiness=69 # sets the swappiness to 69 AND shows you the new value


I’ve lost power with it many times, none of my BTRFS partitions have been corrupted so far.


Hey, the first two don’t sound quite right


freedesktop.org defines environment variables that should be used by applications to store their stuff;
[archlinux.org] has a (non-authoritative) summary, but it also provides a [link to the actual specification].
Defining the return type that way can be used when dealing with template sorcery - there’s no use for it here though, not even for readability in any way.
While I enthusiastically agree with the whole thing, I can somewhat get behind RenderDoc’s “making it configurable would take some work”.
However, Flatpak’s “fucking cry about it” attitude is why I’ll avoid using Flatpak for as long as possible.


I just use Zsh’s command history, coupled with a bunch of functions and aliases to set up different HISTFILE values for different workflows.
I keep HISTFILEs clean by prepending a whitespace before commands that I don’t want to remember, which unfortunately gave me the habit of doing that on Bash when Zsh isn’t available (which is ineffective at best, and actively annoying at worst).
I saved this post hoping for a useful answer, alsa alas, there seems to be none.
I’m not an audiophile so I’m more or less spreading misinformation, but I think you’re looking to configure ALSA’s device gain rather than going through pipewire.
kusivittula here mentioned alsamixer, and I found a StackExchange answer saying that you can save its current state using alsactl store (with sudo or write access to /var/lib/alsa/asound.state).
Alternatively, you can edit /var/lib/alsa/asound.state yourself.
It doesn’t work if your problem involves audio streams (so *I* am SOL), but making changes through alsamixer seems to lower my headset’s volume so that I can comfortably set it to 100% through wireplumber - I imagine that would also apply to mic gain.


I think GNOME’s filechooser is the GTK one (never used it so I’m not sure), mine looks like this:

It’s entirely possible that Firefox changed and now uses XDG portals by default, I configured it like this a long time ago.
As for how to configure it, I honestly don’t know.
It was a combination of messing with widget.use-xdg-desktop-portal on about:config, and changing XDG envvars and dotfiles; both by following several conflicting Reddit and bbs.archlinux.org posts.


XDG portal filechooser for Firefox: the KDE implementation uses Dolphin, which is full of features and I use most of them; the default GTK one is mildly infuriating to use and looks ugly too, but getting the browser to use the portal I want was a nightmare - especially since GTK discontinued the GTK_USE_PORTAL envvar.
The related Firefox config entries make no sense either.


Here it is:
#!/usr/bin/zsh
nl=$'\n'
dnl=$'\n\n'
url=$1
msgcontent=$url; shift
argi=1
for arg ($@); do
argi=$(($argi + 1))
msgcontent=${msgcontent}${nl}Argument\ ${argi}': '${arg}
done
title="${0:A}"
msg="An application attempted to open a web page:${dnl}\"${msgcontent}\"${dnl}Copy the URL to clipboard?"
kdialog --title $title --yesno $msg
answer=$?
if [[ $answer = 0 ]]; then wl-copy $url; fi
If you want to translate it to Bash, keep in mind that arrays behave differently between the two shells, and syntax like for arg ($@); do would likely misbehave or not work at all.
Also, there’s an issue where some applications do something weird, and the URL seems to be a zero-length argument. I have absolutely no idea what’s up with that.


You can set some browser-unrelated program or script as your desktop environment’s default browser, for example I wrote a Zsh script that creates a KDE dialog and asks me to copy the URL to the clipboard.
I’m not currently at my PC, but if you want it I can paste it in a comment here when I get to it - it shouldn’t be too hard to translate it to Bash, either.
Other than that? /usr/bin/true is a pretty nice default browser for applications to start without your consent, very minimal and lightweight.
It’s a glob pattern, it matches “franch”, " frbnch", “frcnch”, " frdnch" and so on