coltn
personally, i have my system is completely off and i boot it up, i just use my luks password then the system is set to auto log into my environment (only one password required)--then if my system is asleep, when i wake it up it will just go to my lock screen where i can use my fingerprint or user password.
because it's less work. i don't have to strip out what a distro thinks i want. i don't have to worry about major distro releases that might have changes that need manual intervention. if there are updates that need manual intervention, they're small, easy to deal with and usually do not effect me. everything is well documented and standard. packages are installed with default settings/config (to my understanding), so i can easily read upstream documentation and not have to deal with weirdness. getting packages that are obscure is easier. i don't have to worry about upstream having a fix, or supporting something that i need but my distro not having the update in their repo. it's just simpler and easier to manage (for my use case)
ya but for me it was easier to mentally map ctrl-b + key for remote, ctrl-n + key for local.
also sometimes i'll use the prefix, then change my mind and esc out, and with the whole double prefix thing it broke my brain. everyone is different though lol maybe that was a bad protip.
some benefits to using tmux,
- When you switch terminal emulators your workflow and keybinds come with you.
- If you need to operate within a tty, you can still use tmux and it feels almost like using a wm but without a gui.
- useful if you need to drop out of your desktop environment or maybe your DE/WM/compositor fails to load.
- also if you DE/WM/compositor crashes, your terminal doesn't go with it.
- If you ever end up working on servers it's so nice to be able to have the same workflow that you already use on desktop.
- tmux in my experience is much more scriptable.
- running system updates in tmux scares me less--if i accidently close the running terminal window i won't end up with a partial update.
One pro tip: on your local machine, set the tmux prefix to (instead of ), that way when you're using tmux on a remote server you can run tmux on the remote as well as on your local and the binds don't conflict.
unbind C-b
set-option -g prefix C-n
baby steps though. don't rush into things. don't even worry about what i said... just learn to use man and --help (and/or install tldr) keep building on the knowledge you have as you go; and don't be afraid to jump in when something interests you. good luck friend!
maybe using scrcpy is an option for you? like /u/paper_moon@lemmy.world said, using a password manager for 2fa is great (like actually so so great, and easier to back up/not lose access)--but also, a lot of services only use sms... in that case KDE-Connect is sorta the best.
another option for sms 2fa is google messages--but there are privacy concerns there for sure. I really wish there was something selfhosted/open source that was more light weight and similar to messages.google.com.
thanks for the suggestion! I did notice tempo hadn't gotten updates in a while... I will switch it out for tempus!
Sorta, I use both Navidrome and Jellyfin. I use navidrome primarily for music listening, but then point jellyfin at the same library so that I can play music on the TV easily. With Navidrome I use feishin as my client on desktop, and I use tempo on one of my android smart phones, ultrasonic on my daily driver flip-phone (cat S22 flip), and my partner has used amperfy and subsonic on their iphone--haven't really been happy with any of the clients for iphone.
Navidrome built in webserver also works pretty ok for using at work etc. Feishin is really nice for being able to set up dynamic "smart" playlists with a gui.
I find that using something more dedicated to music like Navidrome is a little more feature built. Plus there are so many *sonic clients--so it just feels more flexible.
I think most of this works for me in zsh. But also tmux can help with selection; I believe by default you use your prefix then open bracket (Ctrl-b + [) to put your self in selection mode. I have some configs to use vim bindings in selection mode.
Tmux selection:
# Yanking
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
zsh keybinding:
# Key Bindings
# set vim mode
bindkey -v
# create a zkbd compatible hash;
# to add other keys to this hash, see: man 5 terminfo
typeset -g -A key
key[Home]="${terminfo[khome]}"
key[End]="${terminfo[kend]}"
key[Insert]="${terminfo[kich1]}"
key[Backspace]="${terminfo[kbs]}"
key[Delete]="${terminfo[kdch1]}"
key[Up]="${terminfo[kcuu1]}"
key[Down]="${terminfo[kcud1]}"
key[Left]="${terminfo[kcub1]}"
key[Right]="${terminfo[kcuf1]}"
key[PageUp]="${terminfo[kpp]}"
key[PageDown]="${terminfo[knp]}"
key[Shift-Tab]="${terminfo[kcbt]}"
# setup key accordingly
[[ -n "${key[Home]}" ]] && bindkey -- "${key[Home]}" beginning-of-line
[[ -n "${key[End]}" ]] && bindkey -- "${key[End]}" end-of-line
[[ -n "${key[Insert]}" ]] && bindkey -- "${key[Insert]}" overwrite-mode
[[ -n "${key[Backspace]}" ]] && bindkey -- "${key[Backspace]}" backward-delete-char
[[ -n "${key[Delete]}" ]] && bindkey -- "${key[Delete]}" delete-char
[[ -n "${key[Up]}" ]] && bindkey -- "${key[Up]}" up-line-or-history
[[ -n "${key[Down]}" ]] && bindkey -- "${key[Down]}" down-line-or-history
[[ -n "${key[Left]}" ]] && bindkey -- "${key[Left]}" backward-char
[[ -n "${key[Right]}" ]] && bindkey -- "${key[Right]}" forward-char
[[ -n "${key[PageUp]}" ]] && bindkey -- "${key[PageUp]}" beginning-of-buffer-or-history
[[ -n "${key[PageDown]}" ]] && bindkey -- "${key[PageDown]}" end-of-buffer-or-history
[[ -n "${key[Shift-Tab]}" ]] && bindkey -- "${key[Shift-Tab]}" reverse-menu-complete
# Finally, make sure the terminal is in application mode, when zle is
# active. Only then are the values from $terminfo valid.
if (( ${+terminfo[smkx]} && ${+terminfo[rmkx]} )); then
autoload -Uz add-zle-hook-widget
function zle_application_mode_start { echoti smkx }
function zle_application_mode_stop { echoti rmkx }
add-zle-hook-widget -Uz zle-line-init zle_application_mode_start
add-zle-hook-widget -Uz zle-line-finish zle_application_mode_stop
fi
# History - use current line up to cursor to search through history with arrow keys
autoload -Uz up-line-or-beginning-search down-line-or-beginning-search
zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search
[[ -n "${key[Up]}" ]] && bindkey -- "${key[Up]}" up-line-or-beginning-search
[[ -n "${key[Down]}" ]] && bindkey -- "${key[Down]}" down-line-or-beginning-search
I recommend navidrome to anyone who wants to own their music, but still be able to stream. It was quite easy to set up, and has worked fairly well--though I haven't been super happy with ios clients for my partner. Buy your music on Bandcamp. Torrent everything else. Buying records on Bandcamp is sweet cause then you get DRM free digital versions as well.
I recommend giving the manual install a whirl... it might take you a couple tries, but it will help with your overall understanding of your system--this will be useful if anything ever goes sideways. It really isn't that hard.
What you learn during install (how to read the wiki effectively, partitioning layouts, how to set up a boot loader, what filesystems are available and how they're different, what you need to install for firmware or build tools etc etc) will help demystify the system, and put the power to manage your system in your hands. Also if you ever run into an issue like your /boot or / partition being full and you want to resize your partitions, or your compositor won't launch/is freezing and you need to use a TTY--you'll be better equipped... even if that means you're just a bit better at reading/searching the wiki.
after seeing this i promptly sailed the high seas to acquire a flac copy of the album (and will continue to seed). similarly i've had records include codes to low quality mp3 downloads. i've also noticed a lot of albums purchased on bandcamp are no longer available for download.