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.
I love programs like freecad despite the really hard/unintuitive gui. 95% of all the modelling i need to do (as an amateur) can be done easily in a python script.
The finishing touches like adding filets and chamfers are the annoying part were gui is easier, due to the way edges are referenced.
Likewise at work, we have to produce a lot of regular reports in excel. All done via python / sql.
Ffmpeg.
Came here for this one
Try WinFF
There's no CLI that k wish I had a GUI for, but there's many GUIs for which I wish there was a CLI version.
I'm missing a good GUI to manage SELinux. It is probably because I don't know how to handle it but I hate this thing with passion.
Anything that needs to be configured with YAML, and Kubernetes in particular.
I mean I get the whole Infrastructure as Code hype (although I have never witnessed or heard of a situation where an entire cluster needed to be revived from scratch), but it should be very possible to make a gui that writes the YAML for you.
I don't want to memorize every possible setting and what it does and if someone makes a typo in the config (or in the white space, as it's YAML) everything is borked.
Call me old-fashioned but the graphical ui of something like octopus deploy was a thousand times more user friendly imho.
That UI is called VSCode
At the top of your .yaml
file, you can set a JSON Schema. Example:
# yaml-language-server: $schema=https://json.schemastore.org/prometheus.json
scrape_configs:
- job_name: caddy
static_configs:
- targets:
- caddy:2019
This way, you don't have to memorize every possible setting and what it does and risk making a typo in the config. VSCode will just tell you.
I think it’s easy to make a generic YAML editor that all you need to do is to pass a “definitions” file that says all the possible options to show as a drop down or toggle etc.
That would be useful for many projects.
I think infrastructure as code is best utilized when paired with software testing and rapid deployment. It allows for a kind of granularity manual configuration doesn't give you
A few IDEs already provide some help with YAML. Rider will tell you if you've screwed up the YAML for a GitHub Actions workflow, and possibly docker-compose as well
Dwarf Fortress no longer counts, huh?
systemctl
- gnome/gtk: https://github.com/GuillaumeGomez/systemd-manager
- kde/qt: https://invent.kde.org/system/systemdgenie
- browser based: https://cockpit-project.org/
- curses: https://github.com/ana-cc/chkservice
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.
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
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.
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.
Git - the Github Desktop application is a great example of how easy git could be for users like me who only rarely use git. Every time I need to do somethign other then a simple pull or push I need to look it up and by the time I need it again I have forgotten the command and need to look it up again. Just give me something like Github Desktop on linux
A single, decent, maintained one for LVM.
Redhat had a couple of goes at this and they suck ass big time and rely on KDE (so no good for any other DE / WM). I'm not sure anything really works, so I'll say: none exist.
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!
Restic Backup!
There is a gui for aria2. It is called Persepolis
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