I don't know if it has been already mentioned but I love bat a lot. It's like the cat command but with colors and line numbers. Makes things a little bit easier.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Plain text double-entry bookkeeping for home finance and budgeting. Pretty sweet, once you get used to it.
GNU Stow, definitely. I can't stress enough how wonderful this app has been for my sanity. I use it to manage my dotfiles and personal data.
I made one dotfiles
folder, which contains home
, etc
and usr
subfolders. I put all my configs in it (dotfiles, themes, custom keyboard layouts, etc) in the relevant subfolders, then with Stow I symlink dotfiles/home
to /home/username
, dotfiles/etc
to /etc
and dotfiles/usr
to /usr
, and poof symlinks are created for everything in it. That way all my configs are in one folder, I can sync it to my NAS easily, make it a git repo for version control, and even upload it to github. It's amazing 🥰 I also made a personal
folder which contains Documents
, Pictures
, Videos
, etc, all symlinked to /home/username/Documents
and such, so I only have one folder to back up for my personal data. Yes I'm very lazy and hate doing backups 😅
Rofi (or here for the X11 version) : It's the best app launcher by miles, even if I used a DE I'd still use rofi. But I also use it for a lot of other stuff that it's much less well known for: the run mode for launching scripts and other executables, the ssh mode for ssh, rofi-calc for a very light and fast calculator that understand natural language, rofi-games as a games launcher, rofi-emoji as emoji selector... Rofi is life, rofi is love, rofi is God.
Libation to liberate audiobooks from Audible. There's tons of apps to download and un-DRM your files from various platforms, but most only work on Windows. This one does work on linux 🥳
Lots of self-hosted apps for my media server, but they are all pretty well known (Jellyfin, Audiobookshelf, Komga) except maybe Suwayomi Server for manga (it can sync progress to AniList, and there are plugins to enable downloading from online manga reading sites)
ani-cli for watching anime because I'm a crazy person who grew up with MS-DOS and TUI apps make me happy. Also it's often more convenient than having to check ten different websites to find the one anime you want to watch only to discover that half of them have been taken down.
yt-dlp to download videos from YouTube. I use wrapper scripts to make it more convenient to use because I'm lazy, but it's great.
Have you used chezmoi in the past? Do you know how it compares to gnu stow?
I'm a chezmoi user and I'll be honest: as powerful as it is, it's way too clunky to get right. I spend too much time configuring and then am too worried I'll mess it up if I need to add or remove anything.
I'm going to give stow a try to see if it fits my workflow better.
No I wasn't aware of it but it looks interesting! It seems to have a lot more features than GNU Stow. It says it requires a GitHub repo though, so it wouldn't do for personal data, but for configs it looks interesting!
I really like units
. It feels much better to use than the calculator that pops up after a Google search.
~ $ units '190 cm' 'ft;in'
6 ft + 2.8031496 in
units
is really powerful. I worked with the team there to appropriately support Gaussian units since it seems no other tool would—took a bit of retrofitting to support fractional exponents like "grams^1/2", but I have yet to find another tool that handles this even remotely correctly.
If you don't want to bother with a CLI app and specific syntax to follow, there's rofi-calc, it's super fast to load since it's just rofi and it understands natural language. When I stumbled upon it I found the idea of a calculator that understands you when you type "30 feet in mm" or "10 usd in euros" completely mindblowing. Props to qalc for making it possible
FlameShot. In my opinion, the best and most versatile screen capture app for Linux distros, especially if you use Gnome as your DE.
even on windows, far better than the windows thing.
Last windows I used was 10,and I've always found it lacking in the screen capture arena. Full disclosure, I had no idea Flameshot had a windows version.
Aside from ones listed here:
System Tools
- WinApps - Run Windows applications seamlessly integrated into your Linux desktop environment, like native including Adobe products.
- Waydroid - Run Android applications in a container on Linux with full hardware access.
- Topgrade - Upgrade all your system packages and dependencies in one command.
- AM (AppImage Manager) - Easy AppImage management for installing, updating, and organizing portable applications.
- Starship - Fast, customizable cross-platform shell prompt with Git integration and status indicators.
- InShellisense - IDE-style IntelliSense autocomplete and suggestions for your terminal.
- Tabby - Modern terminal emulator with tabs, split panes, and extensive customization options.
- Zeit - Qt GUI frontend for scheduling tasks using at and crontab utilities.
- KWin Minimize2Tray - KDE extension that allows minimizing windows to the system tray instead of taskbar.
- Flameshot - Feature-rich screenshot tool with built-in annotation and editing capabilities.
- CopyQ - Advanced clipboard manager with searchable history and custom scripting support.
- Safing Portmaster - Free open-source application firewall with per-app network control, DNS-over-TLS, and system-wide ad/tracker blocking.
Productivity Tools
- DSNote - Offline speech-to-text, text-to-speech and translation app for note-taking.
- NAPS2 - User-friendly document scanning application with OCR and PDF creation capabilities.
- Morphosis - Simple document converter supporting PDF, Markdown, HTML, DOCX and more formats.
- Obsidian - Powerful knowledge management app with bidirectional linking and graph visualization.
- BeeRef - Minimalist reference image viewer designed for artists and designers.
Media & Entertainment
- Popcorn Time - Stream movies and TV shows via torrent with built-in media player.
- Nicotine+ - Modern Soulseek P2P client for sharing and discovering music files.
- XnView - Versatile image viewer, organizer, and converter supporting hundreds of formats.
Happy to list out the self hosted stuff too if there is interest.
Topgrade - Upgrade all your system packages and dependencies in one command.
Keeping your system up to date usually involves invoking multiple package managers.
As someone who worked build/rel before working OS security: if you're intentionally breaking Single Source of Truth for software state management, then you're in for a bad time. This can only delay the inevitable, but the technical debt comes at a high credit cost on top.
Building an RPM is SO trivial to do, even without some LLM feeding it to you; and maintaining an existing one or rebuilding it to suit another distro or version even more trivial. Save your sanity and avoid out-of-band 'package' managers!
I invented WinApps. http://nowsci.com/winapps
I had a conversation started with the org fr their takeover and they just dropped off. If anyone from there is reading this, please reach out.
Thanks... I had no idea this existed. I can now connect to the work remote desktop software with a single window perfectly integrated. This is incredibly helpful. Moreover I can now say I'm using Winapps in order to run Windows App. I guess now they can rename the remote desktop app again to Winapp to go full circle. Or maybe Winamp, just to confuse people. Or just App, to make it impossible to ever troubleshoot.
EDIT: At any rate, this works really beautifully. It's a bit of a PITA to set up if you're having the VM via virt-manager but hell if it's not as smooth as native.
Thanks for your baby! It's great.
Awesome TOTP app that can import your Aegis Authenticator database, which then you can keep in sync with your phone and desktop.
Super handy.
Running a TOTP app on desktop seems like a potential security issue. Get a malware on your desktop and you're fucked
I believe the reason we use mobile devices is that they have better isolation and are generally less vulnerable
Localsend is rad, super useful: https://localsend.org/
Send any file across different devices over the network. FOSS and fast. Highly recommend.
gnome-network-displays let's you cast your screen to a wireless display (Miracast) or to a Chromecast device.
It works with KDE no problem and even under Wayland.
It creates a virtual display that can be organized like any other display: unify with another screen or extend the desktop using your DE's default method/UI. And then it uses standard screen sharing conventions to send content to that virtual display.
I don't know what kind of dark arts the developer(s) employed to make this possible, but the end result is simple wireless display in Linux that just works! A MUST for using Linux in a business setting.
auto-cpufreq to automatic CPU speed & power optimizer to improve battery life for Laptops.
Syncthing for syncing folders and files directly between your devices.
Also whatever software or driver I loaded to make this HP Thunderbolt Docking Station work with Linux.
Boxbuddy makes it incredibly easy to use distrobox, a great way to install software that might not be available for your distro, but is available on another distro, or just a way to keep a piece of software in a stable state (like DaVinci Resolve with davincibox).
If you use a "gaming distro", I'm sure you've seen Input Remapper. It's a neat utility that can create macros for all your peripherals or rebind keys as you like. Want to bind you controller so it works like a mouse? Possible. Want to macro key pressed by using the forward button on your mouse? Possible.
Did you leave Foobar2000 behind when you switched to Linux? Why not give Fooyin a try. It's a relatively new audio player with aspirations of becoming just as configurable as FB2K. For me replaygain is quite important, and while some other FOSS audio players support it, not many has replaygain generation. And Fooyin does. While also being just as easy to set up and use as Foobar. Worth a look.
GitHub Application Manager (GAM): https://github.com/fmstrat/gam
It's like apt
for installing directly from Github releases. A plug, sure, but I still use it regularly for things like FreeCAD, Cura, OrcaSlicer, and so on.
https://github.com/actualbudget/actual
It's software for budgeting. You can run it entirely local, or set it up as a server. It stores everything in an SQLite dB, let's you import and export CSV files, and it gives you great options for querying and seeing reports on your financial records.
I've got a handful of accounts, so I set up a small python utility to parse the CSVs my banks give me to something actually sensible and readable for Actual. I do that once a month, add a reconciliation entry here and there, and it's all kept on sync very well.
I have one morbid report titled "money pissed down the landlord drain", and it's far higher than I'd like to be. But it's got close to every penny I've ever spent on that bullshit in one place.
there is also:
https://github.com/maybe-finance/maybe
looks promising and it SHOULD support bank connection.
this is more a selfhosted thing but i adore it: https://github.com/silverbulletmd/silverbullet
you can write your own Javascript functions (will be lua in the near future) and use them directly in the editor.
KDE Connect
I've used it a lot just to control audio or video playing on my computer from my phone. (Sometimes when I'm sat at my computer with multiple windows and workspaces open, I even find it easier just to hit my phone's lockscreen to pause the music.)
I'm starting to use some of its other features, too. E.g. copying & pasting and sharing files between phone and computer.
There's more too I need to explore.
(Unfortunately, sometimes I get a 'device unreachable' error when both devices clearly have a working connection to the same router.)
Pinta is the main one that comes to mind. I don't use it every day, far from it, and that's a part of why I love it. On the rare occasion that I have to do some image editing, I load up Gimp and then proceed to fight against it for at least a whole day to make it do the simplest of things before finally ragequitting. Then I load up Pinta and actually get the task done in either minutes or hours at most.
It's like old school MS Paint, but better. Simple, intuitive, no huge learning curve, just enough features to get my nonprofessional tasks done. It should be a distro default.
ffmpeg - www.deb-multimedia.org . I edit podcast videos for distribution to subscribers. High-quality video produces very large files but if they're only going to be watched on laptops, tablets, and phones, I can throw away a lot of bits without noticeably affecting quality on a phone screen.
And nothing does that better or faster than ffmpeg.
You’ve heard of it for sure, but shout out to Audacity. I used Cool Edit Pro for years before having to switch to Adobe Audition. The UI in Audacity feels surprisingly familiar and it does what I need it to do.
Steam added an excellent screen capture feature to their overlay, but I like being able to capture my screen anytime, not just when playing games with the steam overlay.
gpu-screen-recorder is the perfect tool for this, you set up a command to run at startup and the software records the last X minutes in the background, with barely any hardware utilization. Add a hotkey for another command that saves the recorded clip to a file, and boom, simple and efficient replay recorder. I'm honestly surprised this app wasn't mentioned yet.
Redshift, it changes the brightness/color on the display bluer closer to midday and redder at night. Twilight is a similar app on android.
KDE includes now a default option in their settings to do this. It's in the Colors & Themes > Night Light menu.
Gnome too, btw 😉
Logseq for notes and task tracking. It’s an open source alternative to obsidian. Life saver for tracking stuff at work.
-
xpipe – I use it to SSH into any of my servers, cluster nodes or directly into docker containers without having to remember hostnames, IPs, users. It can also bring your useful scripts to said ssh session without "installing" them on the target device, which is great because you don't have to set it up for every new server. Also the dev is a really nice guy.
-
Portmaster + SPN – I use it to route each app through different VPN paths with multihop support and per app firewall rules. (e.g. one app via Denmark, another via a random country, third app no VPN, fourth app gets no internet at all etc.) It really gives you full control over the traffic. afaik there is no other all in one app like this.
-
wdfs - It's an old project that is patched by this random github user. It's the only way I found to mount a webDAV storage cleanly into a directory from a bash script without fucking with my fstab or being root or giving specific privileges to my user. I mount it from a bash script because that way I can use KDE wallet to store the credentials instead of having a plain text file somewhere on my fs, the script waits until the wallet is unlocked, then reads the credentials from it and mounts the webDAV to a path in my home. That is more accessible to apps and other scripts (e.g. recent files) instead of doing it via Dolphin, which generates a random string in the path every time when opening network storage.
GNU parallel, to run commands on all cores, and for its filename pattern substitution.
For example: ls *.flac | parallel ffmpeg -i {} {.}.mp3
encodes a directory of FLAC files to MP3. parallel -a <(ls *.flac) -a <(ls *.mp3) --xapply copytags {1} {2}
then copies each FLAC file's metadata to the corresponding MP3 file (which ffmpeg already does, just to illustrate the --xapply
option).
edit: copytags
is https://github.com/DarwinAwardWinner/copytags if that's useful for anyone.