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/
For anyconnect: openconnect works perfectly, either as standalone script or via networkmangler.
For Excel there is a PowerShell module called Import-Excel that I use all the time.
I see, nice, but I'm on Linux, so perhaps I need to run power shell there ^^
If you don't want to use PowerShell in Linux, there's also nushell, which is another (non-POSIX) shell that can process Excel files
I forgot where I was posting. (I use both win and Linux pretty heavily.) I have pwsh, let me see if import-excel works on linux and report back.
Appears to work as well as it does on windows. I guess the only downside is learning powershell if you have no previous experience with it.
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
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'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?
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
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'
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.
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'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
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'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.
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
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've kinda grown towards CLI the last year or so. I used to make wrappers around CLIs for myself even haha
Restic Backup!
The whole CLI. Linux should automatically generate default GUIs from manpages and code, to be developed further by the crowd of users on the desktop. It's pointless to handcraft both interfaces one app at a time.
I like Linux Mint (compared to Ubuntu, Debian, and Windows) because usually right-clicking takes me closer to the solution I'm looking for, but it doesn't allow me to dig deep enough. It should be discoverable all the way from the desktop to what makes it tick. Think of Smalltalk by Alan Kay in Xerox PARC in the 1970s, or what it would be now had it been mainstream all this time. #discoverability #explorability
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.
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.
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.
swap and zram configuration. lots of games need more than distro defaults
INOTIFY a GUI for monitor file changes. https://en.wikipedia.org/wiki/Inotify
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.
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