• 0 Posts
  • 38 Comments
Joined 2 years ago
cake
Cake day: June 16th, 2023

help-circle
rss



  • SonotsugipaatoLinux@lemmy.ml$HOME, Not So Sweet $HOME
    link
    fedilink
    English
    15
    edit-2
    2 months ago

    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 feels like /opt 's official meaning is completely lost on developers/packagers (depending on who’s at fault), every single directory in my /opt belongs to standalone software that should just be put into either /usr/lib or /usr/share with some symlinks or scripts into /usr/bin.