Score:1

GNOME Builder fails to install

lb flag

GNOME Builder fails to install my Autotools project because it does not prepend sudo to the make install command. How can I force Builder to add sudo?

ADBeveridge avatar
lb flag
BTW, I tried to run Builder as root, with `sudo gnome-builder` but it requires a DBUS session.
Nate T avatar
it flag
What, why? You got the flatpak, didn't you. THAT IS THE ISSUE. Even if you are able to line this out, it will be issue after issue, all related to permissions. That is flatpak's thing. They install the app in a sandbox and deny it the ability to change the environment in any way.. by design. For some apps this is acceptable, but for manyit is not. It wont even let apps access pulseaudio to streams music.
Nate T avatar
it flag
Snap is also sandboxed (albeit much less greedy with resource access.) The reason you run `--classic` any time you `snap install` an IDE or development tool. Flatpak doesn't have a similar option. In other words, uninstall your IDE from Flatpak and install via the apt PPA. --- Btw, I am updating answer. Almost done. Just need to find a link.
ADBeveridge avatar
lb flag
I got GNOME Builder using `apt-get`.
ADBeveridge avatar
lb flag
Also, everything else works fine (although it kept crashing when I right-clicked until I deleted all the config, cache and local data files), that is, make, autoreconf, and configure. Its just when I want to install it.
Nate T avatar
it flag
Awesome. I don't know why they even have an Ide for Flatpak. I think it is just for posterity, as I believe GNOME makes all of there apps available on Flatpak.
Score:2
zw flag

You have to open terminal in your project folder and then run

sudo make install

in it, avoiding GNOME Builder usage.

ADBeveridge avatar
lb flag
Yeah, it works fine when I open a terminal inside of Builder also, and that is what I use. All the same I would like to use Builder built-in command.
Score:2
it flag

Try running it from the command line with

sudo gnome-builder

This should give the same effect as if the app were calling sudo on everything. Best of all, it is temporary, as elevated privileges generally should be.

EDIT:

Sunday, I decided to keep this answer short, as it is simple answer. Judging by the down-vote, however, someone didn't think so, so I will add more context and related info in the name of making it a robust. I am not sure how you came to the conclusion that sudo is the issue (it would be a good idea to update your question with this info, as it is useful context for anyone answering), but if starting the app with sudo returns anything other than 0, then your conclusion was wrong. If it won't start as root, then either:

1.) It doesn't need root permissions. Make does not need sudo unless you are running make install and the binaries (/bin), libraries (/lib), etc. (pun intended) are going going into the system directories (as opposed to the sym-linked user directory.) The GNU standard is to install most stuff there anyway, as the alternative will likely cause confusion / errors with version mismatches and similar issues on a multi-user system.

...or else:

2.) You installed it with Flatpak. If this is, by chance, the case, you will need an entirely different answer. When it comes to app security, Flatpak doesn't mess around. When it comes to giving Flatpak the permissions they need, you might as well be trying to give root access to your Android app.

Well, it isn't quite that bad, but it isn't good either. On flatpak, it is possible. That is where the differences end. They use sandboxing, like Snap. Snap, however, gives us the --classic option, which must be added when it is first downloaded, and bypasses the sandboxing feature altogether. Flatpak does not have anything similar to this.

If you installed the flatpak, read this.

While doing research on the --classic info above, I ran across an EXCELLENT post on the subject of sandboxed Package Managers. Both the question and the answers (especially the first one) were impressive. The latter had this to say about the sandboxing implimentations from the main three package managers that use this architecture:

Sandboxing / Confinement

Feature AppImage Snap Flatpak
Can run without sandboxing ✅ Yes (Not required. Optional to the packager.) ✅ Yes (if snap was built and approved to use 'classic' confinement) [1] [2] :x: No (Limiting application access's by design)
Can be used with different sandboxes ✅ Yes (e.g. Firejail [1], AppArmor [2], Bubblewrap) :x: No (is tightly coupled to AppArmor) :x: No (is tightly coupled to Bubblewrap)

NOTE:

Neither the table nor anything contained therein is my work. I found it in an answer given by @KurtPfeifle, to a question by @LuisAlvarado. Both were filled with great content. Thanks to both of you for excellent contributions.

Nate T avatar
it flag
To whomever down-voted this, please leave a short comment explaining your reasoning. This is the right answer. It is the only way to get the app to run 'admin-only' logic (without resorting to programming), because **programs / files do not have permissions.** Only users do. Running the `chmod`, `chown`, etc. does not give a resource permissions. It sets the permissions needed by the _user_ to access said resource. To whomever downvoted this, please explain yourself. If I have somehow made a mistake, I would like to know so I can correct it. Thanks
Nate T avatar
it flag
Still styling & proofreading, but the content should be finished for the most part.
ADBeveridge avatar
lb flag
I install it using `sudo apt-get install gnome-builder`. Well, I got it as part of `gnome-devel`.
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.