With shell scripts, I’m not sure.
With Python scripts, you want argcomplete.
With shell scripts, I’m not sure.
With Python scripts, you want argcomplete.
I’m glad one more person discovered Linux is good in 2025.
I’m a random person too and I discovered Linux in 1993. Where’s my 15 minutes of fame?
Oh right, I’m not a Youtuber…
Have remembered to set the reboot in future command since
That’s not a bad idea actually. I’ll have to reuse that one. Thanks!
This is a server I was setting up. It’s not doing anything useful at all at the moment, hence the lax work practice. The only reason I drove back to work is because it’s needed tomorrow and I wanted to finish setting it up tonite.
In my defense, I just installed the machine. I was configuring it from home after hours.
Because I plain forgot I was remote. It’s as simple and as stupid as that.
I use Terminator. It’s nothing fancy but it works fine.
If I work locally, I usually stick several Terminator windows side-by-side and up-and-down in i3 tiles and that’s good enough.
If I work remotely through SSH though - which is 75% of what I do in a terminal, I’ll run tmux so I can have several shells in one terminal of course, but mostly so that I don’t lose what I’m doing if the internet goes down.
You’re comparing apples and oranges here. Kitty is a terminal emulator, tmux is a terminal multiplexer. They are only tangentially related, which is why…
The one thing I miss a lot is being able to quickly detach and re-attach to existing sessions
Of course it is, no question. But when there’s no other choice…
I know it’s not great, but at the end of the day, a second sound card recording the first one gets the job done. I have loads of rips I did that way. It’s kind of annoying to splice the samples and re-encode them with the correct tags though. But by the time you figure out how to rip something directly, you may find that re-recording the audio is quicker.
If it wasn’t on your phone, I would point to yt-dlp: simply type yt-dlp -F <Youtube URL>
to list the available formats, then yt-dsp -f <format ID> <Youtube URL>
to download the audio in the format of your choice:
E.g.:
$ yt-dlp -F https://youtu.be/xWUCsE4IM_c
[youtube] Extracting URL: https://youtu.be/xWUCsE4IM_c
[youtube] xWUCsE4IM_c: Downloading webpage
[youtube] xWUCsE4IM_c: Downloading ios player API JSON
[youtube] xWUCsE4IM_c: Downloading android player API JSON
[youtube] xWUCsE4IM_c: Downloading player 6e1dd460
WARNING: [youtube] xWUCsE4IM_c: Signature extraction failed: Some formats may be missing
[youtube] xWUCsE4IM_c: Downloading m3u8 information
[info] Available formats for xWUCsE4IM_c:
ID EXT RESOLUTION FPS CH │ FILESIZE TBR PROTO │ VCODEC VBR ACODEC ABR ASR MORE INFO
───────────────────────────────────────────────────────────────────────────────────────────────────────────────
sb2 mhtml 48x27 0 │ mhtml │ images storyboard
sb1 mhtml 80x45 0 │ mhtml │ images storyboard
sb0 mhtml 160x90 0 │ mhtml │ images storyboard
233 mp4 audio only │ m3u8 │ audio only unknown Default
234 mp4 audio only │ m3u8 │ audio only unknown Default
139 m4a audio only 2 │ 3.16MiB 49k https │ audio only mp4a.40.5 49k 22k low, m4a_dash
140 m4a audio only 2 │ 8.38MiB 129k https │ audio only mp4a.40.2 129k 44k medium, m4a_dash
269 mp4 256x144 25 │ ~ 11.11MiB 172k m3u8 │ avc1.4D400C 172k video only
160 mp4 256x144 25 │ 4.08MiB 63k https │ avc1.4D400C 63k video only 144p, mp4_dash
230 mp4 640x360 25 │ ~ 51.95MiB 803k m3u8 │ avc1.4D401E 803k video only
134 mp4 640x360 25 │ 13.88MiB 215k https │ avc1.4D401E 215k video only 360p, mp4_dash
605 mp4 640x360 25 │ ~ 37.67MiB 582k m3u8 │ vp09.00.21.08 582k video only
232 mp4 1280x720 25 │ ~166.26MiB 2569k m3u8 │ avc1.4D401F 2569k video only
136 mp4 1280x720 25 │ 52.13MiB 806k https │ avc1.4D401F 806k video only 720p, mp4_dash
270 mp4 1920x1080 25 │ ~306.16MiB 4730k m3u8 │ avc1.640028 4730k video only
137 mp4 1920x1080 25 │ 159.35MiB 2462k https │ avc1.640028 2462k video only 1080p, mp4_dash
$ yt-dlp -f 140 https://youtu.be/xWUCsE4IM_c
[youtube] Extracting URL: https://youtu.be/xWUCsE4IM_c
[youtube] xWUCsE4IM_c: Downloading webpage
[youtube] xWUCsE4IM_c: Downloading ios player API JSON
[youtube] xWUCsE4IM_c: Downloading android player API JSON
[youtube] xWUCsE4IM_c: Downloading player 6e1dd460
WARNING: [youtube] xWUCsE4IM_c: Signature extraction failed: Some formats may be missing
[youtube] xWUCsE4IM_c: Downloading m3u8 information
[info] xWUCsE4IM_c: Downloading 1 format(s): 140
security updates are for cowards, amirite? 😂
The server isn’t exposed to the internet. It’s a local IMAP server.
That was my family’s email server 5 months ago:
So roughly 2500 days today 🙂
Isn’t it the same as tuning?
Although it’s unclear what tuning is because it depends on who says it:
Yet for all its faults, I believe that’s the closest word to ricing you’ll find that is universally understood, neutral and isn’t rendered hopelessly bland and meaningless by the process of political correctness newspeak.
A lot of those BT adapters are cheap shit. Like the aforementioned RTL8821CE: it’s a nasty hack to do wifi and BT using a single 2.4 GHz transponder. But here’s the thing: however bad they are, they’re made to work well in Windows - possibly with a lot of awful engineering shortcuts and hackery, but in the end, Windows users will never know and that’s the point.
When open-source developers try to make equivalent Linux drivers without documentation or help from the manufacturer, reverse-engineering their way around the general crappiness of the products, you get… well, not very good drivers. And it really is nobody’s fault but the unhelpful adapter’s manufacturer.
So there is that, and the general bugginess on BlueZ on top of it.
My experience with Bluetooth support in Linux is: you’re either using one of the very few problem-free BT controllers and it works okay most of the time, or you have more or less problems all of the time.
The least problematic controllers I own are ASUS USB-BT500. The most problematic are ASUS USB-BT400 and Realtek RTL8821CE.
The state of Bluetooth in Linux is completely terrible, it has been for many, many years and it’s hardly getting any better. Bluez, like Pulseaudio, needs to die, and sooner rather than later.
rm -r *
Also, if you have to type that, don’t use the numpad: / is only one key away from *. If you finger snags the / key on its way to * and you happen to be root, your root partition will go bye-bye.
I never thought of doing that in 40 years. It’s a great idea actually. Thanks!
Here’s a rule I learned the hard way a few decades ago:
That’s the most accurate article on the subject I’ve read in years.