- super+u shows a wofi menu allowing me to fuzzy find a credential from my password manager and copy its username
- super+p same thing but for passwords
- super+o same thing but for TOTP codes
- super+t allows me to select an area of the screen, take a screenshot, run it through OCR, translate it to English via the deepl API, and then pop up the result as a desktop notification and also copy it to the clipboard. (I’m not fluent in the language of the country I live in)
- ”lock” and „request” based suspend management, so my backup scripts or other long running jobs can keep the computer from sleeping until they are done.
Ask Lemmy
A Fediverse community for open-ended, thought provoking questions
Rules: (interactive)
1) Be nice and; have fun
Doxxing, trolling, sealioning, racism, and toxicity are not welcomed in AskLemmy. Remember what your mother said: if you can't say something nice, don't say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them
2) All posts must end with a '?'
This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?
3) No spam
Please do not flood the community with nonsense. Actual suspected spammers will be banned on site. No astroturfing.
4) NSFW is okay, within reason
Just remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com.
NSFW comments should be restricted to posts tagged [NSFW].
5) This is not a support community.
It is not a place for 'how do I?', type questions.
If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world. For other questions check our partnered communities list, or use the search function.
6) No US Politics.
Please don't post about current US Politics. If you need to do this, try !politicaldiscussion@lemmy.world or !askusa@discuss.online
Reminder: The terms of service apply here too.
Partnered Communities:
Logo design credit goes to: tubbadu
what software do you use for super+t?
Grim, slurp, tesseract, and apparently the deepl SDK for Ruby? That was an interesting choice, younger me.
#! /bin/zsh
# Select an area of the screen, Screenhot, OCR, and translate it to english.
temp_image=$(mktemp --suffix '.png')
grim -g "$(slurp)" "$temp_image"
# DPI of 120 seems to work OK for screenshots.
source_text=$(tesseract "$temp_image" - --dpi 120 -l pol+deu)
translated_text=$(~/scripts/translate "$source_text")
wl-copy $translated_text
notify-send 'Translation: ' "$translated_text" --expire-time=60000 --category 'translation'
rm $temp_image
Translate script:
#! /bin/ruby
require_relative 'deepl_request'
puts Translator::DeeplRequest
.new(ARGV.join ' ')
.translation
This script is a bit hacky and one-off, I wouln't just copy-paste it.
♬ One of these things is not like the others.. ♬
I never really looked into Linux or any alternate OSs before now. This thread is super interesting and a very fun read.
if you ever feel like trying it, Linux is easy to try in a virtual machine or on real hardware (do not install it to your main machine when you first try it except in a vm, which does not change your system). I'd recommend trying fedora workstation and fedora kde because they are decent examples of the best two desktop environments. mint exists as well, but I personally wouldn't recommend it. btw, there is no "best" distro, just find one that works for you and ignore the tribalism.
where do you get your VMs?
download a virtual machine app (I'd recommend virtual box, boxes is great too but iirc its Linux only), download the .iso file (this is the installer) for the distro you want to try from the official website, in your app of choice create a virtual machine and select the file you downloaded. from there you just follow the installer. it may help to look up how to use the app you chose bc VMs can be a little iffy. if you've ever used an emulator, it's a similar process but with ISOs instead of roms.
If you are interested in a specific distro, they usually have a website with a direct download or torrent option. Then you can build a virtual machine with that distro
Caps Lock remapped to compose. Much more useful, especially for those of us who sometimes need to type "other" letters, but prefer US dvorak keyboard layout.
While I agree with the general premise that Caps Lock is in a terrible place on standard US English keyboards -- that's prime real estate and people just don't use it that much -- I swap Caps Lock and Control and have Menu remapped to Compose. If you're typing in English, you're gonna use Control a lot more than Compose. If you use emacs, that's doubly true. And that's about where Compose has been on some keyboards.
I don't really need the compose key, but rebinding caps does sound tempting. But what to bind it to... Hmm
I bound it to normal shift, because I fat-finger caps instead of shift all the time anyway lol
Haha fair enough
On Macs, I remap it to the Command (super) key. On Linux, I remap it to Ctrl.
It makes copying, pasting, etc. way more ergonomic and doesn't strain your pinky 😌
what's the compose key? never heard of it but any excuse to not waste a key on caps lock sounds great.
Allows you to do umlauts, accents on letters etc.
E.g., öšéå
https://en.wikipedia.org/wiki/Compose_key
Works in X11 and Wayland.
Not as powerful as Emacs's input methods, but it covers a lot of common cases.
Basically, hitting compose causes the next two keystrokes to "combine". For example, / + o = ø, as well as the other letters that are useful to us with extra letters in the alphabet. In addition to that it provides a myriad of other characters such as copyright, trademark, just to name a few.
What? And lose one of the disco buttons? (along with scroll lock and num lock)
Flashing lights and a loud beep if set up right hehe.
It is gnome, but https://aylur.github.io/astal/showcases/ is pretty awesome if you've done any React development. Pretty much coded up my own desktop environment with typescript and tsx for layout stuff. Lot's of fun widgets.
Note that I use nixos so pretty much everything is hand picked instead of a prebuilt ready to go environment. Hyprland for the basic desktop, Astal for my desktop shell with widgets, toolbars, etc.
On Linux Mint I can resize windows by hitting super+z, close windows with super+c, and move them around with super+left drag. There are others too, but I use these constantly. I was worried when I switched from Windows that I'd lose my shortcuts, but it turned out that there even more options on Mint.
I used to quite like the Unity desktop for all its quirks and how the panel would merge with maximised title bars. I do that with KDE Plasma, a global menu, active window controls, and a bunch of command output widgets for CPU usage and things like that. libadwaita-without-adwaita and gtk3-classic help to theme the stuff Gnome tries to force the look and feel of to be consistent with everything else. Another tweak that I have grown accustomed to is editing the Firefox userchrome.css. It means I can even make that fit in with every other application too. Search Github and you will find loads.
Fullscreen or maximized windows always are -1 px on the right of the screen.
My cursor rests on the right of the screen so that a swipe changes workspaces and a right click opens a dropdown-launcher to navigate to apps not used frequently.
Build-in in XFCE.
Minimalism.
kde kinda just comes like that, taskbar and important apps (system stuff, browser, etc.) only. I've added some stuff but only things I use or anticipate using.
I meant more like not taking up shit tons of hard drive space, memory, or CPU, not having a billion dependencies, starting instantaneously, low cognitive load, etc.
It was kindof a sarcastic dig at KDE. I deserve downvotes.
this kind of angst is valuable; I had considered looking into KDE until I read your comment and now I'll pass on it
I'd still recommend trying kde. on my system it idles at around 3.7 GB of ram without steam and discord running, and 6-7 GB with them. gnome people like to pretend other things don't run very well but the truth is that their lack of certain features does not make them any faster, the setup of a particular system does.
Funny thing is that KDE actually takes up remarkably little resources. You don't have to install all the apps that come with it and the memory footprint is surprisingly small.
I feel the sentiment though, my daily driver is built off of ubuntu-server headless. I find it's just the right amount of "has searchable solutions for near everything" and "is properly minimal" to base my workstation off of. I run X11, pulse, awesomewm, firefox, lxterm... fairly standard stuff but without gdm, gnome/kde even installed it's pretty lightweight. The entire os uses ~780mb of ram (+23gb for firefox tabs lmao). It gets the job done, keeps my skills relevant maintaining the automation that builds it, is dead simple to troubleshoot, and has very few black boxes.
in my experience plasma 6 and gnome (idk what the newest one is but I've tried the newest in the last couple days on a couple distros) both boot just as quick and use about the same amount of resources.
Yeah, Gnome is far to bulky for my taste as well. I use Sway. It's one single process. And it's a Wayland compositor, so I don't have any separate process for the X server. And Sway is currently using less than 90MB of RAM on my computer. With nothing else running but a minimal terminal emulator, htop, SystemD, and various daemons, my whole system is using less than 480MB of RAM.
And that all makes me happy, of course, but just seeing small numbers isn't really the point either. Aside from resource usage, I spend less time fixing, fighting with, upgrading, configuring, and otherwise maintaining Sway than I would KDE or Gnome or XFCE, and more time using my computer for the stuff I want to do on it. (As an aside, Sway's tiling model is absolutely baller. I rarely have to think about where I want my windows, and when I do have to think about that, I don't have to go to the mouse to position/resize them.)
KDE and Gnome are two different varieties of seven(-hundred?)-layer bean dips of dependencies atop dependencies. I like that my entire graphical system is one process with comparatively few dependencies that I can wrap my head around pretty easily. (And, honestly, Sway is a step up in bulkiness/heaviness/complexity from dwm, which is what I used previously.)
fair enough
I just switched employers, and had to go from using Sway to using Mac os full-time.
God damn do I miss the simplicity of organising windows with sway.
Mac os' Window Management is absolutely horrible. Especially the useless cmd+tab bullshit that only shows one instance per app, even if it has multiple windows open. Literally can't alt+tab through browser windows without installing software for it.
Sorry that kinda turned in to a small Mac rant, I just hate this system so much.
KDE Frameworks used to be a single package (I think with KDE 4?) that people complained about because it contained unnecessary features for the software they want to use. They split it into different packages because of that, so software could only depend on the part of Frameworks that it actually used. And now people complain that KDE software has "a billion dependencies". Unbelievable.
Hmm.
-
I have a manual screen-lock key combination. I have DPMS (auto power off when idle) on the monitor disabled when it's unlocked and set to a short period when it's locked. Powers on when I'm typing to unlock.
-
I haven't touched KDE for a long time, but last I did, I believe that it was a stacking system. Back when I used a stacking window manager, I had the fourth mouse button set up to act as a "drag window" button. Could click anywhere on the window. I did like that.
-
I have a key combination set up to open a terminal with tmux with a shell, a web browser, and one of those dmenu text-based launcher clones (can't remember which). Those are the things that I most frequently want access to.
-
I currently hide the status bar unless the Super key is held down. I'm not completely sure that this is the right way to go -- it does mean that any important stuff needs to notify the user via the notification manager system. But it does provide a maximum of usable screen space.
-
No animations. They delay the time taken until what I just did is visually complete.
-
I have multiple numbered workspaces. I hit Super-q and then a number to jump to them, Super-c and then a number to move the focused window to one, and Super-1 and Super-2 to cycle forward and backward through them. There weren't chosen to be mnemonic, but convenient to reach, as they're operations that I do a fair bit.
-
Background is just a flat color (low-saturation medium blue, so not super-high contrast). I use sway, a tiling compositor, so I rarely see the background, so your mileage may vary. That being said, I started doing that years before I started using tiling. Background images were just more visual noise for me.
-
Killed window decorations (titlebar, close button, etc). This may not be reasonable for a stacking environment. They eat screen space and don't display anything very useful. I use a tiling environment, so resizing and dragging isn't necessary. I have a key combination to kill the currently-focused window, so I don't need a close box. I don't minimize windows -- I do switch workspaces, which has some functional overlap -- so I don't need controls for that.
-
I have my mouse pointer auto-hide systemwide if I'm not moving the mouse or clicking its buttons for a few seconds.
-
I have a keystroke (Super-`) to dismiss notification manager messages from the keyboard. This may be the norm in desktop environments -- I haven't played with them since before notification managers were a thing.
The one thing that I'd kind of like to do that I don't currently is to have a toroidal workspace model. Someone's done this for emacs with buffer switching, which is where I saw it and thought "wow, that's an excellent idea", but it hasn't been done for sway workspaces. Basically, normally you have a "ring" of workspaces that you can cycle through. I'd like to have a "ring of rings" (which in 3D, is a torus), since I normally I'm working on one project and have several workspaces (usually 1-4) associated with that project. I'd like to have a "ring" for each project, with different keystrokes to switch projects and switch workspaces within those projects. Sway probably could support that with just scripting, no core modifications, but I haven't gotten around to it.
One more: super + q to change cooling/cpu/gpu schema. Quick way of swapping between "nice and quiet under the couch laptop, streaming to the TV" and "ultra-hurricane GeForce 8000 cataclysm gaming-mode for playing Tetris", or when I want something in between and/or portable.
I use Easy Effects to normalise volume so that I don't have to adjust the volume so often when watching YouTube videos and stuff. Just google for a preset.
Only downside is you'll have to make exceptions for real time communication apps like Discord because they crackle. But everything else is perfect without any noticeable lag.
Rolling release schedule, and sufficient documentation.
well my distro (tuxedo os) is mostly rolling release except for the Ubuntu base, but I haven't really looked into it's documentation. generally if I need documentation the Ubuntu stuff works (obviously because it's Ubuntu based).
A scrolling tiling window manager.
When you open one window, it's full screen, no title bar or window decorations.
When you open another one, they're tiled side by side.
When you open a third one, it extends the desktop and you can scroll horizontally between your windows with the mouse, touchpad or key combo. This can go as wide as you want (or vertically, if you prefer).
Heavily customized sway by the way.
Uses flatpak
I'm on tuxedo os so it is flatpak and distro package by default.
I made a launcher inspired initially by kde's krunner, tries to do everything with a launcher, keeps the keyboard shortcuts to minimum, but having almost everything within a few keystrokes. Most things are os/de/wm agnostic. Since the write up, I have added a bluetooth device selector, network connections, vpns, and more stuff.
edit: sorry I forgot to add the link - https://sga.codeberg.page/articles/Launcher/Launcher_for_Everything.html#how-does-this-work