For me it’s: Testdisk (and Photorec) Caddy Netstat Dig Aria2
For me it’s the other way around I wish there would be better CLI support for GUI apps.
It’s been years since I had to admin Windows servers, but I was quite impressed with the number of MS products where the install and configuration tools would output the Powershell commands to carry out the changes you’d asked for. It made it quite a lot easier to automate. I’d love to see that paradigm catch on more widely, with the GUI and CLI having the same functionality and the GUI giving you the commands to run.
Any examples?
- Gimp to batch edit pictures in a script (I know about ImageMagick but still)
- Excel to change stuff in excel files quickly (I know about python modules but it’s so complicated to use)
- Proprietary VPN software like Cisco AnyConnect, I want to automate the login when I boot, but they don’t let me
Just from the top of my head.
- Gimp to batch edit pictures in a script (I know about ImageMagick but still)
It seems to exist: https://www.gimp.org/tutorials/Basic_Batch/
There are many things you can do in the GIMP gui that can’t be done programmatically :(
For anyconnect: openconnect works perfectly, either as standalone script or via networkmangler.
Check out openconnect to connect to anyconnect VPNs
I did, doesn’t work with our company setup with 2FA.
What kind of prompt does your company 2FA provide? Using openconnect with networkmangler, I get a pop up to input my pin+totp. I haven’t done the script way in the last few years, but the connection script is plain shell and I was able to handle the 2FA from there too
It’s some time ago I dug deeper on what was happening, but openconnect was getting a different response from the server than it expected and it just failed because of that.
pavucontrol. I switch between usb headset and my external speakers all the time. Continually going to this gui is kind of annoying.
I use a little oneliner with tofi (rofi/wofi would also work) to select the current output and avoid pavucontrol. It’s mapped to a sway binding but would probably work in any wm/de:
pactl set-default-sink $(pactl list short sinks |awk '{print $2}' |tofi $tofi_args)
I’m using pipewire so the functionality of pactl is actually provided through pipewire-pulse I think
Does set-default-sink change an already current stream? Or do you need move-sink-input.
I’ve looked at the manpages but was a bit overwhelmed and didn’t try to make my own script. Your solution gives me motivation to do so. I also use sway and pipewire. Though I use fuzzel for my launcher.
Yeah, it changes without skipping a beat for me in pipewire, even in things like zoom/teams.
This, but for a Fireshot like tool. Screenshot and pdf of webpages in their entirety by scrolling while shotting. In bulk, with CLI.
Do you have a legitimate use-case for this?
Rclone. Not because it’s a complicated tool, but because I would like a history of my file transfers and a few graphs to show we what speeds, files sizes and whether the transfer succeeded. At the moment in order to confirm my home backups have succeeded, I have to run a separate size comparisons between my different datastores.
Probably not what you want, but rclone now has a simple web ui built in: https://rclone.org/gui/
I looked at it a few months back and it didn’t have the history side of things, just the setup and realtime stats which I’d already got through the CLI. Thanks tho!
I feel like you can parse a --dry-run
Thanks. I think I looked at doing that when setting it up, and it was more expensive in terms of API calls. With a cloud vendor you have to be careful of that, so I opted for the SIZE command.
yt-dlp. Too many options to remember and look up every time, but all useful and missing from GUIs when you just want to dowload audio or ‘good enough’ quality video in batches without re-encoding.
While nmtui is perfectly fine for the CLI-uninitiated, I sometimes wonder why the nm-connection-editor window doesn’t provide the same level of functionality.
Too many options to remember and look up every time
This is a good use case for shell aliases. If you can identify a few of your use cases, you can give each bundle of options its own command.
I do exactly this for downloading music, I aliased my preferred options to ‘yt-audio’
Would you mind sharing your command?
This is what I use (with zsh):
yt-audio() { yt-dlp --no-playlist -f 'ba' -x --audio-format mp3 $1 } yt-audio-playlist() { yt-dlp -f 'ba' -x --audio-format mp3 $1 }
It takes the best quality available and downloads it to mp3.
There’s a firefox extension that generates the cli command for whatever video you’re on. Let’s you check boxes for the format, sponsorblock, etc and then copies it to your clipboard.
Just search the addon store for yt-dlp and it should show up
You can have most of the settings pre-loaded in its config file. I mostly let it do my preset -f, or when that fails do a -F to see what encodings are available.
Btw, here’s my config file.
-o "%(title)s (%(uploader_id)s).%(ext)s" -P ~/Videos -P "temp:/tmp/yt-dlp/" -f 271+ba[language=en][ext=m4a]/308+ba[language=en][ext=m4a]/137+ba[language=en][ext=m4a]/299+ba[language=en][ext=m4a]/231+ba[language=en][ext=m4a]/http_mp3_128/271+140/308+140/137+140/299+140/231+140 --download-archive ~/.config/yt-dlp/dl-archive --no-playlist --write-sub --no-mtime --compat-options no-live-chat
(Windows only warning, unless someone wants to add Linux support)
I didn’t really search around for GUIs way back, but ended up making a basic GUI because I wanted to learn programming.
With just having options as checkboxes for YouTube-dl. It has served me well all these years. It was literally the thing I made while learning programming so the code is pretty janky when I look back at it though…
I believe ytDownloader might be what you’re looking for. It’s a yt-dlp frontend, you can export to video/audio pretty easily. And it’s in active development. I’ve used it to export short clips to WAV a few times, nothing too fancy, but so far it works pretty well.
I’d love supported GUI apps for pacman and systemd. I know there are GUI’s out there for them, but they are not supported by the main project, so they don’t count.
Yeah I think a good GUI for systemd will be super useful even for people comfortable with command line.
Sometimes you need an overview of what is running on the system.
There’s a TUI called sysz for systemd stuff, but I haven’t found a true GUI
TIL! thanks!
Why don’t they count? The systemd interface has been stable for a decade.
They don’t count for me, because I can’t get support from the main project if it has a bug.
You can’t get support from lemmy.linuxuserspace.show or any other website if there’s a bug in your web browser. You can’t get support from gmail or protonmail or any other mail provider if there’s a bug in your email client. It’s awful how much people have come to assume that clients and servers must and always come from the same provider.
Systemd’s problems won’t be solved with a GUI. Now that lennart’s gone to Microsoft we can hope they upgrade in rhel10 or 11 to upstart or sysv.
I’d like a GUI app for generating CLI’s for other GUI apps that don’t have them already. An application is never complete unless everything can be done via a CLI and/or API.
This is an interesting idea. There are some tools out there to auto-generate shell autocompletes based on standardized
--help
output. Maybe there’s some possibility to GUIfy that sort of thing?
I’ve kinda grown towards CLI the last year or so. I used to make wrappers around CLIs for myself even haha
Restic Backup!
Dwarf Fortress no longer counts, huh?
I see you are one of our elders.
Mount a network share permanently on Kubuntu. Non IT people need to do backups too. And Plasma apps can’t access network shares unless they are mounted.
I think https://apps.kde.org/smb4k/ can do this?
Have you considered a network file sharing system other than SMB?
As long as it’s easy to setup, anything would be good. After many years of asking, nobody has been able to suggest anything.
I’m surprised at the shortage of good Borg repository visualization tools. There are tools but they’re either incomplete or they try to do too much.
Pandoc, for sure. I love its versatility, it’s made it super easy for me to do most of my writing in markdown — and a lot of MD editors have it built-in as an export feature.
But I use it too rarely to know the CLI commands by heart, and sometimes it would just be super helpful to open a GUI and batch convert (and/or collate) a bunch of files to a new format.
Tell you what, throw Imagemagick and maybe a light OCR backend into the package as a Swiss Army Knife for document management, I’d probably be happy.
INOTIFY a GUI for monitor file changes. https://en.wikipedia.org/wiki/Inotify
Hmm, I might try to make that. Any particular feature you are looking for, or is just displaying all the events in a table good 'nuff?
There is a gui for aria2. It is called Persepolis
w3m
, as weird as that sounds, for image drawing.links
graphical mode is nice, but I’m not a fan of its keybindings, and w3mimagedisplay is hacky at best, to say the least.swap and zram configuration. lots of games need more than distro defaults