Just wondering since I know a lot of people quietly use a screen-area-select -> tesseract OCR -> clipboard shortcut.
- I separate subjects of interest into different Firefox windows, in different workspaces – so I have an extension title them and a startup script parse text to ask the compositor to put them in the correct workspace (lets me restart more conveniently).
- I have automatically-set different-orientation wallpapers for using my 2-in-1 depending on whether I use it in portrait or landscape (kind of just for looks, but I don’t think if anyone else adds a wallpaper change to their screen rotation keybind).
Maybe a bit plain since I’m only at mediocre level in my Linux journey, but I use my favorite fonts for Kitty. Recursive Mono Linear and then for italics and comments in neovim I use Recursive Mono Casual Italic.
Recursive Linear is so tidy and neat, with just the lightest touch of personality. And Casual keeps that style but tweaks it just ever so slightly to a more comic. And they have sans versions of both as well for everything else.
I also made my own Starship prompt to match my desktop. It runs an easily reconfigurable color palette and uses color coded chevrons to denote different git statuses.
While I doubt the concept is unique, the script is: a keyboard shortcut will check the clipboard for a YouTube link and then show launcher options for
mpv
oryt-dlp
, including launch arguments for lower quality format and audio only. It launches that in a terminal for easier handling when yt-dlp doesn’t work properly (much more common if using proxies, but also if a video is age-restricted or deleted).So when I see a yt link here, I can just copy it, keyboard shortcut and then it’s playing in my local video player.
edit: here’s the script. It assumes
xsel
(clipboard access),rofi
(menu creator),gnome-terminal
(terminal) andnotify-send
(system notification on failure) are installed and working, you’ll need to replace any which don’t match your system. My DE just runs it in bash when the shortcut is entered.Code (click to expand)
#!/bin/bash ARR=() ARR+=("mpv full") ARR+=("mpv medium") ARR+=("yt-dlp") NORMAL_URL=`xsel -ob | sed -r "s/.*(v=|\/)([a-zA-Z0-9_-]{11}).*/https:\/\/youtube.com\/watch?v=\2/"` CHOICE=$(printf '%s\n' "${ARR[@]}" | rofi -dmenu -p "mpv + yt-dlp from clipboard") DOWNLOAD="false" MPV="false" OPTIONS="" if [ "$CHOICE" = "mpv full" ]; then MPV="true" fi if [ "$CHOICE" = "mpv medium" ]; then MPV="true" OPTIONS+="'--ytdl-format=bv*[height<721]+ba' " fi if [ "$CHOICE" = "yt-dlp" ]; then DOWNLOAD="true" fi if [ $MPV == "true" ]; then COMMAND="mpv $OPTIONS $NORMAL_URL" gnome-terminal --title "$NORMAL_URL" -- bash -c "echo $COMMAND;$COMMAND;if [ \$? -ne 0 ]; then notify-send 'yt-dlp failed' $NORMAL_URL; bash; fi;" elif [ $DOWNLOAD == "true" ]; then COMMAND="yt-dlp $OPTIONS $NORMAL_URL" gnome-terminal --title "$NORMAL_URL" -- bash -c "echo $COMMAND;$COMMAND;if [ \$? -ne 0 ]; then notify-send 'yt-dlp failed' $NORMAL_URL; bash; fi;" fi
Uh I would be interested in that actually! Nowadays Youtube generates lots of problems with freetube due to their cookie bullshit and I feel with mpv(yt-dlp) in cli I at least have the option to see whats going on.
Now added to my comment :)
Same
Now added to my comment :)
Thanks!
Uh this sounds awesome, care to share?
Now added to my comment :)
I have an old gamer keyboard with extra programmable keys on the side, which I use for cut, copy, paste, close tab, close window, etc. Logitech provides drivers/software for Windows & Mac only.
To make it work I have a custom monkey-patched USB driver that I compiled from source, some weird daemon that interacts with the driver and some shell scripts on top of that. I’m not sure how but it works thanks to a 9 year old youtube video made by a guy from eastern europe somewhere.
Awesome…
Care to share the video/code?
I actually have something similar (Corsair Scimitar’s macro customizer doesn’t work on LinuxAs I was writing this I found a project that deals with Corsair MMO mice on Linux so now I will be going on an egg hunt.
video https://www.youtube.com/watch?v=8gAT-BbyOWw
code https://github.com/Leproide/Linux-G15-Daemon-Logitech-G110-
I’m pretty sure it will only work with a handful of old Logitech keyboards.
When I eventually upgrade my OS and can’t compile the stack for some reason, I’ve got a Sun Type-7 waiting in the wings.
I do something similar.
I have a V4N4G0N that I use the top row (half the normal number row on a full sized board) for switching workspace or switching apps to another workspace, and doing other stuff like copy and paste on different layers for the keyboard.
As its QMK (via VIAL) I have set all that up directly on the keyboard so its portable to any other PC I want to use. I have eight of these, mix of alu, acrylic and 3D printed, that I can choose from, all sharing the same map. I don’t like using anything else now as its become integral to my normal workflow.
I use my DE mostly as it comes, that’s got to be unique in this community
Some people use plasma because they like how configurable it is. I do like that, but I’m also drawn to it because of its great defaults.
The main ways I change it are setting my background (on my work activity I have it selecting from various company related backgrounds while on my personal activity it uses a selection of my favourites of my own photos) and adjusting the bottom panel.
Funny you should say that, I always felt like the defaults are really bad.
Probably, I have about 20 extensions for GNOME and have tweaked right about every setting and keybind.
I just like the extension that lets me swap audio devices without delving into settings
When I press Super + PrtSc, a bash script performs the following:
Takes a screenshot of the entire desktop (import -window root) and saves it as ~/screenshot.png…
Analyzes the screenshot to calculate the “mean brightness” value of the image. It converts the image to grayscale and determines the average pixel brightness (a value between 0 and 1, where 0 is black and 1 is white).
Checks if the image is dark by comparing the mean brightness to a threshold of 0.2. If the mean brightness is less than 0.2 (i.e., the image is very dark), it applies a negative filter to the image (convert -negate), effectively inverting the colors (black becomes white and vice versa).
Sends the image to a printer (lp command) named MF741C-743C for printing.
an actual print screen, finally
A kind of ‘super’ print screen, in fact.
why?
Honestly I print out anything my little kiddo does at school on his Chromebook, and some stuff has black backgrounds. I got tired of wasting toner so I made a script that would print a negative screenshot if it’s a dark image. One keystroke and I get what I want
That’s a really neat use case!
And a very clever implementation.
Machined badge reading “Built Not Bought”.
My dad used to put them on the cars he built.
My dad used to put them on the cars he built.
That’s pretty rad.
He was a rad guy.
I suspect my habit of having an
alias userctl="systemctl --user"
is slightly unusual, as is running Firefox, Steam, and some other graphical programs as systemd units is somewhat unusual (e.g.mod4-enter
runssystemd-run --user alacritty
)But what I’m actually pretty sure is unique is my keyboard layout. I taught myself dvorak a summer some decades ago, but the norwegian dvorak layout has some annoyances, so I’ve made some tweaks. Used to be a
Xmodmap
file, but with the switch to wayland I turned it into a file in/usr/share/X11/xkb/symbols/
.Part of what I did to teach myself dvorak and touch-typing at the same time was randomize the placement of the keycaps too. It has a side effect of being a kind of security by obscurity layer: I type quickly and confidently, but others who want to use my machines have an “uhh …” reaction.
I didn’t know about the
systemd-run
command. Do you use it to save the command log? I created a script conveniently namedx
which opens a file in a default app, in the background, so I can still use the terminal. But then I had the problem with handling logs and this sounds like a perfect solution. Gonna try it today.As for the alias, I wanted to create a pacman-like interface for systemctl, so the commands would be much shorter, but never finished it. For example,
sctl -Eun unit
would be equal tosysyemctl enable --user --now unit
The logs are handled, but I mostly use it for command separation and control, including killing unruly child processes.
I have been using the same
userctl
alias.
I have scripts set up to switch between my desk setup and my home theater setup that swap monitor configurations with wlrandr and default audio devices in wireplumber. These scripts are triggered with the “Netflix” button on my Nvidia Shield remote via Home Assistant and SSH. Simultaneously on Home Assistant power to the peripherals on my desk is toggled, the TV input is toggled between the Nvidia Shield and the PC, my AV receiver settings are toggled, and if the PC was asleep, it’s turned on with a WoL magic packet.
That’s awesome! I do something similar using Home Assistant. I scan an NFC tag to set my TV to the right input, adjust the volume, change the receiver settings, run Sunshine on my computer for screen sharing, switch computer displays to just one, and start Steam. I wish I could get WoL to work too.
I have two mice, one for either hand, and use xinput to flip the buttons on JUST the left one. It’s actually one of the main things keeping me from moving to Wayland, which doesn’t seem to have the same configuration features
LOL I’ve never seen that before.
Do you use them both at the same time? Or do you switch between them rapidly? (Maybe you could make a taskbar button-toggle if it’s the latter!)
there are both configurable mice that let you swap mouse buttons (in the worst case in a windows virtualbox with usb passthrough) or mice that are leftie right out the get-go. those would allow you to use wayland, assuming you can afford to and want to get a new mouse.
I’m one of at most a handful people in the world with a full disk encrypted Steam Deck and unlocking using the touchscreen.
Until someone implements https://github.com/ublue-os/bazzite/issues/464 in Bazzite.
I am indecisive when it comes to wallpapers so I have a script somewhere which accepts tag-words as arguments and then scrapes wallhaven.cc for those words at the resolution of my setup and picks one that contains those words at random before downloading it to my wallpapers folder and setting it as my wallpaper image.
So for example, you could just know you want something blue so you would run
wallpaper blue
and it just grabs one and sets it. You could get a wallpaper of the sky, of a blue car, of the ocean, whatever happens to be a wallpaper that met the criteria of the word/s supplied.Risky business considering there’s always some horny anime crap mixed in on Wallhaven.
Filters and tags only help so much since lots of it either has poor tags or no tags at all.There is a toggle for SFW/Sketchy which in my experience has worked pretty well in avoiding such things, but you are probably right it does not catch everything.
If such a thing happened, I would just re-run the same command to update to a different one though. I guess I generally just make sure no one is in the room when it runs haha.
Whenever you get 3 in a row, you know what you have to do.
The gods have given you a sign.
KDE actually has a plugin that does just that, I use it currently to rotate a fantasy illustration as my wallpaper every hour from that site.
Oh neat!
My script is for gnome, but I wonder if there us an equivalent gnome extension in existence as well.
I use compose key sequences to save time writing out long email addresses. For example, I have something like this in my ~/.XCompose:
<Multi_key> <b> <o> <s> <at>: "myangryboss@company.com" # Email of my very angry boss
So I can just type Compose (right alt on my system), bos@ and get his email address. Less error prone than typing out emails manually.
I’m probably not the only one to use compose strings as a replacement to a text expander, but I don’t know anyone else who does this.
I use KDE’s defaults.
That’s sick man! Get some help!
I use Gnome defaults.
With Gnome you have no other choice.
Gnome is very much built around customization lol
I boot on a custom EFI app to control my dualboot (instead of systemd-boot or grub) that asks a service on my proxmox server which OS I’m supposed to boot.
Overkill, but it allows me to control my dual-boot without a keyboard in my computer (because it’s a Bluetooth keyboard so I can’t really use it in grub anyway)
A custom EFI app? Is that like a handrolled Unified Kernel Image with some Proxmox-specific addons in it? How’d you make it?
No, it’s a EFI app I developed in Rust that does a query over multicast UDP and uses the result to select which EFI app (Windows bootloaded (yeah I know…) Or systemd-boot to start Arch)
There’s nothing related to proxmox itself, it’s just there that I host my LXC with the service that responds to the quey.
That’s so cool! I just started studying uefi-rs yesterday but haven’t been able to think of good use cases. Thanks for sharing!
Wow, thanks! It was really fun to build
On my desktop, I wrote a Python script that pulls a random Star Trek: The Next Generation or Deep Space Nine script from a folder and prints it in STDOUT. I use this in the XScreenSaver
Text Manipulation > Program
option to turn Star Trek into a screen saver.Currently, I use it with the Apple II screensaver, but in its original incarnation, I used the Star Wars intro screensaver. 😈