this post was submitted on 15 Apr 2024
29 points (82.2% liked)

Linux

48008 readers
1431 users here now

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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

I occasionally need to know the names of programs. I asked here about "Run as Administrator" being added to the context menu (like in Windows), and the response was basically "can't be easily done". an example is if I wish to edit a config file it cannot be done without accessing the terminal. Knowing the name "gedit" is the real name of "text editor" is useful information in this use-case.

I am not afraid of the terminal, but I would never prefer it over a GUI. is there a way to find a program name/install location from right-clicking-details (or something)? So then I could open a terminal and "sudo programname"?

(As an aside, I prefer Linux overall, but every distro I've tried has a strong sense that if you're using the GUI you don't need or deserve admin controls. Program names in the menus are almost always different from their names in the terminal, and many what I would consider normal system settings, like the ability to act as an administrator, find where a program is installed are terminal only.)

This is Ubuntu with all the default stuff


EDIT: I always expect a degree of hostility and talking-down from the desktop Linux community, but the number of people in this thread telling me I am using my own computer that I bought with my own money in a way they don't prefer while ignoring my question is just absurd and frankly should be deeply embarrassing for all of us. I have strongly defended the desktop Linux community for decades, but this experience has left a sour taste in my mouth.

Thank you to the few of you who tried to assist without judgement or assumptions.

EDIT: As usual, it can be easily done.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 22 points 6 months ago (2 children)

Out of interest, what is your use case? I've not seen a gui app that requires root that doesn't prompt for it when you start it up.

[–] [email protected] 5 points 6 months ago* (last edited 6 months ago) (4 children)

It's just useful to know the name of the app sometimes. With ubuntu default options, "Text Editor" (in the GUI menu), is "gedit" for example. "File Browser" is "Nautilus". These things are actually not easy to learn if you aren't deep into the Linux world.

On Windows, I would never need to know that the "File browser window" is called "explorer".

[–] [email protected] 7 points 6 months ago (1 children)

With ubuntu default options, “Text Editor” (in the GUI menu), is “gedit” for example. “File Browser” is “Nautilus”. These things are actually not easy to learn if you aren’t deep into the Linux world.

Agreed. That is unfortunately the way GNOME Desktop Environment has been going since years. For example Epiphany web browser is now known as "Web". Not only that, GNOME started to remove window buttons like Maximize. With GNOME tweaks tool these window buttons can be enabled again, but I personally don't find the GNOME changes a huge improvement.

[–] [email protected] 6 points 6 months ago

I actually don't mind the straightforward names! When I was a Linux newbie it was very helpful to get going. but it would be nice to have advanced info more readily available instead of assuming I "don't need it" as so frequently happens. I'm in the awkward space where I am by any measure an advanced power user, but not like systems admin level where I am more comfortable in the command line.

[–] [email protected] 5 points 6 months ago (7 children)

That doesn't answer the question, you can have multiple file browsers or text editors installed. The question everyone is asking and you haven't answered here nor on the other thread is "why do you need to run a program with sudo"? Which program do you need to run with sudo and why?

load more comments (7 replies)
[–] [email protected] 3 points 6 months ago* (last edited 6 months ago)

Thats also GNOME. Apps having random names, sometimes different package names and different displayed (and translated!) Names. It sucks> extremely.

If you right click apps, instead of showing you the entry (like in Plasma) you can only open it in gnome software.

Some stupid names to make stuff easier:

  • nautilus: files
  • totem: video player
  • epiphany: web
  • loupe: new, extremely minimal but secure image viewer; eog being the old one
  • evolution: email and calendar
  • evince: pdf viewer
  • cheese: webcam (but there is a new app that replaces it)
  • seahorse: password managee
[–] [email protected] 2 points 6 months ago* (last edited 6 months ago)

On Windows, I would never need to know that the "File browser window" is called "explorer"

I do though. That knowledge is pretty handy for launching apps via the Run dialog, which I find faster than using the Start Menu with its horrible search. And this has become even more important to me with recent versions of Windows getting rid of the classic Control Panel UI, as you can still access the old applets without needing to put up with the horrid Metro UI. For instance, I find the network settings applet far more convenient and easy to use, so I just launch it via ncpa.cpl. Or if I want to get to the old System applet to change the hosname/page file size etc, I can get to it by running sysdm.cpl. Or getting to Add/Remove programs via appwiz.cpl, and so on.

Also, knowing the actual commands opens up many scripting and automation possibilities, or say you just want to create a custom shortcut to a program/applet somewhere. There are several useful applets you can launch via rundll32 for instance.

[–] [email protected] 1 points 6 months ago

Running a text editor as root is useful if you are editing a system file.

[–] [email protected] 11 points 6 months ago (1 children)

Use bash-completion, it is much faster than clicking menus.

every distro I’ve tried has a strong sense that if you’re using the GUI you don’t need or deserve admin controls

GUI tools are not suited to be run as root in general. Few ones that are have special measures taken to prevent gaining privileges by another process, e. g. run a background non-GUI process as root and GUI communicating with it as an ordinary user. Such tools (package managers, system tweakers etc.) are usually configured to get required privileges via polkit (e. g. pkexec synaptic to run GUI package manager in Debian). Don't use sudo to run GUI programs!

[–] [email protected] 3 points 6 months ago* (last edited 6 months ago)

Thank you for the advice I will take it under consideration.You seem educated in this area, do you know of an easy way to identify the real name of a program without the terminal?

[–] [email protected] 8 points 6 months ago* (last edited 6 months ago) (1 children)

Find the .desktop file for the desired program (should be in /usr/share/applications) Right click, properties, then somewhere in that window, it should show the exact command that the .desktop file invokes when launched. In that command should be the actual program name (ie, /usr/bin/firefox-esr, firefox-esr is your program name).

Alternatively, right click, "Open With", choose a text editor, then you'll see a couple lines of information. One of those lines of info should be that command as well.

Edit, to be fair, I'm also not a fan of Gnome's obfuscation of program names. It may make sense for very new users, but I also found it counterproductive in certain use cases

[–] [email protected] 5 points 6 months ago* (last edited 6 months ago) (1 children)

snaps have an extra dir for their .desktop files, becAUse ThEY ArE SpeciaL

[–] [email protected] 2 points 6 months ago

Thats normal, Flatpaks have that too. And the location is horrible.

[–] [email protected] 8 points 6 months ago (1 children)

but every distro I’ve tried has a strong sense that if you’re using the GUI you don’t need or deserve admin controls

It's not that you don't need or deserve it. The thing is terminal tools are already available. To get the same stuff with GUI someone is going to have to make that stuff. Most people with the skill to make things like that probably don't care enough about GUI to be inspired to make such tools. Since using the terminal is easy and natural to them. When it comes to FOSS, since people work on it in their free time with no payment, they are likely to only put significant effort in things that they would use themselves.

[–] [email protected] 1 points 6 months ago (3 children)

The thing is terminal tools are already available.

Right, after many years of Linux, I get the feeling that developers assume that if you don't like text-based input, you are not responsible enough to configure your own computer. It strikes me as a hacky workaround to the problem of different knowledge levels among users. This is not a criticism of any particular developer, and I have a deep respect for them all. It's just an observation. UAC is not much better, and Apple's "solution" is even worse.

[–] [email protected] 9 points 6 months ago (1 children)

While it wouldn't surprise me if some devs do assume that, I think you're mistaking apathy for malice in the general case. If there isn't a way to do something through a GUI that can be done through a terminal, it only implies that no one has decided that creating a GUI to do that was worth the effort.

It's not (necessarily) that devs want to block users from changing things, it's more of a case that no one has cared enough to put the time and effort in to enabling that GUI access. They either use the terminal or don't configure it ideally themselves because that configuration hasn't been important enough to take their attention.

Though I added that necessarily in brackets there because the Linux community is historically known for RTFM-style gatekeeping even for users who are trying to learn how to use the terminal, so I don't doubt that there are some terminal purists who would attempt to block attempts to add GUI configuration to depots they have influence over.

But just keep in mind it takes time and effort to make things. And, personally, as a dev (not a Linux dev but a software dev that uses Linux), I hate making GUIs. In my experience, unless you're willing to spend a long time positioning, sizing, and centering, they look like crap. Maybe there's a better framework for it these days, but I'd rather be writing algorithms and solving interesting problems than doing graphical design.

[–] [email protected] 3 points 6 months ago

That's a really good point. I also know that making GUIs sucks and there's a reason UX devs make the big bucks.

[–] [email protected] 5 points 6 months ago (2 children)

GUIs are good for the sole reason of presenting you the available options. A CLI is empty.

load more comments (2 replies)
[–] [email protected] 5 points 6 months ago (1 children)

Right, after many years of Linux, I get the feeling that developers assume that if you don't like text-based input, you are not responsible enough to configure your own computer.

Many of us prefer the cli for administration. It's not "punishing" you - it's how things are more often done with Linux.

[–] [email protected] 1 points 6 months ago

Oh I know, no disrespect to my terminal-peeps. to clarify, I was speaking purely about the "noob friendly" distros.

[–] [email protected] 8 points 6 months ago (1 children)

Running GUI programs as root is going to introduce you into a world of pain. But you have been warned now, so if you proceed, let the pain become a learning experience, young padawan.

[–] [email protected] 7 points 6 months ago

So much for...

The Linux desktop is amazing, it does all the annoying things Windows does while not delivering anything Windows does right.

[–] [email protected] 7 points 6 months ago (3 children)

KDE Plasma.

Really, GNOME is not a good Desktop for poweruser tasks like that. Either oversimplified GUI or terminal.

[–] [email protected] 2 points 6 months ago (1 children)

I like GNOME for it's extensions, but haven't tried KDE since before Plasma. Is it highly customizable on par with GNOME?

[–] [email protected] 3 points 6 months ago

Is it highly customizable on par with GNOME?

Lol, thats its principle.

load more comments (2 replies)
[–] [email protected] 6 points 6 months ago* (last edited 6 months ago) (1 children)

You can create a new desktop file, where you add pkexec in the Exec line.

Desktop files are in /usr/share/applications. Find your app there. Copy it's desktop file file to the user's application directory, it's ~/.local/share/applications expanded: /home/username/.local/share/applications/. Rename this new desktop file, and in the line starting with Exec add pkexec at the beginning of the command string. pkexec is the graphical equivalent of sudo(kindof). Also change the Name in the file, so you can find it in your menu. (The difference you mention comes from here. On the gui this Name parameter is visible, while on the terminal you call the command from Exec).

When you save the new desktop file, it should show up in your Application menu. If you start this new app, pkexec should bring up a graphical password prompt.

If you use gnome you can edit desktop files with alacarte, it may work with other DEs: https://gitlab.gnome.org/GNOME/alacarte

More info, these things are unrelated to your distro, it should work the same way everywhere:

[–] [email protected] 4 points 6 months ago (1 children)

snaps have an extra directory for .desktop files, because ... you know ... snaps 🙄

[–] [email protected] 4 points 6 months ago

So do flatpaks.

[–] [email protected] 3 points 6 months ago

I understand your pain. Most things you need to configure are either in your home direct under .config or they prompt for admin if they need it. However, not everything has a convenient gui interface to make config changes. This is mostly ok because configuration is usually done once and then never touched again.This is how Linux works, it just isn't a like for like replacement for windows, though it can achieve the same goals.

I like a better gui for adjusting audio devices, specifically the sample and bit rates. I haven't found anything that can do it in a straightforward gui.

[–] [email protected] 3 points 6 months ago

every distro I've tried has a strong sense that if you're using the GUI you don't need or deserve admin controls

It's more that GUI programs can't be trusted with root privileges. They're not designed for that, and can break things in unpredictable ways.

[–] [email protected] 2 points 6 months ago* (last edited 6 months ago)

https://github.com/brunonova/nautilus-admin

This is unmaintained, so it may not work with the latest ubuntu, but it is an extension to the default ubuntu file manager that does some of what you want

As for your title question, unfortunately ubuntu/gnome don't seem to make this easy. On some DEs you can just right click and go find the shortcut properties sorta like on windows. Others have noted some good reasons why GUI apps shouldn't run as root, but you're right that sometimes it's necessary, or simply the easiest/most expedient way to do things.

You can accomplish what you ask using a little shell script though, which you could bind to a keyboard shortcut or something. I may elaborate further but basically:

readlink /proc/"$( xprop _NET_WM_PID | sed 's/_NET_WM_PID(CARDINAL) = //')"/exe

and then clicking on the window you want to ID will attempt to identify the binary it's running. then you could either display it in a popup using zenity, or write it directly to the clipboard using xclip (or wl-copy I think for wayland distros)

I really like setting up little shortcut scripts like this with zenity for user input, and usually the notification tray or clipboard for output

[–] [email protected] 2 points 6 months ago* (last edited 6 months ago) (1 children)

If you are interested in editing text files as root directly from nautilus, the package nautilus-admin may be helpful. Link

As I am using KDE, I know that Kate, the KDE text editor, prompts for the sudo password when saving an edited text files that is owned by root. I don't know if Gedit does the same.

[–] [email protected] 2 points 5 months ago

Oh my gosh I can't believe after 56 comments from so called "experts" you bring up such a simple solution. Thank you!

[–] [email protected] 2 points 6 months ago (1 children)

Right click on program in menu and choose "edit" or something? Don't know if your particular DE supports that, though.

[–] [email protected] 1 points 6 months ago (2 children)

Nope, not an option sadly. Using GNOME.

[–] [email protected] 2 points 6 months ago

No context menu in the grid? Damn.

load more comments (1 replies)
[–] [email protected] 1 points 6 months ago

@flork Granted it's listed in a mimeapps.list file, you should easily be able to pull the program name out of there by querying against the file in question's mimetype.

And while "can't be easily done" may be generally true, don't call it quits; some file managers may offer less "not easy" than others. Don't end your customization exploration because the file manager you currently use can't do what you want, try fiddlin round with some others. The process for each file manager is going to be different, and getting the name of the program for any filetype is also going to differ depending on the syntax required for altering each different file manager.

load more comments
view more: next ›