I am pretty new to linux so please excuse any foolish mistakes.
I am trying to manually install gpu-screen-recorder(GSR) to get rid of an annoying password prompt that I can’t seem to disable in the flatpak version. I know there must be some way to do it because this prompt didn’t show up on Pop!_OS, but maybe it’s just not possible on Nobara KDE/Fedora. I noticed in the install.sh of GSR, that setcap cap_sys_admin+ep
is called on the executable. So if you know any way of replicating something like that for flatpaks that is simpler than installing GSR manually, feel free to let me know.
I tried checking the dependencies listed, but was unable to figure out how to really make sure they are installed and accessible for GSR.
For example: I tried checking for libglvnd
by running dnf list libglvnd
. Sure enough, it returns
Installed Packages
libglvnd.i686 1:1.6.0-2.fc38 @anaconda
libglvnd.x86_64 1:1.6.0-2.fc38 @anaconda
But then I tried checking for mesa
, so I ran dnf list mesa
. But it returned
Available Packages
mesa.src 23.2.1-1.fc38 nobara-baseos
mesa.src 23.2.1-1.fc38 nobara-baseos-multilib
It says ‘available packages’, so not installed, right?
Well, glxinfo -B
says I am using mesa 23.2.1, so it seems to be installed, I guess?
So, just assuming I had everything necessary, I cloned the repo and tried to just run install.sh
. However, of course I get an error message: wayland-scanner: command not found
.
I am a bit confused because I am running on wayland, and checked using loginctl show-session 1 -p Type
.
How do I properly make sure the dependencies are available?
If you’re going to install from source at least change the compile config options so the prefix defaults to /opt/program-name.
You can further integrate with the system by adding the /opt/program/bin/ and sbin/ dirs to the PATH variable, and add lib/ to /etc/ld.so.conf but it should not be needed normally — only if other programs need to compile against this one.
You can also simplify integration by making common dirs for example /opt/.bin and /opt/.lib, adding only those to PATH and ld, and symlinking binaries and libraries from all /opt programs to them.
The problem is that installation prefix is not customizable in this case. If it were /usr/local, as usually used by default, it would be ok. But it is /usr, so there are chances to overwrite system files. I don’t know why authors desided to write build and install scripts manually instead of using some build system but this is disgusting.
those are nice tips, thank you!